Imported Upstream version 2.80.1 upstream/2.80.1
authorKarol Lewandowski <k.lewandowsk@samsung.com>
Tue, 3 Sep 2024 08:26:43 +0000 (10:26 +0200)
committerKarol Lewandowski <k.lewandowsk@samsung.com>
Tue, 3 Sep 2024 08:26:43 +0000 (10:26 +0200)
56 files changed:
.gitlab-ci.yml
.gitlab-ci/test-msys2.sh
NEWS
docs/reference/gio/meson.build
docs/reference/girepository/meson.build
docs/reference/glib/meson.build
docs/reference/gmodule/meson.build
docs/reference/gobject/meson.build
docs/reference/meson.build
gio/completion/gsettings
gio/gaction.c
gio/gdbusconnection.c
gio/gdbusprivate.h
gio/gdocumentportal.c
gio/gunixmounts.c
gio/tests/gdbus-connection.c
gio/tests/gdbus-export.c
gio/tests/gdbus-object-manager-example/meson.build
gio/tests/gdbus-proxy.c
gio/tests/gdbus-subscribe.c [new file with mode: 0644]
gio/tests/meson.build
gio/xdgmime/xdgmimeglob.c
girepository/cmph/main.c [deleted file]
girepository/cmph/wingetopt.c [deleted file]
girepository/cmph/wingetopt.h [deleted file]
girepository/girffi.c
girepository/girparser.c
glib/gbitlock.c
glib/gspawn.c
glib/gthread.c
glib/gvariant-serialiser.c
glib/gvariant.c
glib/tests/meson.build
gobject/gobject.c
gobject/gparamspecs.c
gobject/tests/meson.build
gobject/tests/performance/performance-run.sh [new file with mode: 0755]
gobject/tests/performance/performance.c
meson.build
po/LINGUAS
po/cs.po
po/da.po
po/de.po
po/fa.po
po/fr.po
po/gl.po
po/id.po
po/it.po
po/ka.po
po/kab.po [new file with mode: 0644]
po/ko.po
po/lv.po
po/pl.po
po/pt.po
po/pt_BR.po
tests/meson.build

index be19b6b..f8dc428 100644 (file)
@@ -200,13 +200,13 @@ fedora-x86_64:
     # Copy the built documentation to an artifact directory. The build for docs.gtk.org
     # can then pull it from there — see https://gitlab.gnome.org/GNOME/gtk/-/blob/docs-gtk-org/README.md
     - mkdir -p _reference/
-    - mv _build/docs/reference/glib/glib/ _reference/glib/
-    - mv _build/docs/reference/glib/glib-unix/ _reference/glib-unix/
-    - mv _build/docs/reference/gmodule/gmodule/ _reference/gmodule/
-    - mv _build/docs/reference/gobject/gobject/ _reference/gobject/
-    - mv _build/docs/reference/gio/gio/ _reference/gio/
-    - mv _build/docs/reference/gio/gio-unix/ _reference/gio-unix/
-    - mv _build/docs/reference/girepository/girepository/ _reference/girepository/
+    - mv _build/docs/reference/glib/glib-2.0/ _reference/glib/
+    - mv _build/docs/reference/glib/glib-unix-2.0/ _reference/glib-unix/
+    - mv _build/docs/reference/gmodule/gmodule-2.0/ _reference/gmodule/
+    - mv _build/docs/reference/gobject/gobject-2.0/ _reference/gobject/
+    - mv _build/docs/reference/gio/gio-2.0/ _reference/gio/
+    - mv _build/docs/reference/gio/gio-unix-2.0/ _reference/gio-unix/
+    - mv _build/docs/reference/girepository/girepository-2.0/ _reference/girepository/
   artifacts:
     reports:
       junit:
@@ -805,11 +805,11 @@ dist-job:
     - meson dist -C _build
     # Compile again to build the docs
     - meson compile -C _build
-    - tar -c -J -f "glib-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/glib glib
-    - tar -c -J -f "gmodule-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/gmodule gmodule
-    - tar -c -J -f "gobject-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/gobject gobject
-    - tar -c -J -f "gio-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/gio gio
-    - tar -c -J -f "girepository-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/girepository girepository
+    - tar -c -J -f "glib-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/glib glib-2.0
+    - tar -c -J -f "gmodule-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/gmodule gmodule-2.0
+    - tar -c -J -f "gobject-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/gobject gobject-2.0
+    - tar -c -J -f "gio-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/gio gio-2.0
+    - tar -c -J -f "girepository-docs-$CI_COMMIT_TAG.tar.xz" -C _build/docs/reference/girepository girepository-2.0
   artifacts:
     paths:
       - "${CI_PROJECT_DIR}/_build/glib-docs-$CI_COMMIT_TAG.tar.xz"
index 304f94c..e03cccf 100755 (executable)
@@ -76,5 +76,5 @@ fi
 # Copy the built documentation to an artifact directory. The build for docs.gtk.org
 # can then pull it from there — see https://gitlab.gnome.org/GNOME/gtk/-/blob/docs-gtk-org/README.md
 mkdir -p _reference/
-mv _build/docs/reference/glib/glib-win32/ _reference/glib-win32/
-mv _build/docs/reference/gio/gio-win32/ _reference/gio-win32/
\ No newline at end of file
+mv _build/docs/reference/glib/glib-win32-2.0/ _reference/glib-win32/
+mv _build/docs/reference/gio/gio-win32-2.0/ _reference/gio-win32/
\ No newline at end of file
diff --git a/NEWS b/NEWS
index ccc616e..0ab2454 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,66 @@
+Overview of changes in GLib 2.80.1, 2024-05-07
+==============================================
+
+* Fix CVE-2024-34397: GDBus signal subscriptions for well-known names are
+  vulnerable to unicast spoofing (#3268, work by Simon McVittie, reported by
+  Alicia Boya García)
+
+* Bugs fixed:
+  - GNOME/tracker-miners#315 3.7.0 - GLib-GIO-WARNING **: 09:27:12.186: Error
+    creating IO channel for /proc/self/mountinfo: Invalid argument (g-io-error-
+    quark, 13) (Ondrej Holy)
+  - #3268 CVE-2024-34397: GDBus signal subscriptions for well-known names are
+    vulnerable to unicast spoofing (Simon McVittie)
+  - #3287 Devhelp does not show indexes for GLib, GIO, or GObject (Philip
+    Withnall)
+  - #3289 readlink -f fails in CI on macOS (Simon McVittie)
+  - #3342 Crash in gdbus schedule_callbacks() due to missing NULL check before
+    g_str_equal() (Philip Withnall)
+  - !3954 [th/performance] add script for combining performance results
+  - !3959 [th/gobject-toggle-refs-check] Fix critical warning for toggle
+    notifications in g_object_ref()/g_object_unref()
+  - !3962 meson: Fix a needless recompilation of some gdbus tests
+  - !3966 girparser: Don't assume sizeof(size_t) == sizeof(void *)
+  - !3967 girparser: Allow time_t, off_t, etc. to appear in GIR XML
+  - !3969 Ported the first few documentation comments in `gio/gaction.c` to gi-
+    docgen
+  - !3970 girparser: Make sizes in integer_aliases more obviously correct
+  - !3972 girparser: Adjust signedness() macro
+  - !3973 glib/gvariant: fix compile error with GCC 14.0.1
+  - !3974 tests: Mark several additional tests as can_fail on GNU Hurd
+  - !3981 Backport !3979 "Use CPU_COUNT to get the number of set CPUs" to
+    glib-2-80
+  - !3992 Backport !3989 “completion: make gsettings work in nounset mode” to
+    glib-2-80
+  - !4004 Backport "Remove unused cmph files" for glib-2-80
+  - !4021 Backport !4019 “gunixmounts: Use fallback if libmount monitoring
+    fails” to glib-2-80
+  - !4025 Backport !4005 “Fix various bugs found by scan-build“ to glib-2-80
+  - !4029 Backport !4028 “gdbusconnection: Fix a crash on arg0 matching” to
+    glib-2-80
+  - !4032 Backport !4031 “gdocumentportal: Handle EROFS and similar errors more
+    gracefully” to glib-2-80
+  - !4039 Backport !4038 “gdbusconnection: Don't deliver signals if the sender
+    doesn't match” to glib-2-80
+
+* Translation updates:
+  - Czech (Daniel Rusek)
+  - Danish (Ask Hjorth Larsen)
+  - French (Vincent Chatelain)
+  - Galician (Fran Dieguez)
+  - Georgian (Ekaterine Papava)
+  - German (Christian Kirbach)
+  - Indonesian (Andika Triwidada)
+  - Italian (Milo Casagrande)
+  - Kabyle (Athmane MOKRAOUI, Rachida SACI)
+  - Korean (Changwoo Ryu)
+  - Latvian (Rūdolfs Mazurs)
+  - Persian (Danial Behzadi)
+  - Polish (Piotr Drąg)
+  - Portuguese (Hugo Carvalho)
+  - Portuguese (Brazil) (Leônidas Araújo, Juliano de Souza Camargo)
+
+
 Overview of changes in GLib 2.80.0, 2024-03-07
 ==============================================
 
index 3bb321e..35ea67b 100644 (file)
@@ -48,7 +48,7 @@ if get_option('documentation') and enable_gir
 
   custom_target('gio-docs',
     input: [ gio_toml, gio_gir[0] ],
-    output: 'gio',
+    output: 'gio-2.0',
     command: [
       gidocgen,
       'generate',
@@ -70,7 +70,7 @@ if get_option('documentation') and enable_gir
 
     custom_target('gio-win32-docs',
       input: [ gio_win32_toml, gio_win32_gir[0] ],
-      output: 'gio-win32',
+      output: 'gio-win32-2.0',
       command: [
         gidocgen,
         'generate',
@@ -91,7 +91,7 @@ if get_option('documentation') and enable_gir
 
     custom_target('gio-unix-docs',
       input: [ gio_unix_toml, gio_unix_gir[0] ],
-      output: 'gio-unix',
+      output: 'gio-unix-2.0',
       command: [
         gidocgen,
         'generate',
index 2d14ffd..815e3db 100644 (file)
@@ -34,7 +34,7 @@ if get_option('documentation') and enable_gir
 
   custom_target('girepository-docs',
     input: [ girepository_toml, girepository_gir[0] ],
-    output: 'girepository',
+    output: 'girepository-2.0',
     command: [
       gidocgen,
       'generate',
index 1777e53..e5e6726 100644 (file)
@@ -106,7 +106,7 @@ if get_option('documentation') and enable_gir
 
   custom_target('glib-docs',
     input: [ glib_toml, glib_gir[0] ],
-    output: 'glib',
+    output: 'glib-2.0',
     command: [
       gidocgen,
       'generate',
@@ -128,7 +128,7 @@ if get_option('documentation') and enable_gir
 
     custom_target('glib-win32-docs',
       input: [ glib_win32_toml, glib_win32_gir[0] ],
-      output: 'glib-win32',
+      output: 'glib-win32-2.0',
       command: [
         gidocgen,
         'generate',
@@ -149,7 +149,7 @@ if get_option('documentation') and enable_gir
 
     custom_target('glib-unix-docs',
       input: [ glib_unix_toml, glib_unix_gir[0] ],
-      output: 'glib-unix',
+      output: 'glib-unix-2.0',
       command: [
         gidocgen,
         'generate',
index 25a2e4e..8c9837d 100644 (file)
@@ -7,7 +7,7 @@ if get_option('documentation') and enable_gir
 
   custom_target('gmodule-docs',
     input: [ gmodule_toml, gmodule_gir[0] ],
-    output: 'gmodule',
+    output: 'gmodule-2.0',
     command: [
       gidocgen,
       'generate',
index 221c54a..fd683aa 100644 (file)
@@ -34,7 +34,7 @@ if get_option('documentation') and enable_gir
 
   custom_target('gobject-docs',
     input: [ gobject_toml, gobject_gir[0] ],
-    output: 'gobject',
+    output: 'gobject-2.0',
     command: [
       gidocgen,
       'generate',
index 25904d6..65eb83a 100644 (file)
@@ -17,7 +17,7 @@ if get_option('documentation') and enable_gir
   ]
 endif
 
-docs_dir = glib_datadir / 'doc' / 'glib-2.0'
+docs_dir = glib_datadir / 'doc'
 
 subdir('glib')
 subdir('gmodule')
index d509758..ef17576 100644 (file)
@@ -5,7 +5,7 @@
 ####################################################################################################
 
 __gsettings() {
-  local choices coffset schemadir
+  local choices coffset schemadir=""
 
   if [ ${COMP_CWORD} -gt 2 ]; then
       if [ ${COMP_WORDS[1]} = --schemadir ]; then
index 33e0ff7..bde7d38 100644 (file)
@@ -63,17 +63,17 @@ G_DEFINE_INTERFACE (GAction, g_action, G_TYPE_OBJECT)
 
 /**
  * GActionInterface:
- * @get_name: the virtual function pointer for g_action_get_name()
- * @get_parameter_type: the virtual function pointer for g_action_get_parameter_type()
- * @get_state_type: the virtual function pointer for g_action_get_state_type()
- * @get_state_hint: the virtual function pointer for g_action_get_state_hint()
- * @get_enabled: the virtual function pointer for g_action_get_enabled()
- * @get_state: the virtual function pointer for g_action_get_state()
- * @change_state: the virtual function pointer for g_action_change_state()
- * @activate: the virtual function pointer for g_action_activate().  Note that #GAction does not have an
+ * @get_name: the virtual function pointer for [method@Gio.Action.get_name]
+ * @get_parameter_type: the virtual function pointer for [method@Gio.Action.get_parameter_type]
+ * @get_state_type: the virtual function pointer for [method@Gio.Action.get_state_type]
+ * @get_state_hint: the virtual function pointer for [method@Gio.Action.get_state_hint]
+ * @get_enabled: the virtual function pointer for [method@Gio.Action.get_enabled]
+ * @get_state: the virtual function pointer for [method@Gio.Action.get_state]
+ * @change_state: the virtual function pointer for [method@Gio.Action.change_state]
+ * @activate: the virtual function pointer for [method@Gio.Action.activate].  Note that [type@Gio.Action] does not have an
  *            'activate' signal but that implementations of it may have one.
  *
- * The virtual function table for #GAction.
+ * The virtual function table for [type@Gio.Action].
  *
  * Since: 2.28
  */
@@ -85,7 +85,7 @@ g_action_default_init (GActionInterface *iface)
    * GAction:name:
    *
    * The name of the action.  This is mostly meaningful for identifying
-   * the action once it has been added to a #GActionGroup. It is immutable.
+   * the action once it has been added to a [type@Gio.ActionGroup]. It is immutable.
    *
    * Since: 2.28
    **/
@@ -99,7 +99,7 @@ g_action_default_init (GActionInterface *iface)
    * GAction:parameter-type:
    *
    * The type of the parameter that must be given when activating the
-   * action. This is immutable, and may be %NULL if no parameter is needed when
+   * action. This is immutable, and may be `NULL` if no parameter is needed when
    * activating the action.
    *
    * Since: 2.28
@@ -115,8 +115,8 @@ g_action_default_init (GActionInterface *iface)
    *
    * If @action is currently enabled.
    *
-   * If the action is disabled then calls to g_action_activate() and
-   * g_action_change_state() have no effect.
+   * If the action is disabled then calls to [method@Gio.Action.activate] and
+   * [method@Gio.Action.change_state] have no effect.
    *
    * Since: 2.28
    **/
@@ -129,7 +129,7 @@ g_action_default_init (GActionInterface *iface)
   /**
    * GAction:state-type:
    *
-   * The #GVariantType of the state that the action has, or %NULL if the
+   * The [type@GLib.VariantType] of the state that the action has, or `NULL` if the
    * action is stateless. This is immutable.
    *
    * Since: 2.28
index 42134a6..a543df9 100644 (file)
@@ -287,6 +287,153 @@ call_destroy_notify (GMainContext  *context,
 
 /* ---------------------------------------------------------------------------------------------------- */
 
+typedef struct
+{
+  /* All fields are immutable after construction. */
+  gatomicrefcount ref_count;
+  GDBusSignalCallback callback;
+  gpointer user_data;
+  GDestroyNotify user_data_free_func;
+  guint id;
+  GMainContext *context;
+} SignalSubscriber;
+
+static SignalSubscriber *
+signal_subscriber_ref (SignalSubscriber *subscriber)
+{
+  g_atomic_ref_count_inc (&subscriber->ref_count);
+  return subscriber;
+}
+
+static void
+signal_subscriber_unref (SignalSubscriber *subscriber)
+{
+  if (g_atomic_ref_count_dec (&subscriber->ref_count))
+    {
+      /* Destroy the user data. It doesn’t matter which thread
+       * signal_subscriber_unref() is called in (or whether it’s called with a
+       * lock held), as call_destroy_notify() always defers to the next
+       * #GMainContext iteration. */
+      call_destroy_notify (subscriber->context,
+                           subscriber->user_data_free_func,
+                           subscriber->user_data);
+
+      g_main_context_unref (subscriber->context);
+      g_free (subscriber);
+    }
+}
+
+typedef struct
+{
+  /*
+   * 1 reference while waiting for GetNameOwner() to finish
+   * 1 reference for each SignalData that points to this one as its
+   *   shared_name_watcher
+   */
+  grefcount ref_count;
+
+  gchar *owner;
+  guint32 get_name_owner_serial;
+} WatchedName;
+
+static WatchedName *
+watched_name_new (void)
+{
+  WatchedName *watched_name = g_new0 (WatchedName, 1);
+
+  g_ref_count_init (&watched_name->ref_count);
+  watched_name->owner = NULL;
+  return g_steal_pointer (&watched_name);
+}
+
+typedef struct SignalData SignalData;
+
+struct SignalData
+{
+  gchar *rule;
+  gchar *sender;
+  gchar *interface_name;
+  gchar *member;
+  gchar *object_path;
+  gchar *arg0;
+  GDBusSignalFlags flags;
+  GPtrArray *subscribers;  /* (owned) (element-type SignalSubscriber) */
+
+  /*
+   * If the sender is a well-known name, this is an unowned SignalData
+   * representing the NameOwnerChanged signal that tracks its owner.
+   * NULL if sender is NULL.
+   * NULL if sender is its own owner (a unique name or DBUS_SERVICE_DBUS).
+   *
+   * Invariants: if not NULL, then
+   * shared_name_watcher->sender == DBUS_SERVICE_DBUS
+   * shared_name_watcher->interface_name == DBUS_INTERFACE_DBUS
+   * shared_name_watcher->member == "NameOwnerChanged"
+   * shared_name_watcher->object_path == DBUS_PATH_DBUS
+   * shared_name_watcher->arg0 == sender
+   * shared_name_watcher->flags == NONE
+   * shared_name_watcher->watched_name == NULL
+   */
+  SignalData *shared_name_watcher;
+
+  /*
+   * Non-NULL if this SignalData is another SignalData's shared_name_watcher.
+   * One reference for each SignalData that has this one as its
+   * shared_name_watcher.
+   * Otherwise NULL.
+   */
+  WatchedName *watched_name;
+};
+
+static SignalData *
+signal_data_new_take (gchar *rule,
+                      gchar *sender,
+                      gchar *interface_name,
+                      gchar *member,
+                      gchar *object_path,
+                      gchar *arg0,
+                      GDBusSignalFlags flags)
+{
+  SignalData *signal_data = g_new0 (SignalData, 1);
+
+  signal_data->rule = rule;
+  signal_data->sender = sender;
+  signal_data->interface_name = interface_name;
+  signal_data->member = member;
+  signal_data->object_path = object_path;
+  signal_data->arg0 = arg0;
+  signal_data->flags = flags;
+  signal_data->subscribers = g_ptr_array_new_with_free_func ((GDestroyNotify) signal_subscriber_unref);
+  return g_steal_pointer (&signal_data);
+}
+
+static void
+signal_data_free (SignalData *signal_data)
+{
+  /* The SignalData should not be freed while it still has subscribers */
+  g_assert (signal_data->subscribers->len == 0);
+
+  /* The SignalData should not be freed while it is watching for
+   * NameOwnerChanged on behalf of another SignalData */
+  g_assert (signal_data->watched_name == NULL);
+
+  /* The SignalData should be detached from its name watcher, if any,
+   * before it is freed */
+  g_assert (signal_data->shared_name_watcher == NULL);
+
+  g_free (signal_data->rule);
+  g_free (signal_data->sender);
+  g_free (signal_data->interface_name);
+  g_free (signal_data->member);
+  g_free (signal_data->object_path);
+  g_free (signal_data->arg0);
+  g_ptr_array_unref (signal_data->subscribers);
+
+  g_free (signal_data);
+}
+
+/* ---------------------------------------------------------------------------------------------------- */
+
 #ifdef G_OS_WIN32
 #define CONNECTION_ENSURE_LOCK(obj) do { ; } while (FALSE)
 #else
@@ -405,6 +552,7 @@ struct _GDBusConnection
 
   /* Map used for managing method replies, protected by @lock */
   GHashTable *map_method_serial_to_task;  /* guint32 -> owned GTask* */
+  GHashTable *map_method_serial_to_name_watcher;  /* guint32 -> unowned SignalData* */
 
   /* Maps used for managing signal subscription, protected by @lock */
   GHashTable *map_rule_to_signal_data;                      /* match rule (gchar*)    -> SignalData */
@@ -653,6 +801,7 @@ g_dbus_connection_finalize (GObject *object)
     g_error_free (connection->initialization_error);
 
   g_hash_table_unref (connection->map_method_serial_to_task);
+  g_hash_table_unref (connection->map_method_serial_to_name_watcher);
 
   g_hash_table_unref (connection->map_rule_to_signal_data);
   g_hash_table_unref (connection->map_id_to_signal_data);
@@ -1039,6 +1188,7 @@ g_dbus_connection_init (GDBusConnection *connection)
   g_mutex_init (&connection->init_lock);
 
   connection->map_method_serial_to_task = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, g_object_unref);
+  connection->map_method_serial_to_name_watcher = g_hash_table_new_full (g_direct_hash, g_direct_equal, NULL, NULL);
 
   connection->map_rule_to_signal_data = g_hash_table_new (g_str_hash,
                                                           g_str_equal);
@@ -1897,6 +2047,7 @@ g_dbus_connection_send_message_with_reply_unlocked (GDBusConnection     *connect
 
   if (out_serial == NULL)
     out_serial = &serial;
+  *out_serial = 0;
 
   if (timeout_msec == -1)
     timeout_msec = 25 * 1000;
@@ -2166,6 +2317,191 @@ g_dbus_connection_send_message_with_reply_sync (GDBusConnection        *connecti
 
 /* ---------------------------------------------------------------------------------------------------- */
 
+/*
+ * Called in any thread.
+ * Must hold the connection lock when calling this, unless
+ * connection->finalizing is TRUE.
+ */
+static void
+name_watcher_unref_watched_name (GDBusConnection *connection,
+                                 SignalData *name_watcher)
+{
+  WatchedName *watched_name = name_watcher->watched_name;
+
+  g_assert (watched_name != NULL);
+
+  if (!g_ref_count_dec (&watched_name->ref_count))
+    return;
+
+  /* Removing watched_name from the name_watcher may result in
+   * name_watcher being freed, so we must make sure name_watcher is no
+   * longer in map_method_serial_to_name_watcher.
+   *
+   * If we stop watching the name while our GetNameOwner call was still
+   * in-flight, then when the reply eventually arrives, we will not find
+   * its serial number in the map and harmlessly ignore it as a result. */
+  if (watched_name->get_name_owner_serial != 0)
+    g_hash_table_remove (connection->map_method_serial_to_name_watcher,
+                         GUINT_TO_POINTER (watched_name->get_name_owner_serial));
+
+  name_watcher->watched_name = NULL;
+  g_free (watched_name->owner);
+  g_free (watched_name);
+}
+
+/* called in GDBusWorker thread with lock held */
+static void
+name_watcher_set_name_owner_unlocked (SignalData *name_watcher,
+                                      const char *new_owner)
+{
+  if (new_owner != NULL && new_owner[0] == '\0')
+    new_owner = NULL;
+
+  g_assert (name_watcher->watched_name != NULL);
+  g_set_str (&name_watcher->watched_name->owner, new_owner);
+}
+
+/* called in GDBusWorker thread with lock held */
+static void
+name_watcher_deliver_name_owner_changed_unlocked (SignalData *name_watcher,
+                                                  GDBusMessage *message)
+{
+  GVariant *body;
+
+  body = g_dbus_message_get_body (message);
+
+  if (G_LIKELY (body != NULL && g_variant_is_of_type (body, G_VARIANT_TYPE ("(sss)"))))
+    {
+      const char *name;
+      const char *new_owner;
+
+      g_variant_get (body, "(&s&s&s)", &name, NULL, &new_owner);
+
+      /* Our caller already checked this */
+      g_assert (g_strcmp0 (name_watcher->arg0, name) == 0);
+
+      if (G_LIKELY (new_owner[0] == '\0' || g_dbus_is_unique_name (new_owner)))
+        name_watcher_set_name_owner_unlocked (name_watcher, new_owner);
+      else
+        g_warning ("Received NameOwnerChanged signal with invalid owner \"%s\" for \"%s\"",
+                   new_owner, name);
+    }
+  else
+    {
+      g_warning ("Received NameOwnerChanged signal with unexpected "
+                 "signature %s",
+                 body == NULL ? "()" : g_variant_get_type_string (body));
+
+    }
+}
+
+/* called in GDBusWorker thread with lock held */
+static void
+name_watcher_deliver_get_name_owner_reply_unlocked (SignalData *name_watcher,
+                                                    GDBusConnection *connection,
+                                                    GDBusMessage *message)
+{
+  GDBusMessageType type;
+  GVariant *body;
+  WatchedName *watched_name;
+
+  watched_name = name_watcher->watched_name;
+  g_assert (watched_name != NULL);
+  g_assert (watched_name->get_name_owner_serial != 0);
+
+  type = g_dbus_message_get_message_type (message);
+  body = g_dbus_message_get_body (message);
+
+  if (type == G_DBUS_MESSAGE_TYPE_ERROR)
+    {
+      if (g_strcmp0 (g_dbus_message_get_error_name (message),
+                     "org.freedesktop.DBus.Error.NameHasNoOwner"))
+        name_watcher_set_name_owner_unlocked (name_watcher, NULL);
+      /* else it's something like NoReply or AccessDenied, which tells
+       * us nothing - leave the owner set to whatever we most recently
+       * learned from NameOwnerChanged, or NULL */
+    }
+  else if (type != G_DBUS_MESSAGE_TYPE_METHOD_RETURN)
+    {
+      g_warning ("Received GetNameOwner reply with unexpected type %d",
+                 type);
+    }
+  else if (G_LIKELY (body != NULL && g_variant_is_of_type (body, G_VARIANT_TYPE ("(s)"))))
+    {
+      const char *new_owner;
+
+      g_variant_get (body, "(&s)", &new_owner);
+
+      if (G_LIKELY (g_dbus_is_unique_name (new_owner)))
+        name_watcher_set_name_owner_unlocked (name_watcher, new_owner);
+      else
+        g_warning ("Received GetNameOwner reply with invalid owner \"%s\" for \"%s\"",
+                   new_owner, name_watcher->arg0);
+    }
+  else
+    {
+      g_warning ("Received GetNameOwner reply with unexpected signature %s",
+                 body == NULL ? "()" : g_variant_get_type_string (body));
+    }
+
+  g_hash_table_remove (connection->map_method_serial_to_name_watcher,
+                       GUINT_TO_POINTER (watched_name->get_name_owner_serial));
+  watched_name->get_name_owner_serial = 0;
+}
+
+/* Called in a user thread, lock is held */
+static void
+name_watcher_call_get_name_owner_unlocked (GDBusConnection *connection,
+                                           SignalData *name_watcher)
+{
+  GDBusMessage *message;
+  GError *local_error = NULL;
+  WatchedName *watched_name;
+
+  g_assert (g_strcmp0 (name_watcher->sender, DBUS_SERVICE_DBUS) == 0);
+  g_assert (g_strcmp0 (name_watcher->interface_name, DBUS_INTERFACE_DBUS) == 0);
+  g_assert (g_strcmp0 (name_watcher->member, "NameOwnerChanged") == 0);
+  g_assert (g_strcmp0 (name_watcher->object_path, DBUS_PATH_DBUS) == 0);
+  /* arg0 of the NameOwnerChanged message is the well-known name whose owner
+   * we are interested in */
+  g_assert (g_dbus_is_name (name_watcher->arg0));
+  g_assert (name_watcher->flags == G_DBUS_SIGNAL_FLAGS_NONE);
+
+  watched_name = name_watcher->watched_name;
+  g_assert (watched_name != NULL);
+  g_assert (watched_name->owner == NULL);
+  g_assert (watched_name->get_name_owner_serial == 0);
+  g_assert (name_watcher->shared_name_watcher == NULL);
+
+  message = g_dbus_message_new_method_call (DBUS_SERVICE_DBUS,
+                                            DBUS_PATH_DBUS,
+                                            DBUS_INTERFACE_DBUS,
+                                            "GetNameOwner");
+  g_dbus_message_set_body (message, g_variant_new ("(s)", name_watcher->arg0));
+
+  if (g_dbus_connection_send_message_unlocked (connection, message,
+                                               G_DBUS_SEND_MESSAGE_FLAGS_NONE,
+                                               &watched_name->get_name_owner_serial,
+                                               &local_error))
+    {
+      g_assert (watched_name->get_name_owner_serial != 0);
+      g_hash_table_insert (connection->map_method_serial_to_name_watcher,
+                           GUINT_TO_POINTER (watched_name->get_name_owner_serial),
+                           name_watcher);
+    }
+  else
+    {
+      g_critical ("Error while sending GetNameOwner() message: %s",
+                  local_error->message);
+      g_clear_error (&local_error);
+      g_assert (watched_name->get_name_owner_serial == 0);
+    }
+
+  g_object_unref (message);
+}
+
+/* ---------------------------------------------------------------------------------------------------- */
+
 typedef struct
 {
   guint                       id;
@@ -2289,6 +2625,7 @@ on_worker_message_received (GDBusWorker  *worker,
         {
           guint32 reply_serial;
           GTask *task;
+          SignalData *name_watcher;
 
           reply_serial = g_dbus_message_get_reply_serial (message);
           CONNECTION_LOCK (connection);
@@ -2304,6 +2641,19 @@ on_worker_message_received (GDBusWorker  *worker,
             {
               //g_debug ("message reply/error for serial %d but no SendMessageData found for %p", reply_serial, connection);
             }
+
+          name_watcher = g_hash_table_lookup (connection->map_method_serial_to_name_watcher,
+                                              GUINT_TO_POINTER (reply_serial));
+
+          if (name_watcher != NULL)
+            {
+              g_assert (name_watcher->watched_name != NULL);
+              g_assert (name_watcher->watched_name->get_name_owner_serial == reply_serial);
+              name_watcher_deliver_get_name_owner_reply_unlocked (name_watcher,
+                                                                  connection,
+                                                                  message);
+            }
+
           CONNECTION_UNLOCK (connection);
         }
       else if (message_type == G_DBUS_MESSAGE_TYPE_SIGNAL)
@@ -3247,69 +3597,6 @@ g_dbus_connection_remove_filter (GDBusConnection *connection,
 
 /* ---------------------------------------------------------------------------------------------------- */
 
-typedef struct
-{
-  gchar *rule;
-  gchar *sender;
-  gchar *sender_unique_name; /* if sender is unique or org.freedesktop.DBus, then that name... otherwise blank */
-  gchar *interface_name;
-  gchar *member;
-  gchar *object_path;
-  gchar *arg0;
-  GDBusSignalFlags flags;
-  GPtrArray *subscribers;  /* (owned) (element-type SignalSubscriber) */
-} SignalData;
-
-static void
-signal_data_free (SignalData *signal_data)
-{
-  g_free (signal_data->rule);
-  g_free (signal_data->sender);
-  g_free (signal_data->sender_unique_name);
-  g_free (signal_data->interface_name);
-  g_free (signal_data->member);
-  g_free (signal_data->object_path);
-  g_free (signal_data->arg0);
-  g_ptr_array_unref (signal_data->subscribers);
-  g_free (signal_data);
-}
-
-typedef struct
-{
-  /* All fields are immutable after construction. */
-  gatomicrefcount ref_count;
-  GDBusSignalCallback callback;
-  gpointer user_data;
-  GDestroyNotify user_data_free_func;
-  guint id;
-  GMainContext *context;
-} SignalSubscriber;
-
-static SignalSubscriber *
-signal_subscriber_ref (SignalSubscriber *subscriber)
-{
-  g_atomic_ref_count_inc (&subscriber->ref_count);
-  return subscriber;
-}
-
-static void
-signal_subscriber_unref (SignalSubscriber *subscriber)
-{
-  if (g_atomic_ref_count_dec (&subscriber->ref_count))
-    {
-      /* Destroy the user data. It doesn’t matter which thread
-       * signal_subscriber_unref() is called in (or whether it’s called with a
-       * lock held), as call_destroy_notify() always defers to the next
-       * #GMainContext iteration. */
-      call_destroy_notify (subscriber->context,
-                           subscriber->user_data_free_func,
-                           subscriber->user_data);
-
-      g_main_context_unref (subscriber->context);
-      g_free (subscriber);
-    }
-}
-
 static gchar *
 args_to_rule (const gchar      *sender,
               const gchar      *interface_name,
@@ -3421,7 +3708,7 @@ remove_match_rule (GDBusConnection *connection,
 static gboolean
 is_signal_data_for_name_lost_or_acquired (SignalData *signal_data)
 {
-  return g_strcmp0 (signal_data->sender_unique_name, "org.freedesktop.DBus") == 0 &&
+  return g_strcmp0 (signal_data->sender, "org.freedesktop.DBus") == 0 &&
          g_strcmp0 (signal_data->interface_name, "org.freedesktop.DBus") == 0 &&
          g_strcmp0 (signal_data->object_path, "/org/freedesktop/DBus") == 0 &&
          (g_strcmp0 (signal_data->member, "NameLost") == 0 ||
@@ -3430,6 +3717,43 @@ is_signal_data_for_name_lost_or_acquired (SignalData *signal_data)
 
 /* ---------------------------------------------------------------------------------------------------- */
 
+/* called in any thread, connection lock is held */
+static void
+add_signal_data (GDBusConnection *connection,
+                 SignalData      *signal_data,
+                 const char      *sender_unique_name)
+{
+  GPtrArray *signal_data_array;
+
+  g_hash_table_insert (connection->map_rule_to_signal_data,
+                       signal_data->rule,
+                       signal_data);
+
+  /* Add the match rule to the bus...
+   *
+   * Avoid adding match rules for NameLost and NameAcquired messages - the bus will
+   * always send such messages to us.
+   */
+  if (connection->flags & G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION)
+    {
+      if (!is_signal_data_for_name_lost_or_acquired (signal_data))
+        add_match_rule (connection, signal_data->rule);
+    }
+
+  signal_data_array = g_hash_table_lookup (connection->map_sender_unique_name_to_signal_data_array,
+                                           sender_unique_name);
+  if (signal_data_array == NULL)
+    {
+      signal_data_array = g_ptr_array_new ();
+      g_hash_table_insert (connection->map_sender_unique_name_to_signal_data_array,
+                           g_strdup (sender_unique_name),
+                           signal_data_array);
+    }
+  g_ptr_array_add (signal_data_array, signal_data);
+}
+
+/* ---------------------------------------------------------------------------------------------------- */
+
 /**
  * g_dbus_connection_signal_subscribe:
  * @connection: a #GDBusConnection
@@ -3518,8 +3842,9 @@ g_dbus_connection_signal_subscribe (GDBusConnection     *connection,
 {
   gchar *rule;
   SignalData *signal_data;
+  SignalData *name_watcher = NULL;
   SignalSubscriber *subscriber;
-  GPtrArray *signal_data_array;
+  gboolean sender_is_its_own_owner;
   const gchar *sender_unique_name;
 
   /* Right now we abort if AddMatch() fails since it can only fail with the bus being in
@@ -3555,6 +3880,11 @@ g_dbus_connection_signal_subscribe (GDBusConnection     *connection,
   rule = args_to_rule (sender, interface_name, member, object_path, arg0, flags);
 
   if (sender != NULL && (g_dbus_is_unique_name (sender) || g_strcmp0 (sender, "org.freedesktop.DBus") == 0))
+    sender_is_its_own_owner = TRUE;
+  else
+    sender_is_its_own_owner = FALSE;
+
+  if (sender_is_its_own_owner)
     sender_unique_name = sender;
   else
     sender_unique_name = "";
@@ -3576,43 +3906,62 @@ g_dbus_connection_signal_subscribe (GDBusConnection     *connection,
       goto out;
     }
 
-  signal_data = g_new0 (SignalData, 1);
-  signal_data->rule                  = rule;
-  signal_data->sender                = g_strdup (sender);
-  signal_data->sender_unique_name    = g_strdup (sender_unique_name);
-  signal_data->interface_name        = g_strdup (interface_name);
-  signal_data->member                = g_strdup (member);
-  signal_data->object_path           = g_strdup (object_path);
-  signal_data->arg0                  = g_strdup (arg0);
-  signal_data->flags                 = flags;
-  signal_data->subscribers           = g_ptr_array_new_with_free_func ((GDestroyNotify) signal_subscriber_unref);
+  signal_data = signal_data_new_take (g_steal_pointer (&rule),
+                                      g_strdup (sender),
+                                      g_strdup (interface_name),
+                                      g_strdup (member),
+                                      g_strdup (object_path),
+                                      g_strdup (arg0),
+                                      flags);
   g_ptr_array_add (signal_data->subscribers, subscriber);
 
-  g_hash_table_insert (connection->map_rule_to_signal_data,
-                       signal_data->rule,
-                       signal_data);
-
-  /* Add the match rule to the bus...
-   *
-   * Avoid adding match rules for NameLost and NameAcquired messages - the bus will
-   * always send such messages to us.
-   */
-  if (connection->flags & G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION)
+  /* If subscribing to a signal from a specific sender with a well-known
+   * name, we must first subscribe to NameOwnerChanged signals for that
+   * well-known name, so that we can match the current owner of the name
+   * against the sender of each signal. */
+  if (sender != NULL && !sender_is_its_own_owner)
     {
-      if (!is_signal_data_for_name_lost_or_acquired (signal_data))
-        add_match_rule (connection, signal_data->rule);
-    }
+      gchar *name_owner_rule = NULL;
 
-  signal_data_array = g_hash_table_lookup (connection->map_sender_unique_name_to_signal_data_array,
-                                           signal_data->sender_unique_name);
-  if (signal_data_array == NULL)
-    {
-      signal_data_array = g_ptr_array_new ();
-      g_hash_table_insert (connection->map_sender_unique_name_to_signal_data_array,
-                           g_strdup (signal_data->sender_unique_name),
-                           signal_data_array);
+      /* We already checked that sender != NULL implies MESSAGE_BUS_CONNECTION */
+      g_assert (connection->flags & G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION);
+
+      name_owner_rule = args_to_rule (DBUS_SERVICE_DBUS,
+                                      DBUS_INTERFACE_DBUS,
+                                      "NameOwnerChanged",
+                                      DBUS_PATH_DBUS,
+                                      sender,
+                                      G_DBUS_SIGNAL_FLAGS_NONE);
+      name_watcher = g_hash_table_lookup (connection->map_rule_to_signal_data, name_owner_rule);
+
+      if (name_watcher == NULL)
+        {
+          name_watcher = signal_data_new_take (g_steal_pointer (&name_owner_rule),
+                                               g_strdup (DBUS_SERVICE_DBUS),
+                                               g_strdup (DBUS_INTERFACE_DBUS),
+                                               g_strdup ("NameOwnerChanged"),
+                                               g_strdup (DBUS_PATH_DBUS),
+                                               g_strdup (sender),
+                                               G_DBUS_SIGNAL_FLAGS_NONE);
+          add_signal_data (connection, name_watcher, DBUS_SERVICE_DBUS);
+        }
+
+      if (name_watcher->watched_name == NULL)
+        {
+          name_watcher->watched_name = watched_name_new ();
+          name_watcher_call_get_name_owner_unlocked (connection, name_watcher);
+        }
+      else
+        {
+          g_ref_count_inc (&name_watcher->watched_name->ref_count);
+        }
+
+      signal_data->shared_name_watcher = name_watcher;
+
+      g_clear_pointer (&name_owner_rule, g_free);
     }
-  g_ptr_array_add (signal_data_array, signal_data);
+
+  add_signal_data (connection, signal_data, sender_unique_name);
 
  out:
   g_hash_table_insert (connection->map_id_to_signal_data,
@@ -3626,6 +3975,75 @@ g_dbus_connection_signal_subscribe (GDBusConnection     *connection,
 
 /* ---------------------------------------------------------------------------------------------------- */
 
+/*
+ * Called in any thread.
+ * Must hold the connection lock when calling this, unless
+ * connection->finalizing is TRUE.
+ * May free signal_data, so do not dereference it after this.
+ */
+static void
+remove_signal_data_if_unused (GDBusConnection *connection,
+                              SignalData *signal_data)
+{
+  const gchar *sender_unique_name;
+  GPtrArray *signal_data_array;
+
+  /* Cannot remove while there are still subscribers */
+  if (signal_data->subscribers->len != 0)
+    return;
+
+  /* Cannot remove while another SignalData is still using this one
+   * as its shared_name_watcher, which holds watched_name->ref_count > 0 */
+  if (signal_data->watched_name != NULL)
+    return;
+
+  /* Point of no return: we have committed to removing it */
+
+  if (signal_data->sender != NULL && signal_data->shared_name_watcher == NULL)
+    sender_unique_name = signal_data->sender;
+  else
+    sender_unique_name = "";
+
+  g_warn_if_fail (g_hash_table_remove (connection->map_rule_to_signal_data, signal_data->rule));
+
+  signal_data_array = g_hash_table_lookup (connection->map_sender_unique_name_to_signal_data_array,
+                                           sender_unique_name);
+  g_warn_if_fail (signal_data_array != NULL);
+  g_warn_if_fail (g_ptr_array_remove (signal_data_array, signal_data));
+
+  if (signal_data_array->len == 0)
+    {
+      g_warn_if_fail (g_hash_table_remove (connection->map_sender_unique_name_to_signal_data_array,
+                                           sender_unique_name));
+    }
+
+  /* remove the match rule from the bus unless NameLost or NameAcquired (see subscribe()) */
+  if ((connection->flags & G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION) &&
+      !is_signal_data_for_name_lost_or_acquired (signal_data) &&
+      !g_dbus_connection_is_closed (connection) &&
+      !connection->finalizing)
+    {
+      /* The check for g_dbus_connection_is_closed() means that
+       * sending the RemoveMatch message can't fail with
+       * G_IO_ERROR_CLOSED, because we're holding the lock,
+       * so on_worker_closed() can't happen between the check we just
+       * did, and releasing the lock later.
+       */
+      remove_match_rule (connection, signal_data->rule);
+    }
+
+  if (signal_data->shared_name_watcher != NULL)
+    {
+      SignalData *name_watcher = g_steal_pointer (&signal_data->shared_name_watcher);
+
+      name_watcher_unref_watched_name (connection, name_watcher);
+      /* May free signal_data */
+      remove_signal_data_if_unused (connection, name_watcher);
+    }
+
+  signal_data_free (signal_data);
+}
+
 /* called in any thread */
 /* must hold lock when calling this (except if connection->finalizing is TRUE)
  * returns the number of removed subscribers */
@@ -3634,7 +4052,6 @@ unsubscribe_id_internal (GDBusConnection *connection,
                          guint            subscription_id)
 {
   SignalData *signal_data;
-  GPtrArray *signal_data_array;
   guint n;
   guint n_removed = 0;
 
@@ -3661,40 +4078,8 @@ unsubscribe_id_internal (GDBusConnection *connection,
                                            GUINT_TO_POINTER (subscription_id)));
       n_removed++;
       g_ptr_array_remove_index_fast (signal_data->subscribers, n);
-
-      if (signal_data->subscribers->len == 0)
-        {
-          g_warn_if_fail (g_hash_table_remove (connection->map_rule_to_signal_data, signal_data->rule));
-
-          signal_data_array = g_hash_table_lookup (connection->map_sender_unique_name_to_signal_data_array,
-                                                   signal_data->sender_unique_name);
-          g_warn_if_fail (signal_data_array != NULL);
-          g_warn_if_fail (g_ptr_array_remove (signal_data_array, signal_data));
-
-          if (signal_data_array->len == 0)
-            {
-              g_warn_if_fail (g_hash_table_remove (connection->map_sender_unique_name_to_signal_data_array,
-                                                   signal_data->sender_unique_name));
-            }
-
-          /* remove the match rule from the bus unless NameLost or NameAcquired (see subscribe()) */
-          if ((connection->flags & G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION) &&
-              !is_signal_data_for_name_lost_or_acquired (signal_data) &&
-              !g_dbus_connection_is_closed (connection) &&
-              !connection->finalizing)
-            {
-              /* The check for g_dbus_connection_is_closed() means that
-               * sending the RemoveMatch message can't fail with
-               * G_IO_ERROR_CLOSED, because we're holding the lock,
-               * so on_worker_closed() can't happen between the check we just
-               * did, and releasing the lock later.
-               */
-              remove_match_rule (connection, signal_data->rule);
-            }
-
-          signal_data_free (signal_data);
-        }
-
+      /* May free signal_data */
+      remove_signal_data_if_unused (connection, signal_data);
       goto out;
     }
 
@@ -3915,6 +4300,46 @@ schedule_callbacks (GDBusConnection *connection,
       if (signal_data->object_path != NULL && g_strcmp0 (signal_data->object_path, path) != 0)
         continue;
 
+      if (signal_data->shared_name_watcher != NULL)
+        {
+          /* We want signals from a specified well-known name, which means
+           * the signal's sender needs to be the unique name that currently
+           * owns that well-known name, and we will have found this
+           * SignalData in
+           * connection->map_sender_unique_name_to_signal_data_array[""]. */
+          const WatchedName *watched_name;
+          const char *current_owner;
+
+          g_assert (signal_data->sender != NULL);
+          /* Invariant: We never need to watch for the owner of a unique
+           * name, or for the owner of DBUS_SERVICE_DBUS, either of which
+           * is always its own owner */
+          g_assert (!g_dbus_is_unique_name (signal_data->sender));
+          g_assert (g_strcmp0 (signal_data->sender, DBUS_SERVICE_DBUS) != 0);
+
+          watched_name = signal_data->shared_name_watcher->watched_name;
+          g_assert (watched_name != NULL);
+          current_owner = watched_name->owner;
+
+          /* Skip the signal if the actual sender is not known to own
+           * the required name */
+          if (current_owner == NULL || g_strcmp0 (current_owner, sender) != 0)
+            continue;
+        }
+      else if (signal_data->sender != NULL)
+        {
+          /* We want signals from a unique name or o.fd.DBus... */
+          g_assert (g_dbus_is_unique_name (signal_data->sender)
+                    || g_str_equal (signal_data->sender, DBUS_SERVICE_DBUS));
+
+          /* ... which means we must have found this SignalData in
+           * connection->map_sender_unique_name_to_signal_data_array[signal_data->sender],
+           * therefore we would only have found it if the signal's
+           * actual sender matches the required signal_data->sender */
+          g_assert (g_strcmp0 (signal_data->sender, sender) == 0);
+        }
+      /* else the sender is unspecified and we will accept anything */
+
       if (signal_data->arg0 != NULL)
         {
           if (signal_data->flags & G_DBUS_SIGNAL_FLAGS_MATCH_ARG0_NAMESPACE)
@@ -3928,10 +4353,21 @@ schedule_callbacks (GDBusConnection *connection,
                   (arg0_path == NULL || !path_rule_matches (signal_data->arg0, arg0_path)))
                 continue;
             }
-          else if (!g_str_equal (signal_data->arg0, arg0))
+          else if (arg0 == NULL || !g_str_equal (signal_data->arg0, arg0))
             continue;
         }
 
+      if (signal_data->watched_name != NULL)
+        {
+          /* Invariant: SignalData should only have a watched_name if it
+           * represents the NameOwnerChanged signal */
+          g_assert (g_strcmp0 (sender, DBUS_SERVICE_DBUS) == 0);
+          g_assert (g_strcmp0 (interface, DBUS_INTERFACE_DBUS) == 0);
+          g_assert (g_strcmp0 (path, DBUS_PATH_DBUS) == 0);
+          g_assert (g_strcmp0 (member, "NameOwnerChanged") == 0);
+          name_watcher_deliver_name_owner_changed_unlocked (signal_data, message);
+        }
+
       for (m = 0; m < signal_data->subscribers->len; m++)
         {
           SignalSubscriber *subscriber = signal_data->subscribers->pdata[m];
@@ -4003,7 +4439,7 @@ distribute_signals (GDBusConnection *connection,
         schedule_callbacks (connection, signal_data_array, message, sender);
     }
 
-  /* collect subscribers not matching on sender */
+  /* collect subscribers not matching on sender, or matching a well-known name */
   signal_data_array = g_hash_table_lookup (connection->map_sender_unique_name_to_signal_data_array, "");
   if (signal_data_array != NULL)
     schedule_callbacks (connection, signal_data_array, message, sender);
@@ -5363,6 +5799,9 @@ g_dbus_connection_register_object (GDBusConnection             *connection,
  out:
   CONNECTION_UNLOCK (connection);
 
+  if (ret == 0 && user_data_free_func != NULL)
+    user_data_free_func (user_data);
+
   return ret;
 }
 
@@ -7019,6 +7458,9 @@ g_dbus_connection_register_subtree (GDBusConnection           *connection,
  out:
   CONNECTION_UNLOCK (connection);
 
+  if (ret == 0 && user_data_free_func != NULL)
+    user_data_free_func (user_data);
+
   return ret;
 }
 
index e7a5bfa..57147e1 100644 (file)
 
 G_BEGIN_DECLS
 
+/* Bus name, interface and object path of the message bus itself */
+#define DBUS_SERVICE_DBUS "org.freedesktop.DBus"
+#define DBUS_INTERFACE_DBUS DBUS_SERVICE_DBUS
+#define DBUS_PATH_DBUS "/org/freedesktop/DBus"
+
 /* ---------------------------------------------------------------------------------------------------- */
 
 typedef struct GDBusWorker GDBusWorker;
index 382e2aa..0b55c3e 100644 (file)
@@ -90,6 +90,33 @@ enum {
   XDP_ADD_FLAGS_FLAGS_ALL                  = ((1 << 3) - 1)
 };
 
+/*
+ * Assume that opening a file read/write failed with @saved_errno,
+ * and return TRUE if opening the same file read-only might succeed.
+ */
+static gboolean
+opening_ro_might_succeed (int saved_errno)
+{
+  switch (saved_errno)
+    {
+    case EACCES:
+    case EISDIR:
+#ifdef EPERM
+    case EPERM:
+#endif
+#ifdef EROFS
+    case EROFS:
+#endif
+#ifdef ETXTBSY
+    case ETXTBSY:
+#endif
+      return TRUE;
+
+    default:
+      return FALSE;
+    }
+}
+
 GList *
 g_document_portal_add_documents (GList       *uris,
                                  const char  *app_id,
@@ -131,7 +158,7 @@ g_document_portal_add_documents (GList       *uris,
           int fd;
 
           fd = g_open (path, O_CLOEXEC | O_RDWR);
-          if (fd == -1 && (errno == EACCES || errno == EISDIR))
+          if (fd == -1 && opening_ro_might_succeed (errno))
             {
               /* If we don't have write access, fall back to read-only,
                * and stop requesting the write permission */
index a7a9363..6df9844 100644 (file)
@@ -155,7 +155,7 @@ G_LOCK_DEFINE_STATIC (proc_mounts_source);
 
 /* Protected by proc_mounts_source lock */
 static guint64 mount_poller_time = 0;
-static GSource *proc_mounts_watch_source;
+static GSource *proc_mounts_watch_source = NULL;
 
 #ifdef HAVE_SYS_MNTTAB_H
 #define MNTOPT_RO      "ro"
@@ -1921,11 +1921,10 @@ proc_mounts_changed (GIOChannel   *channel,
         }
       G_UNLOCK (proc_mounts_source);
     }
+#endif
 
-#else
   if (cond & G_IO_ERR)
     has_changed = TRUE;
-#endif
 
   if (has_changed)
     {
@@ -2066,15 +2065,21 @@ mount_monitor_start (void)
             }
           else
             {
-              g_set_error_literal (&error, G_IO_ERROR, g_io_error_from_errno (-ret),
-                                   g_strerror (-ret));
+              g_debug ("mnt_monitor_get_fd failed: %s", g_strerror (-ret));
+              g_clear_pointer (&proc_mounts_monitor, mnt_unref_monitor);
+
+              /* The mnt_monitor_get_fd function failed e.g. inotify limits are
+               * exceeded. Let's try to silently fallback to the old behavior.
+               * See: https://gitlab.gnome.org/GNOME/tracker-miners/-/issues/315
+               */
             }
 
           G_UNLOCK (proc_mounts_source);
-#else
-          proc_mounts_channel = g_io_channel_new_file (mtab_path, "r", &error);
 #endif
           if (proc_mounts_channel == NULL)
+            proc_mounts_channel = g_io_channel_new_file (mtab_path, "r", &error);
+
+          if (proc_mounts_channel == NULL)
             {
               g_warning ("Error creating IO channel for %s: %s (%s, %d)", mtab_path,
                          error->message, g_quark_to_string (error->domain), error->code);
@@ -2085,10 +2090,12 @@ mount_monitor_start (void)
               G_LOCK (proc_mounts_source);
 
 #ifdef HAVE_LIBMOUNT
-              proc_mounts_watch_source = g_io_create_watch (proc_mounts_channel, G_IO_IN);
-#else
-              proc_mounts_watch_source = g_io_create_watch (proc_mounts_channel, G_IO_ERR);
+              if (proc_mounts_monitor != NULL)
+                proc_mounts_watch_source = g_io_create_watch (proc_mounts_channel, G_IO_IN);
 #endif
+              if (proc_mounts_watch_source == NULL)
+                proc_mounts_watch_source = g_io_create_watch (proc_mounts_channel, G_IO_ERR);
+
               mount_poller_time = (guint64) g_get_monotonic_time ();
               g_source_set_callback (proc_mounts_watch_source,
                                      (GSourceFunc) proc_mounts_changed,
index 1be1a2f..95d2b84 100644 (file)
@@ -549,9 +549,13 @@ test_connection_signals (void)
   guint s1b;
   guint s2;
   guint s3;
+  guint s4;
+  guint s5;
   gint count_s1;
   gint count_s1b;
   gint count_s2;
+  gint count_s4;
+  gint count_s5;
   gint count_name_owner_changed;
   GError *error;
   gboolean ret;
@@ -618,6 +622,26 @@ test_connection_signals (void)
                                            test_connection_signal_handler,
                                            &count_name_owner_changed,
                                            NULL);
+  s4 = g_dbus_connection_signal_subscribe (c1,
+                                           ":1.2",  /* sender */
+                                           "org.gtk.GDBus.ExampleInterface",  /* interface */
+                                           "FooArg0",  /* member */
+                                           "/org/gtk/GDBus/ExampleInterface",  /* path */
+                                           "some-arg0",
+                                           G_DBUS_SIGNAL_FLAGS_NONE,
+                                           test_connection_signal_handler,
+                                           &count_s4,
+                                           NULL);
+  s5 = g_dbus_connection_signal_subscribe (c1,
+                                           ":1.2",  /* sender */
+                                           "org.gtk.GDBus.ExampleInterface",  /* interface */
+                                           "FooArg0",  /* member */
+                                           "/org/gtk/GDBus/ExampleInterface",  /* path */
+                                           NULL,
+                                           G_DBUS_SIGNAL_FLAGS_NONE,
+                                           test_connection_signal_handler,
+                                           &count_s5,
+                                           NULL);
   /* Note that s1b is *just like* s1 - this is to catch a bug where N
    * subscriptions of the same rule causes N calls to each of the N
    * subscriptions instead of just 1 call to each of the N subscriptions.
@@ -636,10 +660,14 @@ test_connection_signals (void)
   g_assert_cmpuint (s1b, !=, 0);
   g_assert_cmpuint (s2, !=, 0);
   g_assert_cmpuint (s3, !=, 0);
+  g_assert_cmpuint (s4, !=, 0);
+  g_assert_cmpuint (s5, !=, 0);
 
   count_s1 = 0;
   count_s1b = 0;
   count_s2 = 0;
+  count_s4 = 0;
+  count_s5 = 0;
   count_name_owner_changed = 0;
 
   /*
@@ -712,6 +740,38 @@ test_connection_signals (void)
   g_assert_cmpint (count_s1, ==, 1);
   g_assert_cmpint (count_s2, ==, 2);
 
+  /* Emit another signal on c2 with and without arg0 set, to check matching on that.
+   * Matching should fail on s4 when the signal is not emitted with an arg0. It
+   * should succeed on s5 both times, as that doesn’t require an arg0 match. */
+  ret = g_dbus_connection_emit_signal (c2,
+                                       NULL, /* destination bus name */
+                                       "/org/gtk/GDBus/ExampleInterface",
+                                       "org.gtk.GDBus.ExampleInterface",
+                                       "FooArg0",
+                                       NULL,
+                                       &error);
+  g_assert_no_error (error);
+  g_assert_true (ret);
+
+  while (count_s5 < 1)
+    g_main_loop_run (loop);
+  g_assert_cmpint (count_s5, ==, 1);
+
+  ret = g_dbus_connection_emit_signal (c2,
+                                       NULL, /* destination bus name */
+                                       "/org/gtk/GDBus/ExampleInterface",
+                                       "org.gtk.GDBus.ExampleInterface",
+                                       "FooArg0",
+                                       g_variant_new_parsed ("('some-arg0',)"),
+                                       &error);
+  g_assert_no_error (error);
+  g_assert_true (ret);
+
+  while (count_s4 < 1)
+    g_main_loop_run (loop);
+  g_assert_cmpint (count_s4, ==, 1);
+  g_assert_cmpint (count_s5, ==, 2);
+
   /*
    * Also to check the total amount of NameOwnerChanged signals - use a 5 second ceiling
    * to avoid spinning forever
@@ -724,11 +784,15 @@ test_connection_signals (void)
   g_assert_cmpint (count_s1, ==, 1);
   g_assert_cmpint (count_s2, ==, 2);
   g_assert_cmpint (count_name_owner_changed, ==, 2);
+  g_assert_cmpint (count_s4, ==, 1);
+  g_assert_cmpint (count_s5, ==, 2);
 
   g_dbus_connection_signal_unsubscribe (c1, s1);
   g_dbus_connection_signal_unsubscribe (c1, s2);
   g_dbus_connection_signal_unsubscribe (c1, s3);
   g_dbus_connection_signal_unsubscribe (c1, s1b);
+  g_dbus_connection_signal_unsubscribe (c1, s4);
+  g_dbus_connection_signal_unsubscribe (c1, s5);
 
   g_object_unref (c1);
   g_object_unref (c2);
index 2080ebe..f7efe8c 100644 (file)
@@ -1003,12 +1003,14 @@ test_object_registration (void)
   guint non_subtree_object_path_bar_reg_id;
   guint dyna_subtree_registration_id;
   guint num_successful_registrations;
+  guint num_failed_registrations;
 
   data.num_unregistered_calls = 0;
   data.num_unregistered_subtree_calls = 0;
   data.num_subtree_nodes = 0;
 
   num_successful_registrations = 0;
+  num_failed_registrations = 0;
 
   error = NULL;
   c = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error);
@@ -1100,7 +1102,8 @@ test_object_registration (void)
   intern2_bar_reg_id = registration_id;
   num_successful_registrations++;
 
-  /* register at the same path/interface - this should fail */
+  /* register at the same path/interface - this should fail and result in an
+   * immediate unregistration (so the user_data isn’t leaked) */
   registration_id = g_dbus_connection_register_object (c,
                                                        "/foo/boss/interns/intern2",
                                                        (GDBusInterfaceInfo *) &bar_interface_info,
@@ -1113,6 +1116,8 @@ test_object_registration (void)
   g_error_free (error);
   error = NULL;
   g_assert (registration_id == 0);
+  g_assert_cmpint (data.num_unregistered_calls, ==, 1);
+  num_failed_registrations++;
 
   /* register at different interface - shouldn't fail */
   registration_id = g_dbus_connection_register_object (c,
@@ -1130,7 +1135,7 @@ test_object_registration (void)
   /* unregister it via the id */
   g_assert (g_dbus_connection_unregister_object (c, registration_id));
   g_main_context_iteration (NULL, FALSE);
-  g_assert_cmpint (data.num_unregistered_calls, ==, 1);
+  g_assert_cmpint (data.num_unregistered_calls, ==, 2);
   intern2_foo_reg_id = 0;
 
   /* register it back */
@@ -1181,12 +1186,12 @@ test_object_registration (void)
   g_error_free (error);
   error = NULL;
   g_assert (registration_id == 0);
+  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 1);
 
   /* unregister it, then register it again */
-  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 0);
   g_assert (g_dbus_connection_unregister_subtree (c, subtree_registration_id));
   g_main_context_iteration (NULL, FALSE);
-  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 1);
+  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 2);
   subtree_registration_id = g_dbus_connection_register_subtree (c,
                                                                 "/foo/boss/executives",
                                                                 &subtree_vtable,
@@ -1382,10 +1387,10 @@ test_object_registration (void)
 #endif
 
   /* check that unregistering the subtree handler works */
-  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 1);
+  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 2);
   g_assert (g_dbus_connection_unregister_subtree (c, subtree_registration_id));
   g_main_context_iteration (NULL, FALSE);
-  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 2);
+  g_assert_cmpint (data.num_unregistered_subtree_calls, ==, 3);
   nodes = get_nodes_at (c, "/foo/boss/executives");
   g_assert (nodes != NULL);
   g_assert_cmpint (g_strv_length (nodes), ==, 1);
@@ -1405,7 +1410,7 @@ test_object_registration (void)
   g_assert (g_dbus_connection_unregister_object (c, non_subtree_object_path_foo_reg_id));
 
   g_main_context_iteration (NULL, FALSE);
-  g_assert_cmpint (data.num_unregistered_calls, ==, num_successful_registrations);
+  g_assert_cmpint (data.num_unregistered_calls, ==, num_successful_registrations + num_failed_registrations);
 
   /* check that we no longer export any objects - TODO: it looks like there's a bug in
    * libdbus-1 here: libdbus still reports the '/foo' object; so disable the test for now
index 83b4fc0..0a5e2f8 100644 (file)
@@ -1,4 +1,4 @@
-gdbus_example_objectmanager_visibility_h = configure_file(
+gdbus_example_objectmanager_visibility_h = custom_target('gdbus-example-objectmanager-visibility',
   output: 'gdbus-example-objectmanager-visibility.h',
   command: [gen_visibility_macros, '2.0', 'visibility-macros',
             'GDBUS_OBJECT_MANAGER_EXAMPLE', '@OUTPUT@'],
index ac5f720..ab36eae 100644 (file)
@@ -780,6 +780,12 @@ kill_test_service (GDBusConnection *connection)
   while (!name_disappeared)
     g_main_context_iteration (NULL, TRUE);
 
+  /* GDBusConnection doesn't guarantee that different subscriptions to the
+   * same signal will get their callbacks scheduled in any particular order,
+   * so make sure they have all happened */
+  while (g_main_context_iteration (NULL, FALSE))
+    continue;
+
   g_bus_unwatch_name (watch_id);
 #else
   g_warning ("Can't kill com.example.TestService");
diff --git a/gio/tests/gdbus-subscribe.c b/gio/tests/gdbus-subscribe.c
new file mode 100644 (file)
index 0000000..4cba4f5
--- /dev/null
@@ -0,0 +1,1342 @@
+/*
+ * Copyright 2024 Collabora Ltd.
+ * SPDX-License-Identifier: LGPL-2.1-or-later
+ */
+
+#include <gio/gio.h>
+
+#include "gdbus-tests.h"
+
+/* From the D-Bus Specification */
+#define DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER 1
+
+#define DBUS_SERVICE_DBUS "org.freedesktop.DBus"
+#define DBUS_PATH_DBUS "/org/freedesktop/DBus"
+#define DBUS_INTERFACE_DBUS DBUS_SERVICE_DBUS
+#define NAME_OWNER_CHANGED "NameOwnerChanged"
+
+/* A signal that each connection emits to indicate that it has finished
+ * emitting other signals */
+#define FINISHED_PATH "/org/gtk/Test/Finished"
+#define FINISHED_INTERFACE "org.gtk.Test.Finished"
+#define FINISHED_SIGNAL "Finished"
+
+/* A signal emitted during testing */
+#define EXAMPLE_PATH "/org/gtk/GDBus/ExampleInterface"
+#define EXAMPLE_INTERFACE "org.gtk.GDBus.ExampleInterface"
+#define FOO_SIGNAL "Foo"
+
+#define ALREADY_OWNED_NAME "org.gtk.Test.AlreadyOwned"
+#define OWNED_LATER_NAME "org.gtk.Test.OwnedLater"
+
+/* Log @s in a debug message. */
+static inline const char *
+nonnull (const char *s,
+         const char *if_null)
+{
+  return (s == NULL) ? if_null : s;
+}
+
+typedef enum
+{
+  TEST_CONN_NONE,
+  TEST_CONN_FIRST,
+  /* A connection that subscribes to signals */
+  TEST_CONN_SUBSCRIBER = TEST_CONN_FIRST,
+  /* A mockup of a legitimate service */
+  TEST_CONN_SERVICE,
+  /* A mockup of a second legitimate service */
+  TEST_CONN_SERVICE2,
+  /* A connection that tries to trick @subscriber into processing its signals
+   * as if they came from @service */
+  TEST_CONN_ATTACKER,
+  NUM_TEST_CONNS
+} TestConn;
+
+static const char * const test_conn_descriptions[NUM_TEST_CONNS] =
+{
+  "(unused)",
+  "subscriber",
+  "service",
+  "service 2",
+  "attacker"
+};
+
+typedef enum
+{
+  SUBSCRIPTION_MODE_CONN,
+  SUBSCRIPTION_MODE_PROXY,
+  SUBSCRIPTION_MODE_PARALLEL
+} SubscriptionMode;
+
+typedef struct
+{
+  GDBusProxy *received_by_proxy;
+  TestConn sender;
+  char *path;
+  char *iface;
+  char *member;
+  GVariant *parameters;
+  char *arg0;
+  guint32 step;
+} ReceivedMessage;
+
+static void
+received_message_free (ReceivedMessage *self)
+{
+
+  g_clear_object (&self->received_by_proxy);
+  g_free (self->path);
+  g_free (self->iface);
+  g_free (self->member);
+  g_clear_pointer (&self->parameters, g_variant_unref);
+  g_free (self->arg0);
+  g_free (self);
+}
+
+typedef struct
+{
+  TestConn sender;
+  TestConn unicast_to;
+  const char *path;
+  const char *iface;
+  const char *member;
+  const char *arg0;
+  const char *args;
+  guint received_by_conn;
+  guint received_by_proxy;
+} TestEmitSignal;
+
+typedef struct
+{
+  const char *string_sender;
+  TestConn unique_sender;
+  const char *path;
+  const char *iface;
+  const char *member;
+  const char *arg0;
+  GDBusSignalFlags flags;
+  gboolean unsubscribe_immediately;
+} TestSubscribe;
+
+typedef struct
+{
+  const char *name;
+  TestConn owner;
+  guint received_by_conn;
+  guint received_by_proxy;
+} TestOwnName;
+
+typedef enum
+{
+  TEST_ACTION_NONE = 0,
+  TEST_ACTION_SUBSCRIBE,
+  TEST_ACTION_EMIT_SIGNAL,
+  TEST_ACTION_OWN_NAME,
+} TestAction;
+
+typedef struct
+{
+  TestAction action;
+  union {
+    TestEmitSignal signal;
+    TestSubscribe subscribe;
+    TestOwnName own_name;
+    guint unsubscribe_undo_step;
+  } u;
+} TestStep;
+
+/* Arbitrary, extend as necessary to accommodate the longest test */
+#define MAX_TEST_STEPS 10
+
+typedef struct
+{
+  const char *description;
+  TestStep steps[MAX_TEST_STEPS];
+} TestPlan;
+
+static const TestPlan plan_simple =
+{
+  .description = "A broadcast is only received after subscribing to it",
+  .steps = {
+    {
+      /* We don't receive a signal if we haven't subscribed yet */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      /* Now it works */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        /* The proxy can't be used in this case, because it needs
+         * a bus name to subscribe to */
+        .received_by_proxy = 0
+      },
+    },
+  },
+};
+
+static const TestPlan plan_broadcast_from_anyone =
+{
+  .description = "A subscription with NULL sender accepts broadcast and unicast",
+  .steps = {
+    {
+      /* Subscriber wants to receive signals from anyone */
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      /* First service sends a broadcast */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* Second service also sends a broadcast */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE2,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* First service sends a unicast signal */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .unicast_to = TEST_CONN_SUBSCRIBER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* Second service also sends a unicast signal */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE2,
+        .unicast_to = TEST_CONN_SUBSCRIBER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        .received_by_proxy = 0
+      },
+    },
+  },
+};
+
+static const TestPlan plan_match_twice =
+{
+  .description = "A message matching more than one subscription is received "
+                 "once per subscription",
+  .steps = {
+    {
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .unique_sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .path = EXAMPLE_PATH,
+      },
+    },
+    {
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .unique_sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 4,
+        /* Only the first and last work with GDBusProxy */
+        .received_by_proxy = 2
+      },
+    },
+  },
+};
+
+static const TestPlan plan_limit_by_unique_name =
+{
+  .description = "A subscription via a unique name only accepts messages "
+                 "sent by that same unique name",
+  .steps = {
+    {
+      /* Subscriber wants to receive signals from service */
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .unique_sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      /* Attacker wants to trick subscriber into thinking that service
+       * sent a signal */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* Attacker tries harder, by sending a signal unicast directly to
+       * the subscriber */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .unicast_to = TEST_CONN_SUBSCRIBER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* When the real service sends a signal, it should still get through */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        .received_by_proxy = 1
+      },
+    },
+  },
+};
+
+static const TestPlan plan_nonexistent_unique_name =
+{
+  .description = "A subscription via a unique name that doesn't exist "
+                 "accepts no messages",
+  .steps = {
+    {
+      /* Subscriber wants to receive signals from service */
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        /* This relies on the implementation detail that the dbus-daemon
+         * (and presumably other bus implementations) never actually generates
+         * a unique name in this format */
+        .string_sender = ":0.this.had.better.not.exist",
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      /* Attacker wants to trick subscriber into thinking that service
+       * sent a signal */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* Attacker tries harder, by sending a signal unicast directly to
+       * the subscriber */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .unicast_to = TEST_CONN_SUBSCRIBER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+  },
+};
+
+static const TestPlan plan_limit_by_well_known_name =
+{
+  .description = "A subscription via a well-known name only accepts messages "
+                 "sent by the owner of that well-known name",
+  .steps = {
+    {
+      /* Service already owns one name */
+      .action = TEST_ACTION_OWN_NAME,
+      .u.own_name = {
+        .name = ALREADY_OWNED_NAME,
+        .owner = TEST_CONN_SERVICE
+      },
+    },
+    {
+      /* Subscriber wants to receive signals from service */
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .string_sender = ALREADY_OWNED_NAME,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      /* Subscriber wants to receive signals from service by another name */
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .string_sender = OWNED_LATER_NAME,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+      },
+    },
+    {
+      /* Attacker wants to trick subscriber into thinking that service
+       * sent a signal */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* Attacker tries harder, by sending a signal unicast directly to
+       * the subscriber */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .unicast_to = TEST_CONN_SUBSCRIBER,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* When the service sends a signal with the name it already owns,
+       * it should get through */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 1,
+        .received_by_proxy = 1
+      },
+    },
+    {
+      /* Service claims another name */
+      .action = TEST_ACTION_OWN_NAME,
+      .u.own_name = {
+        .name = OWNED_LATER_NAME,
+        .owner = TEST_CONN_SERVICE
+      },
+    },
+    {
+      /* Now the subscriber gets this signal twice, once for each
+       * subscription; and similarly each of the two proxies gets this
+       * signal twice */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 2,
+        .received_by_proxy = 2
+      },
+    },
+  },
+};
+
+static const TestPlan plan_unsubscribe_immediately =
+{
+  .description = "Unsubscribing before GetNameOwner can return doesn't result in a crash",
+  .steps = {
+    {
+      /* Service already owns one name */
+      .action = TEST_ACTION_OWN_NAME,
+      .u.own_name = {
+        .name = ALREADY_OWNED_NAME,
+        .owner = TEST_CONN_SERVICE
+      },
+    },
+    {
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .string_sender = ALREADY_OWNED_NAME,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .unsubscribe_immediately = TRUE
+      },
+    },
+    {
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_SERVICE,
+        .path = EXAMPLE_PATH,
+        .iface = EXAMPLE_INTERFACE,
+        .member = FOO_SIGNAL,
+        .received_by_conn = 0,
+        /* The proxy can't unsubscribe, except by destroying the proxy
+         * completely, which we don't currently implement in this test */
+        .received_by_proxy = 1
+      },
+    },
+  },
+};
+
+static const TestPlan plan_limit_to_message_bus =
+{
+  .description = "A subscription to the message bus only accepts messages "
+                 "from the message bus",
+  .steps = {
+    {
+      /* Subscriber wants to receive signals from the message bus itself */
+      .action = TEST_ACTION_SUBSCRIBE,
+      .u.subscribe = {
+        .string_sender = DBUS_SERVICE_DBUS,
+        .path = DBUS_PATH_DBUS,
+        .iface = DBUS_INTERFACE_DBUS,
+      },
+    },
+    {
+      /* Attacker wants to trick subscriber into thinking that the message
+       * bus sent a signal */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .sender = TEST_CONN_ATTACKER,
+        .path = DBUS_PATH_DBUS,
+        .iface = DBUS_INTERFACE_DBUS,
+        .member = NAME_OWNER_CHANGED,
+        .arg0 = "would I lie to you?",
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* Attacker tries harder, by sending a signal unicast directly to
+       * the subscriber, and using more realistic arguments */
+      .action = TEST_ACTION_EMIT_SIGNAL,
+      .u.signal = {
+        .unicast_to = TEST_CONN_SUBSCRIBER,
+        .sender = TEST_CONN_ATTACKER,
+        .path = DBUS_PATH_DBUS,
+        .iface = DBUS_INTERFACE_DBUS,
+        .member = NAME_OWNER_CHANGED,
+        .args = "('com.example.Name', '', ':1.12')",
+        .received_by_conn = 0,
+        .received_by_proxy = 0
+      },
+    },
+    {
+      /* When the message bus sends a signal (in this case triggered by
+       * owning a name), it should still get through */
+      .action = TEST_ACTION_OWN_NAME,
+      .u.own_name = {
+        .name = OWNED_LATER_NAME,
+        .owner = TEST_CONN_SERVICE,
+        .received_by_conn = 1,
+        .received_by_proxy = 1
+      },
+    },
+  },
+};
+
+typedef struct
+{
+  const TestPlan *plan;
+  SubscriptionMode mode;
+  GError *error;
+  /* (element-type ReceivedMessage) */
+  GPtrArray *received;
+  /* conns[TEST_CONN_NONE] is unused and remains NULL */
+  GDBusConnection *conns[NUM_TEST_CONNS];
+  /* Proxies on conns[TEST_CONN_SUBSCRIBER] */
+  GPtrArray *proxies;
+  /* unique_names[TEST_CONN_NONE] is unused and remains NULL */
+  const char *unique_names[NUM_TEST_CONNS];
+  /* finished[TEST_CONN_NONE] is unused and remains FALSE */
+  gboolean finished[NUM_TEST_CONNS];
+  /* Remains 0 for any step that is not a subscription */
+  guint subscriptions[MAX_TEST_STEPS];
+  /* Number of times the signal from step n was received */
+  guint received_by_conn[MAX_TEST_STEPS];
+  /* Number of times the signal from step n was received */
+  guint received_by_proxy[MAX_TEST_STEPS];
+  guint finished_subscription;
+} Fixture;
+
+/* Wait for asynchronous messages from @conn to have been processed
+ * by the message bus, as a sequence point so that we can make
+ * "happens before" and "happens after" assertions relative to this.
+ * The easiest way to achieve this is to call a message bus method that has
+ * no arguments and wait for it to return: because the message bus processes
+ * messages in-order, anything we sent before this must have been processed
+ * by the time this call arrives. */
+static void
+connection_wait_for_bus (GDBusConnection *conn)
+{
+  GError *error = NULL;
+  GVariant *call_result;
+
+  call_result = g_dbus_connection_call_sync (conn,
+                                             DBUS_SERVICE_DBUS,
+                                             DBUS_PATH_DBUS,
+                                             DBUS_INTERFACE_DBUS,
+                                             "GetId",
+                                             NULL,   /* arguments */
+                                             NULL,   /* result type */
+                                             G_DBUS_CALL_FLAGS_NONE,
+                                             -1,
+                                             NULL,
+                                             &error);
+  g_assert_no_error (error);
+  g_assert_nonnull (call_result);
+  g_variant_unref (call_result);
+}
+
+/*
+ * Called when the subscriber receives a message from any connection
+ * announcing that it has emitted all the signals that it plans to emit.
+ */
+static void
+subscriber_finished_cb (GDBusConnection *conn,
+                        const char      *sender_name,
+                        const char      *path,
+                        const char      *iface,
+                        const char      *member,
+                        GVariant        *parameters,
+                        void            *user_data)
+{
+  Fixture *f = user_data;
+  GDBusConnection *subscriber = f->conns[TEST_CONN_SUBSCRIBER];
+  guint i;
+
+  g_assert_true (conn == subscriber);
+
+  for (i = TEST_CONN_FIRST; i < G_N_ELEMENTS (f->conns); i++)
+    {
+      if (g_str_equal (sender_name, f->unique_names[i]))
+        {
+          g_assert_false (f->finished[i]);
+          f->finished[i] = TRUE;
+
+          g_test_message ("Received Finished signal from %s %s",
+                          test_conn_descriptions[i], sender_name);
+          return;
+        }
+    }
+
+  g_error ("Received Finished signal from unknown sender %s", sender_name);
+}
+
+/*
+ * Called when we receive a signal, either via the GDBusProxy (proxy != NULL)
+ * or via the GDBusConnection (proxy == NULL).
+ */
+static void
+fixture_received_signal (Fixture    *f,
+                         GDBusProxy *proxy,
+                         const char *sender_name,
+                         const char *path,
+                         const char *iface,
+                         const char *member,
+                         GVariant   *parameters)
+{
+  guint i;
+  ReceivedMessage *received;
+
+  /* Ignore the Finished signal if it matches a wildcard subscription */
+  if (g_str_equal (member, FINISHED_SIGNAL))
+    return;
+
+  received = g_new0 (ReceivedMessage, 1);
+
+  if (proxy != NULL)
+    received->received_by_proxy = g_object_ref (proxy);
+  else
+    received->received_by_proxy = NULL;
+
+  received->path = g_strdup (path);
+  received->iface = g_strdup (iface);
+  received->member = g_strdup (member);
+  received->parameters = g_variant_ref (parameters);
+
+  for (i = TEST_CONN_FIRST; i < G_N_ELEMENTS (f->conns); i++)
+    {
+      if (g_str_equal (sender_name, f->unique_names[i]))
+        {
+          received->sender = i;
+          g_assert_false (f->finished[i]);
+          break;
+        }
+    }
+
+  if (g_str_equal (sender_name, DBUS_SERVICE_DBUS))
+    {
+      g_test_message ("Signal received from message bus %s",
+                      sender_name);
+    }
+  else
+    {
+      g_test_message ("Signal received from %s %s",
+                      test_conn_descriptions[received->sender],
+                      sender_name);
+      g_assert_cmpint (received->sender, !=, TEST_CONN_NONE);
+    }
+
+  g_test_message ("Signal received from %s %s via %s",
+                  test_conn_descriptions[received->sender],
+                  sender_name,
+                  proxy != NULL ? "proxy" : "connection");
+  g_test_message ("\tPath: %s", path);
+  g_test_message ("\tInterface: %s", iface);
+  g_test_message ("\tMember: %s", member);
+
+  if (g_variant_is_of_type (parameters, G_VARIANT_TYPE ("(su)")))
+    {
+      g_variant_get (parameters, "(su)", &received->arg0, &received->step);
+      g_test_message ("\tString argument 0: %s", received->arg0);
+      g_test_message ("\tSent in step: %u", received->step);
+    }
+  else if (g_variant_is_of_type (parameters, G_VARIANT_TYPE ("(uu)")))
+    {
+      g_variant_get (parameters, "(uu)", NULL, &received->step);
+      g_test_message ("\tArgument 0: (not a string)");
+      g_test_message ("\tSent in step: %u", received->step);
+    }
+  else if (g_variant_is_of_type (parameters, G_VARIANT_TYPE ("(sss)")))
+    {
+      const char *name;
+      const char *old_owner;
+      const char *new_owner;
+
+      /* The only signal of this signature that we legitimately receive
+       * during this test is NameOwnerChanged, so just assert that it
+       * is from the message bus and can be matched to a plausible step.
+       * (This is less thorough than the above, and will not work if we
+       * add a test scenario where a name's ownership is repeatedly
+       * changed while watching NameOwnerChanged - so don't do that.) */
+      g_assert_cmpstr (sender_name, ==, DBUS_SERVICE_DBUS);
+      g_assert_cmpstr (path, ==, DBUS_PATH_DBUS);
+      g_assert_cmpstr (iface, ==, DBUS_INTERFACE_DBUS);
+      g_assert_cmpstr (member, ==, NAME_OWNER_CHANGED);
+
+      g_variant_get (parameters, "(&s&s&s)", &name, &old_owner, &new_owner);
+
+      for (i = 0; i < G_N_ELEMENTS (f->plan->steps); i++)
+        {
+          const TestStep *step = &f->plan->steps[i];
+
+          if (step->action == TEST_ACTION_OWN_NAME)
+            {
+              const TestOwnName *own_name = &step->u.own_name;
+
+              if (g_str_equal (name, own_name->name)
+                  && g_str_equal (new_owner, f->unique_names[own_name->owner])
+                  && own_name->received_by_conn > 0)
+                {
+                  received->step = i;
+                  break;
+                }
+            }
+
+          if (i >= G_N_ELEMENTS (f->plan->steps))
+            g_error ("Could not match message to a test step");
+        }
+    }
+  else
+    {
+      g_error ("Unexpected message received");
+    }
+
+  g_ptr_array_add (f->received, g_steal_pointer (&received));
+}
+
+static void
+proxy_signal_cb (GDBusProxy *proxy,
+                 const char *sender_name,
+                 const char *member,
+                 GVariant   *parameters,
+                 void       *user_data)
+{
+  Fixture *f = user_data;
+
+  fixture_received_signal (f, proxy, sender_name,
+                           g_dbus_proxy_get_object_path (proxy),
+                           g_dbus_proxy_get_interface_name (proxy),
+                           member, parameters);
+}
+
+static void
+subscribed_signal_cb (GDBusConnection *conn,
+                      const char      *sender_name,
+                      const char      *path,
+                      const char      *iface,
+                      const char      *member,
+                      GVariant        *parameters,
+                      void            *user_data)
+{
+  Fixture *f = user_data;
+  GDBusConnection *subscriber = f->conns[TEST_CONN_SUBSCRIBER];
+
+  g_assert_true (conn == subscriber);
+
+  fixture_received_signal (f, NULL, sender_name, path, iface, member, parameters);
+}
+
+static void
+fixture_subscribe (Fixture             *f,
+                   const TestSubscribe *subscribe,
+                   guint                step_number)
+{
+  GDBusConnection *subscriber = f->conns[TEST_CONN_SUBSCRIBER];
+  const char *sender;
+
+  if (subscribe->string_sender != NULL)
+    {
+      sender = subscribe->string_sender;
+      g_test_message ("\tSender: %s", sender);
+    }
+  else if (subscribe->unique_sender != TEST_CONN_NONE)
+    {
+      sender = f->unique_names[subscribe->unique_sender];
+      g_test_message ("\tSender: %s %s",
+                      test_conn_descriptions[subscribe->unique_sender],
+                      sender);
+    }
+  else
+    {
+      sender = NULL;
+      g_test_message ("\tSender: (any)");
+    }
+
+  g_test_message ("\tPath: %s", nonnull (subscribe->path, "(any)"));
+  g_test_message ("\tInterface: %s",
+                  nonnull (subscribe->iface, "(any)"));
+  g_test_message ("\tMember: %s",
+                  nonnull (subscribe->member, "(any)"));
+  g_test_message ("\tString argument 0: %s",
+                  nonnull (subscribe->arg0, "(any)"));
+  g_test_message ("\tFlags: %x", subscribe->flags);
+
+  if (f->mode != SUBSCRIPTION_MODE_PROXY)
+    {
+      /* CONN or PARALLEL */
+      guint id;
+
+      g_test_message ("\tSubscribing via connection");
+      id = g_dbus_connection_signal_subscribe (subscriber,
+                                               sender,
+                                               subscribe->iface,
+                                               subscribe->member,
+                                               subscribe->path,
+                                               subscribe->arg0,
+                                               subscribe->flags,
+                                               subscribed_signal_cb,
+                                               f, NULL);
+
+      g_assert_cmpuint (id, !=, 0);
+
+      if (subscribe->unsubscribe_immediately)
+        {
+          g_test_message ("\tImmediately unsubscribing");
+          g_dbus_connection_signal_unsubscribe (subscriber, id);
+        }
+      else
+        {
+          f->subscriptions[step_number] = id;
+        }
+    }
+
+  if (f->mode != SUBSCRIPTION_MODE_CONN)
+    {
+      /* PROXY or PARALLEL */
+
+      if (sender == NULL)
+        {
+          g_test_message ("\tCannot subscribe via proxy: no bus name");
+        }
+      else if (subscribe->path == NULL)
+        {
+          g_test_message ("\tCannot subscribe via proxy: no path");
+        }
+      else if (subscribe->iface == NULL)
+        {
+          g_test_message ("\tCannot subscribe via proxy: no interface");
+        }
+      else
+        {
+          GDBusProxy *proxy;
+
+          g_test_message ("\tSubscribing via proxy");
+          proxy = g_dbus_proxy_new_sync (subscriber,
+                                         (G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES
+                                          | G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START),
+                                         NULL,    /* GDBusInterfaceInfo */
+                                         sender,
+                                         subscribe->path,
+                                         subscribe->iface,
+                                         NULL,    /* GCancellable */
+                                         &f->error);
+          g_assert_no_error (f->error);
+          g_assert_nonnull (proxy);
+          g_signal_connect (proxy, "g-signal", G_CALLBACK (proxy_signal_cb), f);
+          g_ptr_array_add (f->proxies, g_steal_pointer (&proxy));
+        }
+    }
+
+  /* As in setup(), we need to wait for AddMatch to happen. */
+  g_test_message ("Waiting for AddMatch to be processed");
+  connection_wait_for_bus (subscriber);
+}
+
+static void
+fixture_emit_signal (Fixture              *f,
+                     const TestEmitSignal *signal,
+                     guint                 step_number)
+{
+  GVariant *body;
+  const char *destination;
+  gboolean ok;
+
+  g_test_message ("\tSender: %s",
+                  test_conn_descriptions[signal->sender]);
+
+  if (signal->unicast_to != TEST_CONN_NONE)
+    {
+      destination = f->unique_names[signal->unicast_to];
+      g_test_message ("\tDestination: %s %s",
+                      test_conn_descriptions[signal->unicast_to],
+                      destination);
+    }
+  else
+    {
+      destination = NULL;
+      g_test_message ("\tDestination: (broadcast)");
+    }
+
+  g_assert_nonnull (signal->path);
+  g_test_message ("\tPath: %s", signal->path);
+  g_assert_nonnull (signal->iface);
+  g_test_message ("\tInterface: %s", signal->iface);
+  g_assert_nonnull (signal->member);
+  g_test_message ("\tMember: %s", signal->member);
+
+  /* If arg0 is non-NULL, put it in the message's argument 0.
+   * Otherwise put something that will not match any arg0.
+   * Either way, put the sequence number in argument 1 so we can
+   * correlate sent messages with received messages later. */
+  if (signal->args != NULL)
+    {
+      /* floating */
+      body = g_variant_new_parsed (signal->args);
+      g_assert_nonnull (body);
+    }
+  else if (signal->arg0 != NULL)
+    {
+      g_test_message ("\tString argument 0: %s", signal->arg0);
+      body = g_variant_new ("(su)", signal->arg0, (guint32) step_number);
+    }
+  else
+    {
+      g_test_message ("\tArgument 0: (not a string)");
+      body = g_variant_new ("(uu)", (guint32) 0, (guint32) step_number);
+    }
+
+  ok = g_dbus_connection_emit_signal (f->conns[signal->sender],
+                                      destination,
+                                      signal->path,
+                                      signal->iface,
+                                      signal->member,
+                                      /* steals floating reference */
+                                      g_steal_pointer (&body),
+                                      &f->error);
+  g_assert_no_error (f->error);
+  g_assert_true (ok);
+
+  /* Emitting the signal is asynchronous, so if we want subsequent steps
+   * to be guaranteed to happen after the signal from the message bus's
+   * perspective, we have to do a round-trip to the message bus to sync up. */
+  g_test_message ("Waiting for signal to reach message bus");
+  connection_wait_for_bus (f->conns[signal->sender]);
+}
+
+static void
+fixture_own_name (Fixture *f,
+                  const TestOwnName *own_name)
+{
+  GVariant *call_result;
+  guint32 flags;
+  guint32 result_code;
+
+  g_test_message ("\tName: %s", own_name->name);
+  g_test_message ("\tOwner: %s",
+                  test_conn_descriptions[own_name->owner]);
+
+  /* For simplicity, we do this via a direct bus call rather than
+   * using g_bus_own_name_on_connection(). The flags in
+   * GBusNameOwnerFlags are numerically equal to those in the
+   * D-Bus wire protocol. */
+  flags = G_BUS_NAME_OWNER_FLAGS_DO_NOT_QUEUE;
+  call_result = g_dbus_connection_call_sync (f->conns[own_name->owner],
+                                             DBUS_SERVICE_DBUS,
+                                             DBUS_PATH_DBUS,
+                                             DBUS_INTERFACE_DBUS,
+                                             "RequestName",
+                                             g_variant_new ("(su)",
+                                                           own_name->name,
+                                                           flags),
+                                             G_VARIANT_TYPE ("(u)"),
+                                             G_DBUS_CALL_FLAGS_NONE,
+                                             -1,
+                                             NULL,
+                                             &f->error);
+  g_assert_no_error (f->error);
+  g_assert_nonnull (call_result);
+  g_variant_get (call_result, "(u)", &result_code);
+  g_assert_cmpuint (result_code, ==, DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER);
+  g_variant_unref (call_result);
+}
+
+static void
+fixture_run_plan (Fixture          *f,
+                  const TestPlan   *plan,
+                  SubscriptionMode  mode)
+{
+  guint i;
+
+  G_STATIC_ASSERT (G_N_ELEMENTS (plan->steps) == G_N_ELEMENTS (f->subscriptions));
+  G_STATIC_ASSERT (G_N_ELEMENTS (plan->steps) == G_N_ELEMENTS (f->received_by_conn));
+  G_STATIC_ASSERT (G_N_ELEMENTS (plan->steps) == G_N_ELEMENTS (f->received_by_proxy));
+
+  f->mode = mode;
+  f->plan = plan;
+
+  g_test_summary (plan->description);
+
+  for (i = 0; i < G_N_ELEMENTS (plan->steps); i++)
+    {
+      const TestStep *step = &plan->steps[i];
+
+      switch (step->action)
+        {
+          case TEST_ACTION_SUBSCRIBE:
+            g_test_message ("Step %u: adding subscription", i);
+            fixture_subscribe (f, &step->u.subscribe, i);
+            break;
+
+          case TEST_ACTION_EMIT_SIGNAL:
+            g_test_message ("Step %u: emitting signal", i);
+            fixture_emit_signal (f, &step->u.signal, i);
+            break;
+
+          case TEST_ACTION_OWN_NAME:
+            g_test_message ("Step %u: claiming bus name", i);
+            fixture_own_name (f, &step->u.own_name);
+            break;
+
+          case TEST_ACTION_NONE:
+            /* Padding to fill the rest of the array, do nothing */
+            break;
+
+          default:
+            g_return_if_reached ();
+        }
+    }
+
+  /* Now that we have done everything we wanted to do, emit Finished
+   * from each connection. */
+  for (i = TEST_CONN_FIRST; i < G_N_ELEMENTS (f->conns); i++)
+    {
+      gboolean ok;
+
+      ok = g_dbus_connection_emit_signal (f->conns[i],
+                                          NULL,
+                                          FINISHED_PATH,
+                                          FINISHED_INTERFACE,
+                                          FINISHED_SIGNAL,
+                                          NULL,
+                                          &f->error);
+      g_assert_no_error (f->error);
+      g_assert_true (ok);
+    }
+
+  /* Wait until we have seen the Finished signal from each sender */
+  while (TRUE)
+    {
+      gboolean all_finished = TRUE;
+
+      for (i = TEST_CONN_FIRST; i < G_N_ELEMENTS (f->conns); i++)
+        all_finished = all_finished && f->finished[i];
+
+      if (all_finished)
+        break;
+
+      g_main_context_iteration (NULL, TRUE);
+    }
+
+  /* Assert that the correct things happened before each Finished signal */
+  for (i = 0; i < f->received->len; i++)
+    {
+      const ReceivedMessage *received = g_ptr_array_index (f->received, i);
+
+      g_assert_cmpuint (received->step, <, G_N_ELEMENTS (f->received_by_conn));
+      g_assert_cmpuint (received->step, <, G_N_ELEMENTS (f->received_by_proxy));
+
+      if (received->received_by_proxy != NULL)
+        f->received_by_proxy[received->step] += 1;
+      else
+        f->received_by_conn[received->step] += 1;
+    }
+
+  for (i = 0; i < G_N_ELEMENTS (plan->steps); i++)
+    {
+      const TestStep *step = &plan->steps[i];
+
+      if (step->action == TEST_ACTION_EMIT_SIGNAL)
+        {
+          const TestEmitSignal *signal = &plan->steps[i].u.signal;
+
+          if (mode != SUBSCRIPTION_MODE_PROXY)
+            {
+              g_test_message ("Signal from step %u was received %u times by "
+                              "GDBusConnection, expected %u",
+                              i, f->received_by_conn[i], signal->received_by_conn);
+              g_assert_cmpuint (f->received_by_conn[i], ==, signal->received_by_conn);
+            }
+          else
+            {
+              g_assert_cmpuint (f->received_by_conn[i], ==, 0);
+            }
+
+          if (mode != SUBSCRIPTION_MODE_CONN)
+            {
+              g_test_message ("Signal from step %u was received %u times by "
+                              "GDBusProxy, expected %u",
+                              i, f->received_by_proxy[i], signal->received_by_proxy);
+              g_assert_cmpuint (f->received_by_proxy[i], ==, signal->received_by_proxy);
+            }
+          else
+            {
+              g_assert_cmpuint (f->received_by_proxy[i], ==, 0);
+            }
+        }
+      else if (step->action == TEST_ACTION_OWN_NAME)
+        {
+          const TestOwnName *own_name = &plan->steps[i].u.own_name;
+
+          if (mode != SUBSCRIPTION_MODE_PROXY)
+            {
+              g_test_message ("NameOwnerChanged from step %u was received %u "
+                              "times by GDBusConnection, expected %u",
+                              i, f->received_by_conn[i], own_name->received_by_conn);
+              g_assert_cmpuint (f->received_by_conn[i], ==, own_name->received_by_conn);
+            }
+          else
+            {
+              g_assert_cmpuint (f->received_by_conn[i], ==, 0);
+            }
+
+          if (mode != SUBSCRIPTION_MODE_CONN)
+            {
+              g_test_message ("NameOwnerChanged from step %u was received %u "
+                              "times by GDBusProxy, expected %u",
+                              i, f->received_by_proxy[i], own_name->received_by_proxy);
+              g_assert_cmpuint (f->received_by_proxy[i], ==, own_name->received_by_proxy);
+            }
+          else
+            {
+              g_assert_cmpuint (f->received_by_proxy[i], ==, 0);
+            }
+        }
+    }
+}
+
+static void
+setup (Fixture *f,
+       G_GNUC_UNUSED const void *context)
+{
+  GDBusConnection *subscriber;
+  guint i;
+
+  session_bus_up ();
+
+  f->proxies = g_ptr_array_new_full (MAX_TEST_STEPS, g_object_unref);
+  f->received = g_ptr_array_new_full (MAX_TEST_STEPS,
+                                      (GDestroyNotify) received_message_free);
+
+  for (i = TEST_CONN_FIRST; i < G_N_ELEMENTS (f->conns); i++)
+    {
+      f->conns[i] = _g_bus_get_priv (G_BUS_TYPE_SESSION, NULL, &f->error);
+      g_assert_no_error (f->error);
+      g_assert_nonnull (f->conns[i]);
+
+      f->unique_names[i] = g_dbus_connection_get_unique_name (f->conns[i]);
+      g_assert_nonnull (f->unique_names[i]);
+      g_test_message ("%s is %s",
+                      test_conn_descriptions[i],
+                      f->unique_names[i]);
+    }
+
+  subscriber = f->conns[TEST_CONN_SUBSCRIBER];
+
+  /* Used to wait for all connections to finish sending whatever they
+   * wanted to send */
+  f->finished_subscription = g_dbus_connection_signal_subscribe (subscriber,
+                                                                 NULL,
+                                                                 FINISHED_INTERFACE,
+                                                                 FINISHED_SIGNAL,
+                                                                 FINISHED_PATH,
+                                                                 NULL,
+                                                                 G_DBUS_SIGNAL_FLAGS_NONE,
+                                                                 subscriber_finished_cb,
+                                                                 f, NULL);
+  /* AddMatch is sent asynchronously, so we don't know how
+   * soon it will be processed. Before emitting signals, we
+   * need to wait for the message bus to get as far as processing
+   * AddMatch. */
+  g_test_message ("Waiting for AddMatch to be processed");
+  connection_wait_for_bus (subscriber);
+}
+
+static void
+test_conn_subscribe (Fixture *f,
+                     const void *context)
+{
+  fixture_run_plan (f, context, SUBSCRIPTION_MODE_CONN);
+}
+
+static void
+test_proxy_subscribe (Fixture *f,
+                      const void *context)
+{
+  fixture_run_plan (f, context, SUBSCRIPTION_MODE_PROXY);
+}
+
+static void
+test_parallel_subscribe (Fixture *f,
+                         const void *context)
+{
+  fixture_run_plan (f, context, SUBSCRIPTION_MODE_PARALLEL);
+}
+
+static void
+teardown (Fixture *f,
+          G_GNUC_UNUSED const void *context)
+{
+  GDBusConnection *subscriber = f->conns[TEST_CONN_SUBSCRIBER];
+  guint i;
+
+  g_ptr_array_unref (f->proxies);
+
+  if (f->finished_subscription != 0)
+    g_dbus_connection_signal_unsubscribe (subscriber, f->finished_subscription);
+
+  for (i = 0; i < G_N_ELEMENTS (f->subscriptions); i++)
+    {
+      if (f->subscriptions[i] != 0)
+        g_dbus_connection_signal_unsubscribe (subscriber, f->subscriptions[i]);
+    }
+
+  g_ptr_array_unref (f->received);
+
+  for (i = TEST_CONN_FIRST; i < G_N_ELEMENTS (f->conns); i++)
+    g_clear_object (&f->conns[i]);
+
+  g_clear_error (&f->error);
+
+  session_bus_down ();
+}
+
+int
+main (int   argc,
+      char *argv[])
+{
+  g_test_init (&argc, &argv, G_TEST_OPTION_ISOLATE_DIRS, NULL);
+
+  g_test_dbus_unset ();
+
+#define ADD_SUBSCRIBE_TEST(name) \
+  do { \
+    g_test_add ("/gdbus/subscribe/conn/" #name, \
+                Fixture, &plan_ ## name, \
+                setup, test_conn_subscribe, teardown); \
+    g_test_add ("/gdbus/subscribe/proxy/" #name, \
+                Fixture, &plan_ ## name, \
+                setup, test_proxy_subscribe, teardown); \
+    g_test_add ("/gdbus/subscribe/parallel/" #name, \
+                Fixture, &plan_ ## name, \
+                setup, test_parallel_subscribe, teardown); \
+  } while (0)
+
+  ADD_SUBSCRIBE_TEST (simple);
+  ADD_SUBSCRIBE_TEST (broadcast_from_anyone);
+  ADD_SUBSCRIBE_TEST (match_twice);
+  ADD_SUBSCRIBE_TEST (limit_by_unique_name);
+  ADD_SUBSCRIBE_TEST (nonexistent_unique_name);
+  ADD_SUBSCRIBE_TEST (limit_by_well_known_name);
+  ADD_SUBSCRIBE_TEST (limit_to_message_bus);
+  ADD_SUBSCRIBE_TEST (unsubscribe_immediately);
+
+  return g_test_run();
+}
index 232ecca..3bfb333 100644 (file)
@@ -457,6 +457,8 @@ if host_machine.system() != 'windows'
       'gdbus-connection-slow' : {
         'extra_sources' : extra_sources,
         'extra_programs': extra_programs + ['gdbus-connection-flush-helper'],
+        # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148
+        'can_fail' : host_system == 'gnu',
       },
       'gdbus-error' : {'extra_sources' : extra_sources},
       'gdbus-exit-on-close' : {'extra_sources' : extra_sources},
@@ -491,6 +493,10 @@ if host_machine.system() != 'windows'
         'extra_sources' : extra_sources,
         'extra_programs': extra_programs,
       },
+      'gdbus-subscribe' : {
+        'extra_sources' : extra_sources,
+        'extra_programs': extra_programs,
+      },
       'gdbus-test-codegen' : {
         'extra_sources' : [extra_sources, gdbus_test_codegen_generated, gdbus_test_codegen_generated_interface_info],
         'c_args' : ['-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_32'],
index e845808..f40f448 100644 (file)
@@ -98,7 +98,7 @@ _xdg_glob_list_free (XdgGlobList *glob_list)
 
 static XdgGlobList *
 _xdg_glob_list_append (XdgGlobList *glob_list,
-                      void        *data,
+                      const char  *data,
                       const char  *mime_type,
                       int          weight,
                       int          case_sensitive)
@@ -117,8 +117,8 @@ _xdg_glob_list_append (XdgGlobList *glob_list,
     }
 
   new_element = _xdg_glob_list_new ();
-  new_element->data = data;
-  new_element->mime_type = mime_type;
+  new_element->data = strdup (data);
+  new_element->mime_type = strdup (mime_type);
   new_element->weight = weight;
   new_element->case_sensitive = case_sensitive;
   if (glob_list == NULL)
@@ -576,13 +576,13 @@ _xdg_glob_hash_append_glob (XdgGlobHash *glob_hash,
   switch (type)
     {
     case XDG_GLOB_LITERAL:
-      glob_hash->literal_list = _xdg_glob_list_append (glob_hash->literal_list, strdup (glob), strdup (mime_type), weight, case_sensitive);
+      glob_hash->literal_list = _xdg_glob_list_append (glob_hash->literal_list, glob, mime_type, weight, case_sensitive);
       break;
     case XDG_GLOB_SIMPLE:
       glob_hash->simple_node = _xdg_glob_hash_insert_text (glob_hash->simple_node, glob + 1, mime_type, weight, case_sensitive);
       break;
     case XDG_GLOB_FULL:
-      glob_hash->full_list = _xdg_glob_list_append (glob_hash->full_list, strdup (glob), strdup (mime_type), weight, case_sensitive);
+      glob_hash->full_list = _xdg_glob_list_append (glob_hash->full_list, glob, mime_type, weight, case_sensitive);
       break;
     }
 }
diff --git a/girepository/cmph/main.c b/girepository/cmph/main.c
deleted file mode 100644 (file)
index f739b32..0000000
+++ /dev/null
@@ -1,342 +0,0 @@
-#ifdef WIN32
-#include "wingetopt.h"
-#else
-#include <getopt.h>
-#endif
-#include <stdio.h>
-#include <stdlib.h>
-#include <errno.h>
-#include <string.h>
-#include <time.h>
-#include <limits.h>
-#include <assert.h>
-#include "cmph.h"
-#include "hash.h"
-
-#ifdef WIN32
-#define VERSION "0.8"
-#else
-#include "config.h"
-#endif
-
-
-void usage(const char *prg)
-{
-       fprintf(stderr, "usage: %s [-v] [-h] [-V] [-k nkeys] [-f hash_function] [-g [-c algorithm_dependent_value][-s seed] ] [-a algorithm] [-M memory_in_MB] [-b algorithm_dependent_value] [-t keys_per_bin] [-d tmp_dir] [-m file.mph]  keysfile\n", prg);   
-}
-void usage_long(const char *prg)
-{
-       cmph_uint32 i;
-       fprintf(stderr, "usage: %s [-v] [-h] [-V] [-k nkeys] [-f hash_function] [-g [-c algorithm_dependent_value][-s seed] ] [-a algorithm] [-M memory_in_MB] [-b algorithm_dependent_value] [-t keys_per_bin] [-d tmp_dir] [-m file.mph] keysfile\n", prg);   
-       fprintf(stderr, "Minimum perfect hashing tool\n\n"); 
-       fprintf(stderr, "  -h\t print this help message\n");
-       fprintf(stderr, "  -c\t c value determines:\n");
-       fprintf(stderr, "    \t  * the number of vertices in the graph for the algorithms BMZ and CHM\n");
-       fprintf(stderr, "    \t  * the number of bits per key required in the FCH algorithm\n");
-       fprintf(stderr, "    \t  * the load factor in the CHD_PH algorithm\n");
-       fprintf(stderr, "  -a\t algorithm - valid values are\n");
-       for (i = 0; i < CMPH_COUNT; ++i) fprintf(stderr, "    \t  * %s\n", cmph_names[i]);
-       fprintf(stderr, "  -f\t hash function (may be used multiple times) - valid values are\n");
-       for (i = 0; i < CMPH_HASH_COUNT; ++i) fprintf(stderr, "    \t  * %s\n", cmph_hash_names[i]);
-       fprintf(stderr, "  -V\t print version number and exit\n");
-       fprintf(stderr, "  -v\t increase verbosity (may be used multiple times)\n");
-       fprintf(stderr, "  -k\t number of keys\n");
-       fprintf(stderr, "  -g\t generation mode\n");
-       fprintf(stderr, "  -s\t random seed\n");
-       fprintf(stderr, "  -m\t minimum perfect hash function file \n");
-       fprintf(stderr, "  -M\t main memory availability (in MB) used in BRZ algorithm \n");
-       fprintf(stderr, "  -d\t temporary directory used in BRZ algorithm \n");
-       fprintf(stderr, "  -b\t the meaning of this parameter depends on the algorithm selected in the -a option:\n");
-       fprintf(stderr, "    \t  * For BRZ it is used to make the maximal number of keys in a bucket lower than 256.\n");
-       fprintf(stderr, "    \t    In this case its value should be an integer in the range [64,175]. Default is 128.\n\n");
-       fprintf(stderr, "    \t  * For BDZ it is used to determine the size of some precomputed rank\n");
-       fprintf(stderr, "    \t    information and its value should be an integer in the range [3,10]. Default\n");
-       fprintf(stderr, "    \t    is 7. The larger is this value, the more compact are the resulting functions\n");
-       fprintf(stderr, "    \t    and the slower are them at evaluation time.\n\n");
-       fprintf(stderr, "    \t  * For CHD and CHD_PH it is used to set the average number of keys per bucket\n");
-       fprintf(stderr, "    \t    and its value should be an integer in the range [1,32]. Default is 4. The\n");
-       fprintf(stderr, "    \t    larger is this value, the slower is the construction of the functions.\n");
-       fprintf(stderr, "    \t    This parameter has no effect for other algorithms.\n\n");
-       fprintf(stderr, "  -t\t set the number of keys per bin for a t-perfect hashing function. A t-perfect\n");       
-       fprintf(stderr, "    \t hash function allows at most t collisions in a given bin. This parameter applies\n");
-       fprintf(stderr, "    \t only to the CHD and CHD_PH algorithms. Its value should be an integer in the\n");
-       fprintf(stderr, "    \t range [1,128]. Defaul is 1\n");
-       fprintf(stderr, "  keysfile\t line separated file with keys\n");
-}
-
-int main(int argc, char **argv)
-{
-       cmph_uint32 verbosity = 0;
-       char generate = 0;
-       char *mphf_file = NULL;
-       FILE *mphf_fd = stdout;
-       const char *keys_file = NULL;
-       FILE *keys_fd;
-       cmph_uint32 nkeys = UINT_MAX;
-       cmph_uint32 seed = UINT_MAX;
-       CMPH_HASH *hashes = NULL;
-       cmph_uint32 nhashes = 0;
-       cmph_uint32 i;
-       CMPH_ALGO mph_algo = CMPH_CHM;
-       double c = 0;
-       cmph_config_t *config = NULL;
-       cmph_t *mphf = NULL;
-       char * tmp_dir = NULL;
-       cmph_io_adapter_t *source;
-       cmph_uint32 memory_availability = 0;
-       cmph_uint32 b = 0;
-       cmph_uint32 keys_per_bin = 1;
-       while (1)
-       {
-               char ch = (char)getopt(argc, argv, "hVvgc:k:a:M:b:t:f:m:d:s:");
-               if (ch == -1) break;
-               switch (ch)
-               {
-                       case 's':
-                               {
-                                       char *cptr;
-                                       seed = (cmph_uint32)strtoul(optarg, &cptr, 10);
-                                       if(*cptr != 0) {
-                                               fprintf(stderr, "Invalid seed %s\n", optarg);
-                                               exit(1);
-                                       }
-                               }
-                               break;
-                       case 'c':
-                               {
-                                       char *endptr;
-                                       c = strtod(optarg, &endptr);
-                                       if(*endptr != 0) {
-                                               fprintf(stderr, "Invalid c value %s\n", optarg);
-                                               exit(1);
-                                       }
-                               }
-                               break;
-                       case 'g':
-                               generate = 1;
-                               break;
-                       case 'k':
-                               {
-                                       char *endptr;
-                                       nkeys = (cmph_uint32)strtoul(optarg, &endptr, 10);
-                                       if(*endptr != 0) {
-                                               fprintf(stderr, "Invalid number of keys %s\n", optarg);
-                                               exit(1);
-                                       }
-                               }
-                               break;
-                       case 'm':
-                               mphf_file = strdup(optarg);
-                               break;
-                       case 'd':
-                               tmp_dir = strdup(optarg);
-                               break;
-                       case 'M':
-                               {
-                                       char *cptr;
-                                       memory_availability = (cmph_uint32)strtoul(optarg, &cptr, 10);
-                                       if(*cptr != 0) {
-                                               fprintf(stderr, "Invalid memory availability %s\n", optarg);
-                                               exit(1);
-                                       }
-                               }
-                               break;
-                       case 'b':
-                               {
-                                       char *cptr;
-                                       b =  (cmph_uint32)strtoul(optarg, &cptr, 10);
-                                       if(*cptr != 0) {
-                                               fprintf(stderr, "Parameter b was not found: %s\n", optarg);
-                                               exit(1);
-                                       }
-                               }
-                               break;
-                       case 't':
-                               {
-                                       char *cptr;
-                                       keys_per_bin = (cmph_uint32)strtoul(optarg, &cptr, 10);
-                                       if(*cptr != 0) {
-                                               fprintf(stderr, "Parameter t was not found: %s\n", optarg);
-                                               exit(1);
-                                       }
-                               }
-                               break;
-                       case 'v':
-                               ++verbosity;
-                               break;
-                       case 'V':
-                               printf("%s\n", VERSION);
-                               return 0;
-                       case 'h':
-                               usage_long(argv[0]);
-                               return 0;
-                       case 'a':
-                               {
-                               char valid = 0;
-                               for (i = 0; i < CMPH_COUNT; ++i)
-                               {
-                                       if (strcmp(cmph_names[i], optarg) == 0)
-                                       {
-                                               mph_algo = i;
-                                               valid = 1;
-                                               break;
-                                       }
-                               }
-                               if (!valid) 
-                               {
-                                       fprintf(stderr, "Invalid mph algorithm: %s. It is not available in version %s\n", optarg, VERSION);
-                                       return -1;
-                               }
-                               }
-                               break;
-                       case 'f':
-                               {
-                               char valid = 0;
-                               for (i = 0; i < CMPH_HASH_COUNT; ++i)
-                               {
-                                       if (strcmp(cmph_hash_names[i], optarg) == 0)
-                                       {
-                                               hashes = (CMPH_HASH *)realloc(hashes, sizeof(CMPH_HASH) * ( nhashes + 2 ));
-                                               hashes[nhashes] = i;
-                                               hashes[nhashes + 1] = CMPH_HASH_COUNT;
-                                               ++nhashes;
-                                               valid = 1;
-                                               break;
-                                       }
-                               }
-                               if (!valid) 
-                               {
-                                       fprintf(stderr, "Invalid hash function: %s\n", optarg);
-                                       return -1;
-                               }
-                               }
-                               break;
-                       default:
-                               usage(argv[0]);
-                               return 1;
-               }
-       }
-
-       if (optind != argc - 1)
-       {
-               usage(argv[0]);
-               return 1;
-       }
-       keys_file = argv[optind];
-  
-       if (seed == UINT_MAX) seed = (cmph_uint32)time(NULL);
-       srand(seed);
-       int ret = 0;
-       if (mphf_file == NULL)
-       {
-               mphf_file = (char *)malloc(strlen(keys_file) + 5);
-               memcpy(mphf_file, keys_file, strlen(keys_file));
-               memcpy(mphf_file + strlen(keys_file), ".mph\0", (size_t)5);
-       }       
-
-       keys_fd = fopen(keys_file, "r");
-
-       if (keys_fd == NULL)
-       {
-               fprintf(stderr, "Unable to open file %s: %s\n", keys_file, strerror(errno));
-               return -1;
-       }
-
-       if (seed == UINT_MAX) seed = (cmph_uint32)time(NULL);
-       if(nkeys == UINT_MAX) source = cmph_io_nlfile_adapter(keys_fd);
-       else source = cmph_io_nlnkfile_adapter(keys_fd, nkeys);
-       if (generate)
-       {
-               //Create mphf
-               mphf_fd = fopen(mphf_file, "w");
-               config = cmph_config_new(source);
-               cmph_config_set_algo(config, mph_algo);
-               if (nhashes) cmph_config_set_hashfuncs(config, hashes);
-               cmph_config_set_verbosity(config, verbosity);
-               cmph_config_set_tmp_dir(config, (cmph_uint8 *) tmp_dir);
-               cmph_config_set_mphf_fd(config, mphf_fd);
-               cmph_config_set_memory_availability(config, memory_availability);
-               cmph_config_set_b(config, b);
-               cmph_config_set_keys_per_bin(config, keys_per_bin);
-               
-               //if((mph_algo == CMPH_BMZ || mph_algo == CMPH_BRZ) && c >= 2.0) c=1.15;
-               if(mph_algo == CMPH_BMZ  && c >= 2.0) c=1.15;
-               if (c != 0) cmph_config_set_graphsize(config, c);
-               mphf = cmph_new(config);
-
-               cmph_config_destroy(config);
-               if (mphf == NULL)
-               {
-                       fprintf(stderr, "Unable to create minimum perfect hashing function\n");
-                       //cmph_config_destroy(config);
-                       free(mphf_file);
-                       return -1;
-               }
-
-               if (mphf_fd == NULL)
-               {
-                       fprintf(stderr, "Unable to open output file %s: %s\n", mphf_file, strerror(errno));
-                       free(mphf_file);
-                       return -1;
-               }
-               cmph_dump(mphf, mphf_fd); 
-               cmph_destroy(mphf);     
-               fclose(mphf_fd);
-       }
-       else
-       {
-               cmph_uint8 * hashtable = NULL;
-               mphf_fd = fopen(mphf_file, "r");
-               if (mphf_fd == NULL)
-               {
-                       fprintf(stderr, "Unable to open input file %s: %s\n", mphf_file, strerror(errno));
-                       free(mphf_file);
-                       return -1;
-               }
-               mphf = cmph_load(mphf_fd);
-               fclose(mphf_fd);
-               if (!mphf)
-               {
-                       fprintf(stderr, "Unable to parser input file %s\n", mphf_file);
-                       free(mphf_file);
-                       return -1;
-               }
-               cmph_uint32 siz = cmph_size(mphf);
-               hashtable = (cmph_uint8*)calloc(siz, sizeof(cmph_uint8));
-               memset(hashtable, 0,(size_t) siz);
-               //check all keys
-               for (i = 0; i < source->nkeys; ++i)
-               {
-                       cmph_uint32 h;
-                       char *buf;
-                       cmph_uint32 buflen = 0;
-                       source->read(source->data, &buf, &buflen);
-                       h = cmph_search(mphf, buf, buflen);
-                       if (!(h < siz))
-                       {
-                               fprintf(stderr, "Unknown key %*s in the input.\n", buflen, buf);
-                               ret = 1;
-                       } else if(hashtable[h] >= keys_per_bin)
-                       {
-                               fprintf(stderr, "More than %u keys were mapped to bin %u\n", keys_per_bin, h);
-                               fprintf(stderr, "Duplicated or unknown key %*s in the input\n", buflen, buf);
-                               ret = 1;
-                       } else hashtable[h]++;
-
-                       if (verbosity)
-                       {
-                               printf("%s -> %u\n", buf, h);
-                       }
-                       source->dispose(source->data, buf, buflen);
-               }
-               
-               cmph_destroy(mphf);
-               free(hashtable);
-       }
-       fclose(keys_fd);
-       free(mphf_file);
-       free(tmp_dir);
-        cmph_io_nlfile_adapter_destroy(source);
-       return ret;
-  
-}
diff --git a/girepository/cmph/wingetopt.c b/girepository/cmph/wingetopt.c
deleted file mode 100644 (file)
index c981d0f..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-#ifdef WIN32
-/***************************************************************************** 
- * 
- *  MODULE NAME : GETOPT.C 
- * 
- *  COPYRIGHTS: 
- *             This module contains code made available by IBM 
- *             Corporation on an AS IS basis.  Any one receiving the 
- *             module is considered to be licensed under IBM copyrights 
- *             to use the IBM-provided source code in any way he or she 
- *             deems fit, including copying it, compiling it, modifying 
- *             it, and redistributing it, with or without 
- *             modifications.  No license under any IBM patents or 
- *             patent applications is to be implied from this copyright 
- *             license. 
- * 
- *             A user of the module should understand that IBM cannot 
- *             provide technical support for the module and will not be 
- *             responsible for any consequences of use of the program. 
- * 
- *             Any notices, including this one, are not to be removed 
- *             from the module without the prior written consent of 
- *             IBM. 
- * 
- *  AUTHOR:   Original author: 
- *                 G. R. Blair (BOBBLAIR at AUSVM1) 
- *                 Internet: bobblair@bobblair.austin.ibm.com 
- * 
- *            Extensively revised by: 
- *                 John Q. Walker II, Ph.D. (JOHHQ at RALVM6) 
- *                 Internet: johnq@ralvm6.vnet.ibm.com 
- * 
- *****************************************************************************/ 
-/****************************************************************************** 
- * getopt() 
- * 
- * The getopt() function is a command line parser.  It returns the next 
- * option character in argv that matches an option character in opstring. 
- * 
- * The argv argument points to an array of argc+1 elements containing argc 
- * pointers to character strings followed by a null pointer. 
- * 
- * The opstring argument points to a string of option characters; if an 
- * option character is followed by a colon, the option is expected to have 
- * an argument that may or may not be separated from it by white space. 
- * The external variable optarg is set to point to the start of the option 
- * argument on return from getopt(). 
- * 
- * The getopt() function places in optind the argv index of the next argument 
- * to be processed.  The system initializes the external variable optind to 
- * 1 before the first call to getopt(). 
- * 
- * When all options have been processed (that is, up to the first nonoption 
- * argument), getopt() returns EOF.  The special option "--" may be used to 
- * delimit the end of the options; EOF will be returned, and "--" will be 
- * skipped. 
- * 
- * The getopt() function returns a question mark (?) when it encounters an 
- * option character not included in opstring.  This error message can be 
- * disabled by setting opterr to zero.  Otherwise, it returns the option 
- * character that was detected. 
- * 
- * If the special option "--" is detected, or all options have been 
- * processed, EOF is returned. 
- * 
- * Options are marked by either a minus sign (-) or a slash (/). 
- * 
- * No errors are defined. 
- *****************************************************************************/ 
-
-#include <stdio.h>                  /* for EOF */ 
-#include <string.h>                 /* for strchr() */ 
-
-/* static (global) variables that are specified as exported by getopt() */ 
-extern char *optarg;    /* pointer to the start of the option argument  */ 
-extern int   optind;       /* number of the next argv[] to be evaluated    */ 
-extern int   opterr;       /* non-zero if a question mark should be returned 
-                           when a non-valid option character is detected */ 
-/* handle possible future character set concerns by putting this in a macro */ 
-#define _next_char(string)  (char)(*(string+1)) 
-int getopt(int argc, char *argv[], char *opstring) 
-{ 
-    static char *pIndexPosition = NULL; /* place inside current argv string */ 
-    char *pArgString = NULL;        /* where to start from next */ 
-    char *pOptString;               /* the string in our program */ 
-    if (pIndexPosition != NULL) { 
-        /* we last left off inside an argv string */ 
-        if (*(++pIndexPosition)) { 
-            /* there is more to come in the most recent argv */ 
-            pArgString = pIndexPosition; 
-        } 
-    } 
-    if (pArgString == NULL) { 
-        /* we didn't leave off in the middle of an argv string */ 
-        if (optind >= argc) { 
-            /* more command-line arguments than the argument count */ 
-            pIndexPosition = NULL;  /* not in the middle of anything */ 
-            return EOF;             /* used up all command-line arguments */ 
-        } 
-        /*--------------------------------------------------------------------- 
-         * If the next argv[] is not an option, there can be no more options. 
-         *-------------------------------------------------------------------*/ 
-        pArgString = argv[optind++]; /* set this to the next argument ptr */ 
-        if (('/' != *pArgString) && /* doesn't start with a slash or a dash? */ 
-            ('-' != *pArgString)) { 
-            --optind;               /* point to current arg once we're done */ 
-            optarg = NULL;          /* no argument follows the option */ 
-            pIndexPosition = NULL;  /* not in the middle of anything */ 
-            return EOF;             /* used up all the command-line flags */ 
-        } 
-        /* check for special end-of-flags markers */ 
-        if ((strcmp(pArgString, "-") == 0) || 
-            (strcmp(pArgString, "--") == 0)) { 
-            optarg = NULL;          /* no argument follows the option */ 
-            pIndexPosition = NULL;  /* not in the middle of anything */ 
-            return EOF;             /* encountered the special flag */ 
-        } 
-        pArgString++;               /* look past the / or - */ 
-    } 
-    if (':' == *pArgString) {       /* is it a colon? */ 
-        /*--------------------------------------------------------------------- 
-         * Rare case: if opterr is non-zero, return a question mark; 
-         * otherwise, just return the colon we're on. 
-         *-------------------------------------------------------------------*/ 
-        return (opterr ? (int)'?' : (int)':'); 
-    } 
-    else if ((pOptString = strchr(opstring, *pArgString)) == 0) { 
-        /*--------------------------------------------------------------------- 
-         * The letter on the command-line wasn't any good. 
-         *-------------------------------------------------------------------*/ 
-        optarg = NULL;              /* no argument follows the option */ 
-        pIndexPosition = NULL;      /* not in the middle of anything */ 
-        return (opterr ? (int)'?' : (int)*pArgString); 
-    } 
-    else { 
-        /*--------------------------------------------------------------------- 
-         * The letter on the command-line matches one we expect to see 
-         *-------------------------------------------------------------------*/ 
-        if (':' == _next_char(pOptString)) { /* is the next letter a colon? */ 
-            /* It is a colon.  Look for an argument string. */ 
-            if ('\0' != _next_char(pArgString)) {  /* argument in this argv? */ 
-                optarg = &pArgString[1];   /* Yes, it is */ 
-            } 
-            else { 
-                /*------------------------------------------------------------- 
-                 * The argument string must be in the next argv. 
-                 * But, what if there is none (bad input from the user)? 
-                 * In that case, return the letter, and optarg as NULL. 
-                 *-----------------------------------------------------------*/ 
-                if (optind < argc) 
-                    optarg = argv[optind++]; 
-                else { 
-                    optarg = NULL; 
-                    return (opterr ? (int)'?' : (int)*pArgString); 
-                } 
-            } 
-            pIndexPosition = NULL;  /* not in the middle of anything */ 
-        } 
-        else { 
-            /* it's not a colon, so just return the letter */ 
-            optarg = NULL;          /* no argument follows the option */ 
-            pIndexPosition = pArgString;    /* point to the letter we're on */ 
-        } 
-        return (int)*pArgString;    /* return the letter that matched */ 
-    } 
-} 
-
-#endif //WIN32
diff --git a/girepository/cmph/wingetopt.h b/girepository/cmph/wingetopt.h
deleted file mode 100644 (file)
index 9596853..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#ifndef WIN32
-       #include <getopt.h>
-#else
-       #ifndef _GETOPT_
-       #define _GETOPT_
-
-       #include <stdio.h>                  /* for EOF */ 
-       #include <string.h>                 /* for strchr() */ 
-
-       char *optarg = NULL;    /* pointer to the start of the option argument  */ 
-       int   optind = 1;       /* number of the next argv[] to be evaluated    */ 
-       int   opterr = 1;       /* non-zero if a question mark should be returned */
-
-       int getopt(int argc, char *argv[], char *opstring); 
-       #endif //_GETOPT_
-#endif //WIN32
-
-#ifdef __cplusplus
-}
-#endif
-
index 053fd34..d8102a2 100644 (file)
@@ -339,7 +339,7 @@ gi_function_invoker_new_for_address (void               *addr,
 
   return ffi_prep_cif (&(invoker->cif), FFI_DEFAULT_ABI, n_args,
                        gi_callable_info_get_ffi_return_type (info),
-                       atypes) == FFI_OK;
+                       g_steal_pointer (&atypes)) == FFI_OK;
 }
 
 /**
@@ -409,10 +409,15 @@ gi_callable_info_create_closure (GICallableInfo       *callable_info,
   status = ffi_prep_cif (cif, FFI_DEFAULT_ABI, n_args,
                          gi_callable_info_get_ffi_return_type (callable_info),
                          atypes);
+
+  /* Explicitly store atypes to satisfy static analysers, which can’t see inside
+   * ffi_prep_cif(), and hence assume that it’s leaked. */
+  cif->arg_types = g_steal_pointer (&atypes);
+
   if (status != FFI_OK)
     {
       g_warning ("ffi_prep_cif failed: %d", status);
-      ffi_closure_free (closure);
+      gi_callable_info_destroy_closure (callable_info, &closure->ffi_closure);
       return NULL;
     }
 
@@ -420,7 +425,7 @@ gi_callable_info_create_closure (GICallableInfo       *callable_info,
   if (status != FFI_OK)
     {
       g_warning ("ffi_prep_closure failed: %d", status);
-      ffi_closure_free (closure);
+      gi_callable_info_destroy_closure (callable_info, &closure->ffi_closure);
       return NULL;
     }
 
index 647cf24..c80574f 100644 (file)
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
+#include <time.h>       /* For time_t */
+#include <sys/types.h>  /* For off_t on both Unix and Windows */
+
+#ifdef G_OS_UNIX
+#include <sys/socket.h> /* For socklen_t */
+#endif
 
 /* This is a "major" version in the sense that it's only bumped
  * for incompatible changes.
@@ -448,19 +454,40 @@ typedef struct {
   unsigned int is_signed : 1;
 } IntegerAliasInfo;
 
+/*
+ * signedness:
+ * @T: a numeric type
+ *
+ * Returns: 1 if @T is signed, 0 if it is unsigned
+ */
+#define signedness(T) (((T) -1) <= 0)
+G_STATIC_ASSERT (signedness (int) == 1);
+G_STATIC_ASSERT (signedness (unsigned int) == 0);
+
 static IntegerAliasInfo integer_aliases[] = {
-  { "gchar",    SIZEOF_CHAR,      1 },
-  { "guchar",   SIZEOF_CHAR,      0 },
-  { "gshort",   SIZEOF_SHORT,     1 },
-  { "gushort",  SIZEOF_SHORT,     0 },
-  { "gint",     SIZEOF_INT,       1 },
-  { "guint",    SIZEOF_INT,       0 },
-  { "glong",    SIZEOF_LONG,      1 },
-  { "gulong",   SIZEOF_LONG,      0 },
-  { "gssize",   GLIB_SIZEOF_SIZE_T,    1 },
-  { "gsize",    GLIB_SIZEOF_SIZE_T,    0 },
-  { "gintptr",  GLIB_SIZEOF_SIZE_T,    1 },
-  { "guintptr", GLIB_SIZEOF_SIZE_T,    0 },
+  { "gchar",    sizeof (gchar),   1 },
+  { "guchar",   sizeof (guchar),  0 },
+  { "gshort",   sizeof (gshort),  1 },
+  { "gushort",  sizeof (gushort), 0 },
+  { "gint",     sizeof (gint),    1 },
+  { "guint",    sizeof (guint),   0 },
+  { "glong",    sizeof (glong),   1 },
+  { "gulong",   sizeof (gulong),  0 },
+  { "gssize",   sizeof (gssize),  1 },
+  { "gsize",    sizeof (gsize),   0 },
+  { "gintptr",  sizeof (gintptr),      1 },
+  { "guintptr", sizeof (guintptr),     0 },
+#define INTEGER_ALIAS(T) { #T, sizeof (T), signedness (T) }
+  INTEGER_ALIAS (off_t),
+  INTEGER_ALIAS (time_t),
+#ifdef G_OS_UNIX
+  INTEGER_ALIAS (dev_t),
+  INTEGER_ALIAS (gid_t),
+  INTEGER_ALIAS (pid_t),
+  INTEGER_ALIAS (socklen_t),
+  INTEGER_ALIAS (uid_t),
+#endif
+#undef INTEGER_ALIAS
 };
 
 typedef struct {
index f96cae4..9008975 100644 (file)
@@ -342,6 +342,10 @@ g_bit_unlock (volatile gint *address,
   g_atomic_int_and (address_nonvolatile, ~mask);
 #endif
 
+  /* Warning: unlocking may allow another thread to proceed and destroy the
+   * memory that @address points to. We thus must not dereference it anymore.
+   */
+
   {
     guint class = bit_lock_contended_class (address_nonvolatile);
 
@@ -599,6 +603,10 @@ void
     g_atomic_pointer_and (pointer_address, ~mask);
 #endif
 
+    /* Warning: unlocking may allow another thread to proceed and destroy the
+     * memory that @address points to. We thus must not dereference it anymore.
+     */
+
     {
       guint class = bit_lock_contended_class (address_nonvolatile);
 
index 0ddd532..d2ef460 100644 (file)
@@ -1812,6 +1812,8 @@ do_posix_spawn (const gchar * const *argv,
 
   duped_source_fds = g_new (gint, n_fds);
   for (i = 0; i < n_fds; i++)
+    duped_source_fds[i] = -1;  /* initialise in case dupfd_cloexec() fails below */
+  for (i = 0; i < n_fds; i++)
     {
       duped_source_fds[i] = dupfd_cloexec (source_fds[i], max_target_fd + 1);
       if (duped_source_fds[i] < 0)
index b39acc4..a264353 100644 (file)
@@ -1092,7 +1092,6 @@ g_get_num_processors (void)
     return count;
 #elif defined(_SC_NPROCESSORS_ONLN) && defined(THREADS_POSIX) && defined(HAVE_PTHREAD_GETAFFINITY_NP)
   {
-    int idx;
     int ncores = MIN (sysconf (_SC_NPROCESSORS_ONLN), CPU_SETSIZE);
     cpu_set_t cpu_mask;
     CPU_ZERO (&cpu_mask);
@@ -1100,8 +1099,7 @@ g_get_num_processors (void)
     int af_count = 0;
     int err = pthread_getaffinity_np (pthread_self (), sizeof (cpu_mask), &cpu_mask);
     if (!err)
-      for (idx = 0; idx < ncores && idx < CPU_SETSIZE; ++idx)
-        af_count += CPU_ISSET (idx, &cpu_mask);
+      af_count = CPU_COUNT (&cpu_mask);
 
     int count = (af_count > 0) ? af_count : ncores;
     return count;
index 4e4a73a..9a2975b 100644 (file)
@@ -762,7 +762,8 @@ gvs_variable_sized_array_get_child (GVariantSerialised value,
    * Don’t bother checking if the highest known-good offset is lower than the
    * highest checked offset, as that means there’s an invalid element at that
    * index, so there’s no need to check further. */
-  if (index_ > value.checked_offsets_up_to &&
+  if (offsets.array != NULL &&
+      index_ > value.checked_offsets_up_to &&
       value.ordered_offsets_up_to == value.checked_offsets_up_to)
     {
       switch (offsets.offset_size)
index 651771b..ea99e1f 100644 (file)
@@ -3978,7 +3978,11 @@ g_variant_dict_new (GVariant *from_asv)
 {
   GVariantDict *dict;
 
-  dict = g_slice_alloc (sizeof (struct heap_dict));
+  /* We actually want to treat the allocation as a `struct heap_dict`, but the
+   * compiler will warn if it’s not at least as big as `struct GVariantDict`. */
+  G_STATIC_ASSERT (sizeof (GVariantDict) >= sizeof (struct heap_dict));
+
+  dict = g_malloc (sizeof (GVariantDict));
   g_variant_dict_init (dict, from_asv);
   GVHD(dict)->magic = GVHD_MAGIC;
   GVHD(dict)->ref_count = 1;
@@ -4331,7 +4335,7 @@ g_variant_dict_unref (GVariantDict *dict)
   if (--GVHD(dict)->ref_count == 0)
     {
       g_variant_dict_clear (dict);
-      g_slice_free (struct heap_dict, (struct heap_dict *) dict);
+      g_free_sized (dict, sizeof (GVariantDict));
     }
 }
 
index f6efc59..85f40d2 100644 (file)
@@ -141,9 +141,13 @@ glib_tests = {
   'spawn-singlethread' : {
     'dependencies' : [winsock2],
     'extra_programs' : ['test-spawn-echo'],
+    # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148
+    'can_fail' : host_system == 'gnu',
   },
   'spawn-test' : {
     'extra_programs' : host_machine.system() == 'windows' ? ['spawn-test-win32-gui'] : [],
+    # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148
+    'can_fail' : host_system == 'gnu',
   },
   'strfuncs' : {},
   'string' : {
index 7ec5902..9ebe362 100644 (file)
@@ -644,6 +644,9 @@ object_bit_unlock (GObject *object, guint lock_bit)
   _object_bit_is_locked = 0;
 #endif
 
+  /* Warning: after unlock, @object may be a dangling pointer (destroyed on
+   * another thread) and must not be touched anymore. */
+
   g_bit_unlock ((gint *) object_get_optional_flags_p (object), _OPTIONAL_BIT_LOCK);
 }
 
@@ -3949,25 +3952,68 @@ typedef struct {
   } toggle_refs[1];  /* flexible array */
 } ToggleRefStack;
 
-static GToggleNotify
-toggle_refs_get_notify_unlocked (GObject *object,
-                                 gpointer *out_data)
+G_ALWAYS_INLINE static inline gboolean
+toggle_refs_check_and_ref_or_deref (GObject *object,
+                                    gboolean is_ref,
+                                    gint *old_ref,
+                                    GToggleNotify *toggle_notify,
+                                    gpointer *toggle_data)
 {
-  ToggleRefStack *tstackptr;
+  const gint ref_curr = is_ref ? 1 : 2;
+  const gint ref_next = is_ref ? 2 : 1;
+  gboolean success;
 
-  if (!OBJECT_HAS_TOGGLE_REF (object))
-    return NULL;
+#if G_ENABLE_DEBUG
+  g_assert (ref_curr == *old_ref);
+#endif
+
+  *toggle_notify = NULL;
+  *toggle_data = NULL;
+
+  object_bit_lock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
+
+  /* @old_ref is mainly an (out) parameter. On failure to compare-and-exchange,
+   * we MUST return the new value which the caller will use for retry.*/
 
-  tstackptr = g_datalist_id_get_data (&object->qdata, quark_toggle_refs);
+  success = g_atomic_int_compare_and_exchange_full ((int *) &object->ref_count,
+                                                    ref_curr,
+                                                    ref_next,
+                                                    old_ref);
 
-  if (tstackptr->n_toggle_refs != 1)
+  /* Note that if we are called during g_object_unref (@is_ref set to FALSE),
+   * then we drop the ref count from 2 to 1 and give up our reference. We thus
+   * no longer hold a strong reference and another thread may race against
+   * destroying the object.
+   *
+   * After this point with is_ref=FALSE and success=TRUE, @object must no
+   * longer be accessed.
+   *
+   * The exception is here. While we still hold the object lock, we know that
+   * @object could not be destroyed, because g_object_unref() also needs to
+   * acquire the same lock during g_object_notify_queue_freeze(). Thus, we know
+   * object cannot yet be destroyed and we can access it until the unlock
+   * below. */
+
+  if (success && OBJECT_HAS_TOGGLE_REF (object))
     {
-      g_critical ("Unexpected number of toggle-refs. g_object_add_toggle_ref() must be paired with g_object_remove_toggle_ref()");
-      return NULL;
+      ToggleRefStack *tstackptr;
+
+      tstackptr = g_datalist_id_get_data (&object->qdata, quark_toggle_refs);
+
+      if (tstackptr->n_toggle_refs != 1)
+        {
+          g_critical ("Unexpected number of toggle-refs. g_object_add_toggle_ref() must be paired with g_object_remove_toggle_ref()");
+        }
+      else
+        {
+          *toggle_notify = tstackptr->toggle_refs[0].notify;
+          *toggle_data = tstackptr->toggle_refs[0].data;
+        }
     }
 
-  *out_data = tstackptr->toggle_refs[0].data;
-  return tstackptr->toggle_refs[0].notify;
+  object_bit_unlock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
+
+  return success;
 }
 
 /**
@@ -4148,15 +4194,8 @@ retry:
     }
   else if (old_ref == 1)
     {
-      gboolean do_retry;
-
       /* With ref count 1, check whether we need to emit a toggle notification. */
-      object_bit_lock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
-      toggle_notify = toggle_refs_get_notify_unlocked (object, &toggle_data);
-      do_retry = !g_atomic_int_compare_and_exchange_full ((int *) &object->ref_count,
-                                                          old_ref, old_ref + 1, &old_ref);
-      object_bit_unlock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
-      if (do_retry)
+      if (!toggle_refs_check_and_ref_or_deref (object, TRUE, &old_ref, &toggle_notify, &toggle_data))
         goto retry;
     }
   else
@@ -4281,7 +4320,6 @@ g_object_unref (gpointer _object)
   GToggleNotify toggle_notify;
   gpointer toggle_data;
   GObjectNotifyQueue *nqueue;
-  gboolean do_retry;
   GType obj_gtype;
 
   g_return_if_fail (G_IS_OBJECT (object));
@@ -4330,18 +4368,8 @@ retry_beginning:
        *
        * We need to take a lock, to avoid races. */
 
-      object_bit_lock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
-
-      toggle_notify = toggle_refs_get_notify_unlocked (object, &toggle_data);
-
-      if (!g_atomic_int_compare_and_exchange_full ((int *) &object->ref_count,
-                                                   old_ref, old_ref - 1, &old_ref))
-        {
-          object_bit_unlock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
-          goto retry_beginning;
-        }
-
-      object_bit_unlock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
+      if (!toggle_refs_check_and_ref_or_deref (object, FALSE, &old_ref, &toggle_notify, &toggle_data))
+        goto retry_beginning;
 
       /* Beware: object might be a dangling pointer. */
       TRACE (GOBJECT_OBJECT_UNREF (object, obj_gtype, old_ref));
@@ -4374,6 +4402,10 @@ retry_beginning:
    * notifications. If the instance gets through to finalize(), the
    * notification queue gets automatically drained when g_object_finalize() is
    * reached and the qdata is cleared.
+   *
+   * Important: Note that g_object_notify_queue_freeze() takes a object_bit_lock(),
+   * which happens to be the same lock that is also taken by toggle_refs_check_and_ref(),
+   * that is very important. See also the code comment in toggle_refs_check_and_ref().
    */
   nqueue = g_object_notify_queue_freeze (object);
 
@@ -4425,14 +4457,7 @@ retry_decrement:
        * notification. Take a lock and check for that.
        *
        * In that case, we need a lock to get the toggle notification. */
-      object_bit_lock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
-      toggle_notify = toggle_refs_get_notify_unlocked (object, &toggle_data);
-      do_retry = !g_atomic_int_compare_and_exchange_full ((int *) &object->ref_count,
-                                                          old_ref, old_ref - 1,
-                                                          &old_ref);
-      object_bit_unlock (object, OPTIONAL_BIT_LOCK_TOGGLE_REFS);
-
-      if (do_retry)
+      if (!toggle_refs_check_and_ref_or_deref (object, FALSE, &old_ref, &toggle_notify, &toggle_data))
         goto retry_decrement;
 
       /* Beware: object might be a dangling pointer. */
index cf50df7..12a8124 100644 (file)
@@ -1018,7 +1018,7 @@ param_value_array_validate (GParamSpec *pspec,
   guint changed = 0;
 
   if (!value->data[0].v_pointer && aspec->fixed_n_elements)
-    value->data[0].v_pointer = g_value_array_new (aspec->fixed_n_elements);
+    value_array = value->data[0].v_pointer = g_value_array_new (aspec->fixed_n_elements);
 
   if (value->data[0].v_pointer)
     {
index 713c1d7..a163e5f 100644 (file)
@@ -84,7 +84,10 @@ gobject_tests = {
   'bindinggroup' : {},
   'properties' : {},
   'properties-introspection' : {},
-  'reference' : {},
+  'reference' : {
+    # FIXME: https://gitlab.gnome.org/GNOME/glib/-/issues/3148
+    'can_fail' : host_system == 'gnu',
+  },
   'flags' : {},
   'value' : {},
   'type' : {},
diff --git a/gobject/tests/performance/performance-run.sh b/gobject/tests/performance/performance-run.sh
new file mode 100755 (executable)
index 0000000..3bc64a9
--- /dev/null
@@ -0,0 +1,224 @@
+#!/bin/bash
+
+# Copyright (C) 2024 Red Hat, Inc.
+#
+# SPDX-License-Identifier: LGPL-2.1-or-later
+
+# Run ./build/gobject/tests/performance/performance for several commits
+# and compare the result.
+#
+# Howto:
+#
+# 1) configure the build. For example run
+#     $ git clean -fdx
+#     $ meson build -Dprefix=/tmp/glib/ -Db_lto=true --buildtype release -Ddebug=true
+#    Beware, that running the script will check out other commits,
+#    build the tree and run `ninja install`. Don't have important
+#    work there.
+#
+# 2) run the script. Set $COMMITS to the list of commit sha's to test.
+#    Environment variables:
+#      COMMITS: list of git references to test.
+#      PATCH: if set, after checking out each commit, run `git cherry-pick $PATCH`
+#        before building.
+#      PREPARE_CMD: if set, invoke $PREPARE_CMD after checking out commit. Can be used
+#        to patch the sources.
+#      PERF: if set, run performance test via perf. Set for example, `PERF="perf stat -r 10 -B"`
+#        When setting `PERF`, you probably also want to set GLIB_PERFORMANCE_FACTOR,
+#        which depends on the test (run the test in verbose mode to find a suitable factor).
+#      STRIP: if set to 1, call `strip` on the library and binary before running.
+#   Arguments: arguments are directly passed to performance. For example try "-s 1".
+#
+# Example:
+#
+#    # once:
+#    git clean -fdx
+#    meson build -Dprefix=/tmp/glib/ -Db_lto=true --buildtype release -Ddebug=true
+#
+#    # test:
+#    COMMIT_END=my-test-branch
+#    COMMIT_START="$(git merge-base origin/main "$COMMIT_END")"
+#    PERF="" PATCH="" COMMITS=" $COMMIT_START $COMMIT_END " /tmp/performance-run.sh -s 5
+#    PERF="" PATCH="" COMMITS=" $COMMIT_START $( git log --reverse --pretty=%H "$COMMIT_START..$COMMIT_END" ) " /tmp/performance-run.sh -s 5
+#
+#    GLIB_PERFORMANCE_FACTOR=17.06 PERF='perf stat -r 3 -B' PATCH="" COMMITS=" $COMMIT_START $COMMIT_END " /tmp/performance-run.sh -s 1 property-get
+
+set -e
+
+usage() {
+    sed -n '4,/^$/ s/^#\( \(.*\)\|\)$/\2/p' "$0"
+}
+
+if [ "$#" -eq 1 ] && [ "$1" == "-h" ] ; then
+    usage
+    exit 0
+fi
+
+die() {
+    printf "%s\n" "$*"
+    exit 1
+}
+
+die_with_last_cmd() {
+    cat /tmp/glib-performance-last-cmd || :
+    die "$@"
+}
+
+read -ra COMMITS_V -d '' <<<"$COMMITS" || :
+
+[ "${#COMMITS_V[@]}" -gt 0 ] || die "Must set \$COMMITS"
+
+COMMITS_SHA=()
+for commit in "${COMMITS_V[@]}" ; do
+    c="$(git rev-parse --verify "$commit^{commit}")" || die "invalid git reference \"$commit\""
+    COMMITS_SHA+=( "$c" )
+done
+
+_list_commits() {
+    local PREFIX="$1"
+    local idx
+    local I
+
+    I=0
+    for idx in "${!COMMITS_V[@]}" ; do
+        I=$((I+1))
+        echo "${PREFIX}[$I] $(git log -n1 --oneline "${COMMITS_SHA[$idx]}") (${COMMITS_V[$idx]})"
+    done
+}
+
+cat << EOF
+
+Testing commits:
+
+$(_list_commits "    ")
+
+  \$ meson build -Dprefix=/tmp/glib/ -Db_lto=true --buildtype release -Ddebug=true
+  \$ PATCH=$(printf '%q' "$PATCH") \\
+    PREPARE_CMD=$(printf '%q' "$PREPARE_CMD") \\
+    PERF=$(printf '%q' "$PERF") \\
+    GLIB_PERFORMANCE_FACTOR=$(printf '%q' "$GLIB_PERFORMANCE_FACTOR") \\
+    STRIP=$(printf '%q' "$STRIP") \\
+    COMMITS=$(printf '%q' "$COMMITS") \\
+       $0$(printf ' %q' "$@")
+
+EOF
+
+_get_timing() {
+    local LINE_NUM="$1"
+    local LINE_PREFIX="$2"
+    local FILE="$3"
+
+    sed -n "$LINE_NUM s/^$LINE_PREFIX: //p" "$FILE"
+}
+
+_perc() {
+    awk -v n1="$1" -v n2="$2" 'BEGIN { printf("%+0.3g%\n", (n2 - n1) / n1 * 100.0); }'
+}
+
+_cmd() {
+    # printf '   $' ; printf ' %s' "$@" ; printf '\n'
+    "$@"
+}
+
+
+I=0
+for idx in "${!COMMITS_V[@]}" ; do
+    commit="${COMMITS_V[$idx]}"
+    commit_sha="${COMMITS_SHA[$idx]}"
+    I=$((I+1))
+    echo -n ">>> [$I] test [ $(git log -n1 --oneline "$commit") ]"
+    git checkout -f "$commit_sha" &> /tmp/glib-performance-last-cmd || (echo ...; die_with_last_cmd "Failure to checkout \"$commit\"")
+    touch glib/gdataset.c gobject/gobject.c gobject/tests/performance/performance.c
+    if [ "$PATCH" != "" ] ; then
+        read -ra PATCH_ARR -d '' <<<"$PATCH" || :
+        for p in "${PATCH_ARR[@]}" ; do
+            git cherry-pick "$p" &> /tmp/glib-performance-last-cmd || (echo ...; die_with_last_cmd "Failure to cherry-pick \"$PATCH\"")
+        done
+    fi
+    if [ "$PREPARE_CMD" != "" ] ; then
+        I="$I" COMMIT="$commit" "$PREPARE_CMD" &> /tmp/glib-performance-last-cmd || (echo ...; die_with_last_cmd "\$PREPARE_CMD failed")
+    fi
+    echo " commit $(git rev-parse --verify HEAD) > /tmp/glib-performance-output.$I"
+    ( ninja -C build || ninja -C build ) &> /tmp/glib-performance-last-cmd || die_with_last_cmd "Failure to build with \`ninja -C build\`"
+    ninja -C build install &> /tmp/glib-performance-last-cmd || die_with_last_cmd "FAilure to install with \`ninja -C build install\`"
+    if [ "$STRIP" = 1 ] ; then
+        strip ./build/gobject/libgobject-2.0.so ./build/glib/libglib-2.0.so.0 ./build/gobject/tests/performance/performance
+    fi
+
+    # ls -lad -L \
+    #     ./build/gobject/libgobject-2.0.so \
+    #     ./build/glib/libglib-2.0.so \
+    #     ./build/gobject/tests/performance/performance
+    # ldd ./build/gobject/tests/performance/performance
+
+    (
+        if [ -z "$PERF" ] ; then
+            TESTRUN="$I" TESTCOMMIT="$commit" ./build/gobject/tests/performance/performance "$@"
+        else
+            TESTRUN="$I" TESTCOMMIT="$commit" $PERF ./build/gobject/tests/performance/performance "$@"
+        fi
+    ) |& tee "/tmp/glib-performance-output.$I" || :
+    [ "${PIPESTATUS[0]}" -eq 0 ] || die "Performance test failed"
+done
+
+merge_output() {
+    (
+        declare -A RES
+        LINE_NUM=0
+        OLD_IFS="$IFS"
+        while IFS=$'\n' read -r LINE ; do
+            LINE="${LINE:1}"
+            LINE_NUM=$((LINE_NUM+1))
+            line_regex='^([a-zA-Z0-9].*): +([0-9.]+)$'
+
+            if [[ "$LINE" =~ $line_regex ]] ; then
+                LINE_PREFIX="${BASH_REMATCH[1]}"
+                T1="${BASH_REMATCH[2]}"
+                echo -n "$LINE_PREFIX: $T1"
+                RES["$LINE_PREFIX"]="${RES[$LINE_PREFIX]} $T1"
+                for J in $(seq 2 "${#COMMITS_V[@]}") ; do
+                    T="$(_get_timing "$LINE_NUM" "$LINE_PREFIX" "/tmp/glib-performance-output.$J")"
+                    echo -n "  $T ($(_perc "$T1" "$T"))"
+                    RES["$LINE_PREFIX"]="${RES[$LINE_PREFIX]} $T"
+                done
+                echo
+                continue
+            fi
+            if [ -n "$PERF" ] ; then
+                if [[ "$LINE" == *"seconds time elapsed"* ]] ; then
+                    echo "[1] $LINE"
+                    for J in $(seq 2 "${#COMMITS_V[@]}") ; do
+                        echo "[$J] $(sed -n "$LINE_NUM s/seconds time elapsed/\\0/p" "/tmp/glib-performance-output.$J")"
+                    done
+                    continue
+                fi
+            fi
+            echo "$LINE"
+        done < <( sed 's/^/x/' "/tmp/glib-performance-output.1" )
+
+        IFS="$OLD_IFS"
+        if [ -n "$PERF" ] ; then
+            for LINE_PREFIX in "${!RES[@]}"; do
+                # The values are interleaved. To cumbersome to process in bash.
+                read -ra T -d '' <<<"${RES[$LINE_PREFIX]}" || :
+                read -ra T_SORTED -d '' < <(printf '%s\n' "${T[@]}" | awk -v C="${#COMMITS_V[@]}" '{ print (1 + (NR-1) % C) " " $0 }' | sort -n -s | sed 's/^[0-9]\+ *//' ) || :
+                NGROUP="$(( "${#T_SORTED[@]}" / "${#COMMITS_V[@]}" ))"
+                echo -n "$LINE_PREFIX: "
+                SEP=''
+                for J in $(seq 0 "${#T_SORTED[@]}") ; do
+                    echo -n "$SEP${T_SORTED[$J]}"
+                    if [ $(( (J+1) % NGROUP )) = 0 ]; then
+                        echo -n "  ;  "
+                        SEP=''
+                    else
+                        SEP=" , "
+                    fi
+                done
+                echo
+            done
+        fi
+    ) | tee "/tmp/glib-performance-output.all"
+}
+
+echo ">>> combined result > /tmp/glib-performance-output.all"
+merge_output
index e8ad391..eb2cfb5 100644 (file)
@@ -22,6 +22,7 @@
 #include "../testcommon.h"
 
 #define WARM_UP_N_RUNS 50
+#define WARM_UP_ALWAYS_SEC 2.0
 #define ESTIMATE_ROUND_TIME_N_RUNS 5
 #define DEFAULT_TEST_TIME 15 /* seconds */
  /* The time we want each round to take, in seconds, this should
 #define TARGET_ROUND_TIME 0.008
 
 static gboolean verbose = FALSE;
+static gboolean quiet = FALSE;
 static int test_length = DEFAULT_TEST_TIME;
+static double test_factor = 0;
+static GTimer *global_timer = NULL;
 
 static GOptionEntry cmd_entries[] = {
   {"verbose", 'v', 0, G_OPTION_ARG_NONE, &verbose,
    "Print extra information", NULL},
+  {"quiet", 'q', 0, G_OPTION_ARG_NONE, &quiet,
+   "Print extra information", NULL},
   {"seconds", 's', 0, G_OPTION_ARG_INT, &test_length,
    "Time to run each test in seconds", NULL},
+  {"factor", 'f', 0, G_OPTION_ARG_DOUBLE, &test_factor,
+   "Use a fixed factor for sample runs (also $GLIB_PERFORMANCE_FACTOR)", NULL},
   G_OPTION_ENTRY_NULL
 };
 
@@ -69,7 +77,8 @@ run_test (PerformanceTest *test)
   double elapsed, min_elapsed, max_elapsed, avg_elapsed, factor;
   GTimer *timer;
 
-  g_print ("Running test %s\n", test->name);
+  if (verbose || !quiet)
+    g_print ("Running test %s\n", test->name);
 
   /* Set up test */
   timer = g_timer_new ();
@@ -81,11 +90,43 @@ run_test (PerformanceTest *test)
   g_timer_start (timer);
 
   /* Warm up the test by doing a few runs */
-  for (i = 0; i < WARM_UP_N_RUNS; i++)
+  for (i = 0; TRUE; i++)
     {
       test->init (test, data, 1.0);
       test->run (test, data);
       test->finish (test, data);
+
+      if (test_factor > 0)
+        {
+          /* The caller specified a constant factor. That makes mostly
+           * sense, to ensure that the test run is independent from
+           * external factors. In this case, don't make warm up dependent
+           * on WARM_UP_ALWAYS_SEC. */
+        }
+      else if (global_timer)
+        {
+          if (g_timer_elapsed (global_timer, NULL) < WARM_UP_ALWAYS_SEC)
+            {
+              /* We always warm up for a certain time where we keep the
+               * CPU busy.
+               *
+               * Note that when we run multiple tests, then this is only
+               * performed once for the first test. */
+              continue;
+            }
+          g_clear_pointer (&global_timer, g_timer_destroy);
+        }
+
+      if (i >= WARM_UP_N_RUNS)
+        break;
+
+      if (test_factor == 0 && g_timer_elapsed (timer, NULL) > test_length / 10)
+        {
+          /* The warm up should not take longer than 10 % of the entire
+           * test run. Note that the warm up time for WARM_UP_ALWAYS_SEC
+           * already passed. */
+          break;
+        }
     }
 
   g_timer_stop (timer);
@@ -97,24 +138,32 @@ run_test (PerformanceTest *test)
       g_print ("Estimating round time\n");
     }
 
-  /* Estimate time for one run by doing a few test rounds */
   min_elapsed = 0;
-  for (i = 0; i < ESTIMATE_ROUND_TIME_N_RUNS; i++)
-    {
-      test->init (test, data, 1.0);
-      g_timer_start (timer);
-      test->run (test, data);
-      g_timer_stop (timer);
-      test->finish (test, data);
 
-      elapsed = g_timer_elapsed (timer, NULL);
-      if (i == 0)
-       min_elapsed = elapsed;
-      else
-       min_elapsed = MIN (min_elapsed, elapsed);
+  if (test_factor > 0)
+    {
+      factor = test_factor;
     }
+  else
+    {
+      /* Estimate time for one run by doing a few test rounds. */
+      for (i = 0; i < ESTIMATE_ROUND_TIME_N_RUNS; i++)
+        {
+          test->init (test, data, 1.0);
+          g_timer_start (timer);
+          test->run (test, data);
+          g_timer_stop (timer);
+          test->finish (test, data);
+
+          elapsed = g_timer_elapsed (timer, NULL);
+          if (i == 0)
+            min_elapsed = elapsed;
+          else
+            min_elapsed = MIN (min_elapsed, elapsed);
+        }
 
-  factor = TARGET_ROUND_TIME / min_elapsed;
+      factor = TARGET_ROUND_TIME / min_elapsed;
+    }
 
   if (verbose)
     g_print ("Uncorrected round time: %.4f msecs, correction factor %.2f\n", 1000*min_elapsed, factor);
@@ -127,7 +176,7 @@ run_test (PerformanceTest *test)
 
   /* Run the test */
   avg_elapsed = 0.0;
-  min_elapsed = 0.0;
+  min_elapsed = 1e100;
   max_elapsed = 0.0;
   for (i = 0; i < num_rounds; i++)
     {
@@ -136,16 +185,18 @@ run_test (PerformanceTest *test)
       test->run (test, data);
       g_timer_stop (timer);
       test->finish (test, data);
-      elapsed = g_timer_elapsed (timer, NULL);
 
-      if (i == 0)
-       max_elapsed = min_elapsed = avg_elapsed = elapsed;
-      else
+      if (i < num_rounds / 20)
         {
-          min_elapsed = MIN (min_elapsed, elapsed);
-          max_elapsed = MAX (max_elapsed, elapsed);
-          avg_elapsed += elapsed;
+          /* The first 5% are additional warm up. Ignore. */
+          continue;
         }
+
+      elapsed = g_timer_elapsed (timer, NULL);
+
+      min_elapsed = MIN (min_elapsed, elapsed);
+      max_elapsed = MAX (max_elapsed, elapsed);
+      avg_elapsed += elapsed;
     }
 
   if (num_rounds > 1)
@@ -159,6 +210,7 @@ run_test (PerformanceTest *test)
     }
 
   /* Print the results */
+  g_print ("%s: ", test->name);
   test->print_result (test, data, min_elapsed);
 
   /* Tear down */
@@ -1087,6 +1139,12 @@ test_set_setup (PerformanceTest *test)
   data = g_new0 (struct SetTest, 1);
   data->object = g_object_new (COMPLEX_TYPE_OBJECT, NULL);
 
+  /* g_object_get() will take a reference. Increasing the ref count from 1 to 2
+   * is more expensive, due to the check for toggle notifications. We have a
+   * performance test for that already. Don't also test that overhead during
+   * "property-get" test and avoid this by taking an additional reference. */
+  g_object_ref (data->object);
+
   return data;
 }
 
@@ -1124,6 +1182,7 @@ test_set_teardown (PerformanceTest *test,
   struct SetTest *data = _data;
 
   g_object_unref (data->object);
+  g_object_unref (data->object);
   g_free (data);
 }
 
@@ -1158,6 +1217,12 @@ test_get_setup (PerformanceTest *test)
   data = g_new0 (struct GetTest, 1);
   data->object = g_object_new (COMPLEX_TYPE_OBJECT, NULL);
 
+  /* g_object_get() will take a reference. Increasing the ref count from 1 to 2
+   * is more expensive, due to the check for toggle notifications. We have a
+   * performance test for that already. Don't also test that overhead during
+   * "property-get" test and avoid this by taking an additional reference. */
+  g_object_ref (data->object);
+
   return data;
 }
 
@@ -1195,6 +1260,7 @@ test_get_teardown (PerformanceTest *test,
   struct GetTest *data = _data;
 
   g_object_unref (data->object);
+  g_object_unref (data->object);
   g_free (data);
 }
 
@@ -1207,8 +1273,16 @@ test_get_teardown (PerformanceTest *test,
 struct RefcountTest {
   GObject *object;
   int n_checks;
+  gboolean is_toggle_ref;
 };
 
+static void
+test_refcount_toggle_ref_cb (gpointer data,
+                             GObject *object,
+                             gboolean is_last_ref)
+{
+}
+
 static gpointer
 test_refcount_setup (PerformanceTest *test)
 {
@@ -1217,6 +1291,13 @@ test_refcount_setup (PerformanceTest *test)
   data = g_new0 (struct RefcountTest, 1);
   data->object = g_object_new (COMPLEX_TYPE_OBJECT, NULL);
 
+  if (g_str_equal (test->name, "refcount-toggle"))
+    {
+      g_object_add_toggle_ref (data->object, test_refcount_toggle_ref_cb, NULL);
+      g_object_unref (data->object);
+      data->is_toggle_ref = TRUE;
+    }
+
   return data;
 }
 
@@ -1255,6 +1336,21 @@ test_refcount_run (PerformanceTest *test,
 }
 
 static void
+test_refcount_1_run (PerformanceTest *test,
+                     gpointer _data)
+{
+  struct RefcountTest *data = _data;
+  GObject *object = data->object;
+  int i;
+
+  for (i = 0; i < data->n_checks; i++)
+    {
+      g_object_ref (object);
+      g_object_unref (object);
+    }
+}
+
+static void
 test_refcount_finish (PerformanceTest *test,
                       gpointer _data)
 {
@@ -1276,7 +1372,11 @@ test_refcount_teardown (PerformanceTest *test,
 {
   struct RefcountTest *data = _data;
 
-  g_object_unref (data->object);
+  if (data->is_toggle_ref)
+    g_object_remove_toggle_ref (data->object, test_refcount_toggle_ref_cb, NULL);
+  else
+    g_object_unref (data->object);
+
   g_free (data);
 }
 
@@ -1524,7 +1624,27 @@ static PerformanceTest tests[] = {
     test_refcount_finish,
     test_refcount_teardown,
     test_refcount_print_result
-  }
+  },
+  {
+    "refcount-1",
+    NULL,
+    test_refcount_setup,
+    test_refcount_init,
+    test_refcount_1_run,
+    test_refcount_finish,
+    test_refcount_teardown,
+    test_refcount_print_result
+  },
+  {
+    "refcount-toggle",
+    NULL,
+    test_refcount_setup,
+    test_refcount_init,
+    test_refcount_1_run,
+    test_refcount_finish,
+    test_refcount_teardown,
+    test_refcount_print_result
+  },
 };
 
 static PerformanceTest *
@@ -1545,8 +1665,14 @@ main (int   argc,
   PerformanceTest *test;
   GOptionContext *context;
   GError *error = NULL;
+  const char *str;
   int i;
 
+  if ((str = g_getenv ("GLIB_PERFORMANCE_FACTOR")) && str[0])
+    {
+      test_factor = g_strtod (str, NULL);
+    }
+
   context = g_option_context_new ("GObject performance tests");
   g_option_context_add_main_entries (context, cmd_entries, NULL);
   if (!g_option_context_parse (context, &argc, &argv, &error))
@@ -1555,6 +1681,14 @@ main (int   argc,
       return 1;
     }
 
+  if (test_factor < 0)
+    {
+      g_printerr ("%s: test factor must be positive\n", argv[0]);
+      return 1;
+    }
+
+  global_timer = g_timer_new ();
+
   if (argc > 1)
     {
       for (i = 1; i < argc; i++)
@@ -1572,5 +1706,6 @@ main (int   argc,
     }
 
   g_option_context_free (context);
+  g_clear_pointer (&global_timer, g_timer_destroy);
   return 0;
 }
index 7534542..55094c7 100644 (file)
@@ -1,5 +1,5 @@
 project('glib', 'c',
-  version : '2.80.0',
+  version : '2.80.1',
   # NOTE: See the policy in docs/meson-version.md before changing the Meson dependency
   meson_version : '>= 1.2.0',
   default_options : [
index c74c06d..931de96 100644 (file)
@@ -48,6 +48,7 @@ is
 it
 ja
 ka
+kab
 kk
 kn
 ko
index fe3dd55..51accbf 100644 (file)
--- a/po/cs.po
+++ b/po/cs.po
 # Jakub Friedl <jfriedl@suse.cz>, 2006, 2007.
 # Petr Kovar <pknbe@volny.cz>, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015.
 # Marek Černocký <marek@manet.cz>, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023.
-# Vojtěch Perník <translations@pervoj.cz>, 2023.
+# Vojtěch Perník <translations@pervoj.cz>, 2023-2024.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
-"POT-Creation-Date: 2024-02-27 09:41+0000\n"
-"PO-Revision-Date: 2024-02-28 00:02+0100\n"
+"POT-Creation-Date: 2024-03-17 02:48+0000\n"
+"PO-Revision-Date: 2024-03-18 12:32+0100\n"
 "Last-Translator: Daniel Rusek <mail@asciiwolf.com>\n"
 "Language-Team: Czech <gnome-cs-list@gnome.org>\n"
 "Language: cs\n"
@@ -136,7 +136,7 @@ msgid "APPID"
 msgstr "IDAPLIKACE"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:259
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "PŘÍKAZ"
 
@@ -148,11 +148,13 @@ msgstr "Příkaz, ke kterému vypsat podrobnou nápovědu"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Identifikátor aplikace ve formátu D-Bus (např. org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
 #: gio/gresource-tool.c:504 gio/gresource-tool.c:570
 #: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
-#: girepository/decompiler/decompiler.c:51
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "SOUBOR"
 
@@ -773,72 +775,51 @@ msgstr "V cestě „%s“ objekt neexistuje"
 #, c-format
 msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
 msgstr ""
+"Zpráva %s: pole se záhlavím %s je neplatné; očekává se hodnota typu „%s“"
 
 #: gio/gdbusmessage.c:1374
-#, fuzzy, c-format
-#| msgid ""
-#| "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#, c-format
 msgid "%s message: %s header field is missing or invalid"
-msgstr ""
-"Zpráva METHOD_CALL: pole se záhlavím PATH nebo MEMBER schází nebo je neplatné"
+msgstr "Zpráva %s: pole se záhlavím %s chybí, nebo je neplatné"
 
 #: gio/gdbusmessage.c:1413
 #, c-format
 msgid "%s message: INVALID header field supplied"
-msgstr ""
+msgstr "Zpráva %s: dodáno pole se záhlavím INVALID"
 
 #: gio/gdbusmessage.c:1424
-#, fuzzy, c-format
-#| msgid ""
-#| "SIGNAL message: The PATH header field is using the reserved value /org/"
-#| "freedesktop/DBus/Local"
+#, c-format
 msgid ""
 "%s message: PATH header field is using the reserved value /org/freedesktop/"
 "DBus/Local"
 msgstr ""
-"Zpráva SIGNAL: pole se záhlavím PATH používá rezervovanou hodnotu /org/"
+"Zpráva %s: pole se záhlavím PATH používá rezervovanou hodnotu /org/"
 "freedesktop/DBus/Local"
 
 #: gio/gdbusmessage.c:1437
-#, fuzzy, c-format
-#| msgid ""
-#| "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or "
-#| "invalid"
+#, c-format
 msgid ""
 "%s message: INTERFACE header field does not contain a valid interface name"
-msgstr ""
-"Zpráva SIGNAL: pole se záhlavím PATH, INTERFACE nebo MEMBER schází nebo je "
-"neplatné"
+msgstr "Zpráva %s: pole se záhlavím INTERFACE neobsahuje platný název rozhraní"
 
 #: gio/gdbusmessage.c:1446
-#, fuzzy, c-format
-#| msgid ""
-#| "SIGNAL message: The INTERFACE header field is using the reserved value "
-#| "org.freedesktop.DBus.Local"
+#, c-format
 msgid ""
 "%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
 msgstr ""
-"Zpráva SIGNAL: pole se záhlavím INTERFACE používá rezervovanou hodnotu org."
+"Zpráva %s: pole se záhlavím INTERFACE používá rezervovanou hodnotu org."
 "freedesktop.DBus.Local"
 
 #: gio/gdbusmessage.c:1459
-#, fuzzy, c-format
-#| msgid ""
-#| "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#, c-format
 msgid "%s message: MEMBER header field does not contain a valid member name"
-msgstr ""
-"Zpráva METHOD_CALL: pole se záhlavím PATH nebo MEMBER schází nebo je neplatné"
+msgstr "Zpráva %s: pole se záhlavím MEMBER neobsahuje platný název členu"
 
 #: gio/gdbusmessage.c:1472
-#, fuzzy, c-format
-#| msgid ""
-#| "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or "
-#| "invalid"
+#, c-format
 msgid "%s message: ERROR_NAME header field does not contain a valid error name"
-msgstr ""
-"Zpráva ERROR: pole se záhlavím REPLY_SERIAL nebo ERROR_NAME schází nebo je "
-"neplatné"
+msgstr "Zpráva %s: pole se záhlavím ERROR_NAME neobsahuje platný název chyby"
 
 #: gio/gdbusmessage.c:1511
 msgid "type is INVALID"
@@ -1126,6 +1107,10 @@ msgstr "Připojit ke sběrnici sezení"
 msgid "Connect to given D-Bus address"
 msgstr "Připojit k dané adrese D-Bus"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADRESA"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Volby koncového bodu spojení:"
@@ -1510,10 +1495,9 @@ msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "Kopírování (reflink/clone) není podporováno nebo neproběhlo správně"
 
 #: gio/gfile.c:3384 gio/gfile.c:3395
-#, fuzzy, c-format
-#| msgid "Unset given attribute"
+#, c-format
 msgid "Cannot retrieve attribute %s"
-msgstr "Zrušit nastavení zadaného atributu"
+msgstr "Nezdařilo se získat atribut %s"
 
 #: gio/gfile.c:3415
 msgid "Can’t copy special file"
@@ -1523,7 +1507,7 @@ msgstr "Nelze kopírovat zvláštní soubor"
 msgid "Invalid symlink value given"
 msgstr "Zadaný symbolický odkaz je neplatný"
 
-#: gio/gfile.c:4342 glib/gfileutils.c:2404
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Symbolické odkazy nejsou podporovány"
 
@@ -1859,10 +1843,8 @@ msgid "Use default permissions for the destination"
 msgstr "Používat pro tento cíl výchozí oprávnění"
 
 #: gio/gio-tool-copy.c:53
-#, fuzzy
-#| msgid "Use default permissions for the destination"
 msgid "Use default file modification timestamps for the destination"
-msgstr "Používat pro tento cíl výchozí oprávnění"
+msgstr "Používat pro tento cíl výchozí časové údaje změny souboru"
 
 #: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
@@ -2539,7 +2521,8 @@ msgstr ""
 "aktuální složka)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "SLOŽKA"
 
@@ -2591,6 +2574,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Název identifikátoru C použitý ke generování zdrojového kódu"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFIKÁTOR"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Kompilátor C pro cíl (výchozí: proměnná prostředí CC)"
@@ -4533,28 +4520,25 @@ msgid "Wrong args\n"
 msgstr "Nesprávné argumenty\n"
 
 #: girepository/compiler/compiler.c:93
-#, fuzzy, c-format
-#| msgid "Failed to open file “%s”: %s"
+#, c-format
 msgid "Failed to open ‘%s’: %s"
-msgstr "Nelze otevřít soubor „%s“: %s"
+msgstr "Nelze otevřít „%s“: %s"
 
 #: girepository/compiler/compiler.c:103
-#, fuzzy, c-format
-#| msgid "Could not create network monitor: %s"
+#, c-format
 msgid "Error: Could not write the whole output: %s"
-msgstr "Nelze vytvořit sledování sítě: %s"
+msgstr "Chyba: Nezdařilo se zapsat celý výstup: %s"
 
 #: girepository/compiler/compiler.c:115
-#, fuzzy, c-format
-#| msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
+#, c-format
 msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
-msgstr "Nelze přejmenovat soubor „%s“ na „%s“: funkce g_rename() selhala: %s"
+msgstr "Chyba: Nelze přejmenovat soubor „%s“ na „%s“: %s"
 
-#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:52
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
 msgid "Include directories in GIR search path"
-msgstr ""
+msgstr "Zahrnout složky ve vyhledávací cestě GIR"
 
-#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:51
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
 msgid "Output file"
 msgstr "Výstupní soubor"
 
@@ -4570,83 +4554,71 @@ msgstr "Zobrazit ladicí zprávy"
 msgid "Show verbose messages"
 msgstr "Zobrazit podrobné zprávy"
 
-#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:54
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
 msgid "Show program’s version number and exit"
 msgstr "Zobrazit číslo verze programu a skončit"
 
-#: girepository/compiler/compiler.c:174
-#, fuzzy, c-format
-#| msgid "Error parsing parameter %d: %s\n"
+#: girepository/compiler/compiler.c:175
+#, c-format
 msgid "Error parsing arguments: %s"
-msgstr "Chyba při analyzování parametru %d: %s\n"
+msgstr "Chyba při analyzování parametrů: %s"
 
-#: girepository/compiler/compiler.c:201
+#: girepository/compiler/compiler.c:202
 msgid "Please specify exactly one input file"
 msgstr "Uveďte prosím přesně jeden vstupní soubor"
 
-#: girepository/compiler/compiler.c:217
-#, fuzzy, c-format
-#| msgid "Error opening file “%s”: %s"
+#: girepository/compiler/compiler.c:218
+#, c-format
 msgid "Error parsing file ‘%s’: %s"
-msgstr "Chyba při otevírání souboru %s: %s"
+msgstr "Chyba při načítání souboru „%s“: %s"
 
-#: girepository/compiler/compiler.c:242
-#, fuzzy, c-format
-#| msgid "Failed to load info for handler “%s”"
+#: girepository/compiler/compiler.c:243
+#, c-format
 msgid "Failed to build typelib for module ‘%s’"
-msgstr "Selhalo načtení informací pro obsluhu „%s“"
+msgstr "Selhalo sestavení typelib pro modul „%s“"
 
-#: girepository/compiler/compiler.c:244
-#, fuzzy, c-format
-#| msgid "Unable to load ‘%s‘: %s"
+#: girepository/compiler/compiler.c:245
+#, c-format
 msgid "Invalid typelib for module ‘%s’: %s"
-msgstr "Nezdařilo se načíst „%s“: %s"
+msgstr "Neplatný typelib pro modul „%s“: %s"
 
-#: girepository/decompiler/decompiler.c:53
-#, fuzzy
-#| msgid "Show extra information"
+#: girepository/decompiler/decompiler.c:54
 msgid "Show all available information"
-msgstr "Zobrazit doplňující informace"
+msgstr "Zobrazit všechny dostupné informace"
 
-#: girepository/decompiler/decompiler.c:67
-#, fuzzy, c-format
-#| msgid "Failed to fork (%s)"
+#: girepository/decompiler/decompiler.c:71
+#, c-format
 msgid "Failed to parse: %s"
-msgstr "Selhalo rozvětvení procesu (%s)"
+msgstr "Selhalo zpracování: %s"
 
-#: girepository/decompiler/decompiler.c:83
-#, fuzzy
-#| msgid "Show hidden files"
+#: girepository/decompiler/decompiler.c:87
 msgid "No input files"
-msgstr "Zobrazit skryté soubory"
+msgstr "Žádné vstupní soubory"
 
-#: girepository/decompiler/decompiler.c:109
-#, fuzzy, c-format
-#| msgid "Failed to create file “%s”: %s"
+#: girepository/decompiler/decompiler.c:113
+#, c-format
 msgid "Failed to read ‘%s’: %s"
-msgstr "Nelze vytvořit soubor „%s“: %s"
+msgstr "Chyba při čtení „%s“: %s"
 
-#: girepository/decompiler/decompiler.c:121
-#, fuzzy, c-format
-#| msgid "Failed to create file “%s”: %s"
+#: girepository/decompiler/decompiler.c:125
+#, c-format
 msgid "Failed to create typelib ‘%s’: %s"
-msgstr "Nelze vytvořit soubor „%s“: %s"
+msgstr "Nelze vytvořit typelib „%s“: %s"
 
-#: girepository/decompiler/decompiler.c:125
+#: girepository/decompiler/decompiler.c:129
 #: girepository/inspector/inspector.c:113
-#, fuzzy, c-format
-#| msgid "Failed to allocate memory"
+#, c-format
 msgid "Failed to load typelib: %s"
-msgstr "Nelze alokovat paměť"
+msgstr "Nelze načíst typelib: %s"
 
-#: girepository/decompiler/decompiler.c:132
+#: girepository/decompiler/decompiler.c:136
 #, c-format
 msgid "Warning: %u modules omitted"
-msgstr ""
+msgstr "Varování: %u modulů vynecháno"
 
 #: girepository/inspector/inspector.c:72
 msgid "Typelib version to inspect"
-msgstr ""
+msgstr "Verze typelib pro prozkoumání"
 
 #: girepository/inspector/inspector.c:72
 msgid "VERSION"
@@ -4654,41 +4626,36 @@ msgstr "VERZE"
 
 #: girepository/inspector/inspector.c:73
 msgid "List the shared libraries the typelib requires"
-msgstr ""
+msgstr "Vypsat sdílené knihovny, které tento typelib vyžaduje"
 
 #: girepository/inspector/inspector.c:74
 msgid "List other typelibs the inspected typelib requires"
-msgstr ""
+msgstr "Vypsat další soubory typelib, které zkoumaný typelib vyžaduje"
 
 #: girepository/inspector/inspector.c:75
-#, fuzzy
-#| msgid "The attributes to get"
 msgid "The typelib to inspect"
-msgstr "Atributy, které se mají vypsat"
+msgstr "Typelib pro prozkoumání"
 
 #: girepository/inspector/inspector.c:75
-#, fuzzy
-#| msgid "NAME"
 msgid "NAMESPACE"
-msgstr "NÁZEV"
+msgstr "JMENNÝ_PROSTOR"
 
 #: girepository/inspector/inspector.c:82
 msgid "- Inspect GI typelib"
-msgstr ""
+msgstr "- Prozkoumat typelib GI"
 
 #: girepository/inspector/inspector.c:86
-#, fuzzy, c-format
-#| msgid "Failed to read from file “%s”: %s"
+#, c-format
 msgid "Failed to parse command line options: %s"
-msgstr "Chyba při čtení ze souboru „%s“: %s"
+msgstr "Chyba při načítání parametrů příkazové řádky: %s"
 
 #: girepository/inspector/inspector.c:96
 msgid "Please specify exactly one namespace"
-msgstr ""
+msgstr "Prosím, specifikujte přesně jeden jmenný prostor"
 
 #: girepository/inspector/inspector.c:105
 msgid "Please specify --print-shlibs, --print-typelibs or both"
-msgstr ""
+msgstr "Prosím, specifikujte --print-shlibs, --print-typelibs nebo oba"
 
 #: glib/gbookmarkfile.c:816
 #, c-format
@@ -5239,12 +5206,10 @@ msgstr "Chyba při otevírání složky „%s“: %s"
 #. Translators: the first %s contains the file size
 #. * (already formatted with units), and the second %s
 #. * contains the file name
-#: glib/gfileutils.c:720
-#, fuzzy, c-format
-#| msgid "Could not allocate %lu byte to read file “%s”"
-#| msgid_plural "Could not allocate %lu bytes to read file “%s”"
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
+#, c-format
 msgid "Could not allocate %s to read file “%s”"
-msgstr "Nelze alokovat %lu bajtů k přečtení souboru „%s“"
+msgstr "Nelze alokovat %s k přečtení souboru „%s“"
 
 #: glib/gfileutils.c:738
 #, c-format
@@ -5256,77 +5221,67 @@ msgstr "Chyba čtení souboru „%s“: %s"
 msgid "File “%s” is too large"
 msgstr "Soubor „%s“ je příliš velký"
 
-#: glib/gfileutils.c:825
-#, fuzzy
-#| msgid "Could not connect: "
-msgid "Could not allocate %"
-msgid_plural "Could not allocate %"
-msgstr[0] "Nelze se připojit: "
-msgstr[1] "Nelze se připojit: "
-msgstr[2] "Nelze se připojit: "
-
-#: glib/gfileutils.c:850
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Chyba při čtení ze souboru „%s“: %s"
 
-#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1482
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Nelze otevřít soubor „%s“: %s"
 
-#: glib/gfileutils.c:913
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "Nelze získat atributy souboru „%s“: funkce fstat() selhala: %s"
 
-#: glib/gfileutils.c:944
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Nelze otevřít soubor „%s“: funkce fdopen() selhala: %s"
 
-#: glib/gfileutils.c:1045
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "Nelze přejmenovat soubor „%s“ na „%s“: funkce g_rename() selhala: %s"
 
-#: glib/gfileutils.c:1144
-#, fuzzy, c-format
-#| msgid "Failed to write file “%s”: write() failed: %s"
+#: glib/gfileutils.c:1149
+#, c-format
 msgid "Failed to write file “%s”: ftruncate() failed: %s"
-msgstr "Nelze zapisovat do souboru „%s“: funkce write() selhala: %s"
+msgstr "Nelze zapisovat do souboru „%s“: funkce ftruncate() selhala: %s"
 
-#: glib/gfileutils.c:1189
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Nelze zapisovat do souboru „%s“: funkce write() selhala: %s"
 
-#: glib/gfileutils.c:1210
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Nelze zapisovat do souboru „%s“: funkce fsync() selhala: %s"
 
-#: glib/gfileutils.c:1371 glib/gfileutils.c:1788
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Nelze vytvořit soubor „%s“: %s"
 
-#: glib/gfileutils.c:1416
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "Existující soubor „%s“ nelze odstranit: funkce g_unlink() selhala: %s"
 
-#: glib/gfileutils.c:1753
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Šablona „%s“ je neplatná, neměla by obsahovat „%s“"
 
-#: glib/gfileutils.c:1766
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Šablona „%s“ neobsahuje XXXXXX"
 
-#: glib/gfileutils.c:2360 glib/gfileutils.c:2389
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Nelze přečíst symbolický odkaz „%s“: %s"
@@ -6362,62 +6317,62 @@ msgstr "EiB"
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
 msgid "kbit"
-msgstr ""
+msgstr "kbit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
 msgid "Mbit"
-msgstr ""
+msgstr "Mbit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
 msgid "Gbit"
-msgstr ""
+msgstr "Gbit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
 msgid "Tbit"
-msgstr ""
+msgstr "Tbit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
 msgid "Pbit"
-msgstr ""
+msgstr "Pbit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
 msgid "Ebit"
-msgstr ""
+msgstr "Ebit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
 msgid "Kibit"
-msgstr ""
+msgstr "Kibit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
 msgid "Mibit"
-msgstr ""
+msgstr "Mibit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
 msgid "Gibit"
-msgstr ""
+msgstr "Gibit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
 msgid "Tibit"
-msgstr ""
+msgstr "Tibit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
 msgid "Pibit"
-msgstr ""
+msgstr "Pibit"
 
 #. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
 msgid "Eibit"
-msgstr ""
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6527,6 +6482,14 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#, fuzzy
+#~| msgid "Could not connect: "
+#~ msgid "Could not allocate %"
+#~ msgid_plural "Could not allocate %"
+#~ msgstr[0] "Nelze se připojit: "
+#~ msgstr[1] "Nelze se připojit: "
+#~ msgstr[2] "Nelze se připojit: "
+
 #~ msgid ""
 #~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
 #~ msgstr ""
index 860c079..34e1c11 100644 (file)
--- a/po/da.po
+++ b/po/da.po
@@ -1,5 +1,5 @@
 # Danish translation for glib.
-# Copyright (C) 2001-2019 Free Software Foundation, Inc.
+# Copyright (C) 2001-2019, 2024 Free Software Foundation, Inc.
 # This file is distributed under the same license as the glib package.
 #
 # Keld Simonsen <keld@dkuug.dk>, 2001.
@@ -8,13 +8,14 @@
 # Martin Willemoes Hansen <mwh@sysrq.dk>, 2004-2005.
 # Kenneth Nielsen <k.nielsen81@gmail.com>, 2011.
 # Joe Hansen <joedalton2@yahoo.dk>, 2013.
-# Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 08, 09, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20.
+# Ask Hjorth Larsen <asklarsen@gmail.com>, 2007, 08, 09, 10, 11, 12, 14, 15, 16, 17, 18, 19, 20, 2024.
 # Alan Mortensen <alanmortensen.am@gmail.com>, 2019, 2022.
 #
 # Konventioner:
 #
 # attribute -> attribut
 # header -> teksthoved
+# member -> komponent
 # message -> besked
 # message body -> beskedtekst
 # override (objektorienteret programmering) -> overskrive
@@ -27,9 +28,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: glib master\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-08-31 10:14+0000\n"
-"PO-Revision-Date: 2023-09-01 08:44+0200\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-03-01 12:22+0000\n"
+"PO-Revision-Date: 2024-03-12 22:52+0100\n"
 "Last-Translator: Alan Mortensen <alanmortensen.am@gmail.com>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
 "Language: da\n"
@@ -58,36 +59,40 @@ msgstr "Kunne ikke finde standardprogram til indholdstypen “%s”"
 msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr "Kunne ikke finde standardprogram til URI-skemaet “%s”"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "GApplication-indstillinger:"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Vis GApplication-indstillinger"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr "Indtast GApplication-tjenestetilstand (brug fra D-Bus-tjenestefiler)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Tilsidesæt programmets id"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Vis programversionen"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Erstat den kørende instans"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Udskriv hjælp"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[KOMMANDO]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Udskriv version"
 
@@ -141,7 +146,7 @@ msgid "APPID"
 msgstr "APPID"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "KOMMANDO"
 
@@ -153,9 +158,13 @@ msgstr "Kommandoen, der skal vises uddybende hjælp for"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Programidentifikator i D-Bus-format (f.eks. org.eksempel.fremviser)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "FIL"
 
@@ -179,7 +188,7 @@ msgstr "PARAMETER"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Valgfri parameter til handlingen i GVariant-format"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -193,12 +202,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Brug:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Argumenter:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[ARG …]"
 
@@ -291,78 +300,78 @@ msgstr ""
 "ukendt kommando: %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "For stor talværdi givet til %s"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Søgning understøttes ikke af basisstrømmen"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "Kan ikke afkorte GBufferedInputStream"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "Strømmen er allerede lukket"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "Afkortning understøttes ikke af basisstrømmen"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "Operationen blev afbrudt"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Ugyldigt objekt, ikke initialiseret"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Ufuldstændig flerbytesekvens i inddata"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Ikke nok plads på destinationen"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Ugyldig bytesekvens i konverteringsinddata"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Fejl under konvertering: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Initialisering med mulighed for afbrydelse understøttes ikke"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "Konvertering fra tegnsæt “%s” til “%s” er ikke understøttet"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Kunne ikke konvertere fra “%s” til “%s”"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "%s-type"
@@ -376,41 +385,41 @@ msgstr "Ukendt type"
 msgid "%s filetype"
 msgstr "%s-filtype"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials indeholder ugyldige data"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials er ikke implementeret på dette operativsystem"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Der er ingen understøttelse for GCredentials på din platform"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr "GCredentials indeholder ikke en proces-id på dette operativsystem"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr "Falske akkreditiver er ikke mulige på dette operativsystem"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "Uventet tidlig strømafslutning"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "Ikke-understøttet nøgle “%s” i adresseindgang “%s”"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr "Meningsløst nøgle-/værdikombination i adresseindgang “%s”"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -419,28 +428,28 @@ msgstr ""
 "Adressen “%s” er ugyldig (kræver præcist en af nøglerne path, dir, tmpdir "
 "eller abstract)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Fejl i adressen “%s” — attributten “%s” er fejlformateret"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Ukendt eller ikke-understøttet transport “%s” for adressen “%s”"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "Adresseelementet “%s” indeholder intet kolon (:)"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr "Transportnavn i adresseelementet “%s” må ikke være tomt"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -449,14 +458,14 @@ msgstr ""
 "Nøgle-/værdiparret %d, “%s” i adresseelementet “%s” indeholder ikke et "
 "lighedstegn"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
 msgstr ""
 "Nøgle-/værdiparret %d, “%s” i adresseelementet “%s” må ikke have en tom nøgle"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -465,7 +474,7 @@ msgstr ""
 "Fejl ved af-undvigelse af nøgle eller værdi i nøgle-/værdiparret %d, “%s” i "
 "adresseelementet “%s”"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -474,79 +483,79 @@ msgstr ""
 "Fejl i adressen “%s” — unix-transporten kræver at præcist en af nøglerne "
 "“path” eller “abstract” er givet"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr ""
 "Fejl i adressen “%s” — værtsattributten mangler eller er fejlformateret"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr "Fejl i adressen “%s” — portattributten mangler eller er fejlformateret"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Fejl i adressen “%s” — noncefile-attributten mangler eller er fejlformateret"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "Fejl ved automatisk opstart: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "Fejl ved åbning af “nonce”-filen “%s”: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Fejl ved læsning af “nonce”-filen “%s”: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr "Fejl ved læsning af “nonce”-filen “%s”. Forventede 16 byte, fandt %d"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr "Fejl under skrivning af indhold af “nonce”-filen “%s” til strømmen:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "Den givne adresse er tom"
 
 # nå ja, det er ikke grimmere på dansk end på engelsk
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr "Kan ikke starte en meddelelsesbus, når AT_SECURE er indstillet"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr "Kan ikke starte en meddelelsesbus uden maskine-id: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "Kan ikke køre D-Bus automatisk uden $DISPLAY til X11"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Fejl ved kørsel af kommandolinjen “%s”: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Kan ikke bestemme sessionsbussens adresse (ikke implementeret for dette "
 "operativsystem)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -555,7 +564,7 @@ msgstr ""
 "Kan ikke bestemme busadressen fra miljøvariablen DBUS_STARTER_BUS_TYPE — "
 "ukendt værdi “%s”"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -563,20 +572,20 @@ msgstr ""
 "Kan ikke bestemme busadressen, da miljøvariablen DBUS_STARTER_BUS_TYPE ikke "
 "er angivet"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Ukendt bustype %d"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Uventet mangel på indhold ved forsøg på at læse en linje"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr "Uventet mangel på indhold ved forsøg på (sikkert) at læse en linje"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -584,15 +593,15 @@ msgstr ""
 "Forsøgte alle tilgængelige godkendelsesmekanismer (forsøgt: %s) "
 "(tilgængelige: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Uventet mangel på indhold ved forsøg på at læse en byte"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr "Bruger-id'er skal være de samme for peer og server"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Annulleret via GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -614,13 +623,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Fejl ved oprettelse af mappen “%s”: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Operationen understøttes ikke"
 
@@ -685,15 +694,15 @@ msgstr "Fejl ved åbning af nøgleringen “%s” til skrivning: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(Yderligere kunne låsen for “%s” ikke opgives: %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "Forbindelsen er lukket"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "Tiden løb ud"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
@@ -784,65 +793,68 @@ msgstr "Der er allerede eksporteret et undertræ for %s"
 msgid "Object does not exist at path “%s”"
 msgstr "Objektet findes ikke ved stien “%s”"
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "typen er INVALID"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
-msgstr ""
-"Meddelelse for METHOD_CALL: Et af teksthovederne PATH eller MEMBER mangler "
-"eller er ugyldigt"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
+msgstr "%s-meddelelse: Teksthovedet %s er ugyldigt; forventede en værdi af typen “%s”"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr ""
-"Meddelelse for METHOD_RETURN: Teksthovedet REPLY_SERIAL mangler eller er "
-"ugyldigt"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "%s-meddelelse: Teksthovedet %s mangler eller er ugyldigt"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr ""
-"FEJL-meddelelse: Teksthovedet REPLY_SERIAL eller ERROR_NAME mangler eller er "
-"ugyldigt"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "%s-meddelelse: UGYLDIGT teksthoved givet"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
-msgstr ""
-"SIGNAL-meddelelse: Teksthovedet PATH, INTERFACE eller MEMBER mangler eller er "
-"ugyldigt"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
+msgstr "%s-meddelelse: Teksthovedet PATH bruger den reserverede værdi /org/freedesktop/DBus/Local"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
-msgstr ""
-"SIGNALmeddelelse: Teksthovedet PATH bruger den reserverede værdi /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
+msgstr "%s-meddelelse: Teksthovedet INTERFACE indeholder ikke et gyldigt grænsefladenavn"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
-"freedesktop.DBus.Local"
-msgstr ""
-"SIGNALbesked: Teksthovedet INTERFACE bruger den reserverede værdi org."
+"%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
+msgstr "%s-meddelelse: Teksthovedet INTERFACE bruger den reserverede værdi org.freedesktop.DBus.Local"
+
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr "%s-meddelelse: Teksthovedet MEMBER indeholder ikke et gyldigt komponentnavn"
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr "%s-meddelelse: Teksthovedet ERROR_NAME indeholder ikke et gyldigt fejlnavn"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "typen er INVALID"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
 msgstr[0] "Ville læse %lu byte men fik kun %lu"
 msgstr[1] "Ville læse %lu byte men fik kun %lu"
 
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr "Forventede NUL-byte efter strengen “%s”, men fandt byte %d"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -852,21 +864,21 @@ msgstr ""
 "(strengens længde er %d). Den gyldige UTF-8-streng indtil dette punkt var "
 "“%s”"
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Værdien er for dybt indlejret"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr "Den fortolkede værdi “%s” er ikke en gyldig objektsti til D-Bus"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "Fortolket værdi “%s” er ikke en gyldig D-Bus-signatur"
 
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -879,7 +891,7 @@ msgstr[1] ""
 "Stødte på et array med længde %u byte. Den maksimale længde er 2<<26 byte "
 "(64 MiB)."
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -888,16 +900,16 @@ msgstr ""
 "Stødte på et array af typen “a%c”, som ventes at have en længde som er et "
 "multiplum af %u byte, men som havde længde %u byte"
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Tomme strukturer (tupler) er ikke tilladte i D-Bus"
 
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr "Fortolket værdi “%s” for variant er ikke en gyldig D-Bus-signatur"
 
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -905,7 +917,7 @@ msgstr ""
 "Fejl ved deserialisering af GVariant med type-streng “%s” fra D-Bus-wire-"
 "formatet"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -914,38 +926,38 @@ msgstr ""
 "Ugyldigt værdi for byterækkefølge (endianness). Forventede 0x6c (“l”) eller "
 "0x42 (“B”), men fandt værdien 0x%02x"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr "Ugyldig hovedprotokolversion. Forventede 1 men fandt %d"
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "Signaturteksthoved fundet, men er ikke af typen signatur"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr ""
 "Signaturteksthoved med signaturen “%s” fundet, men beskedteksten er tom"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr "Fortolket værdi “%s” er ikke en gyldig D-Bus-signatur (for tekst)"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
 msgstr[0] "Intet signaturteksthoved i beskeden, men beskedteksten er %u byte"
 msgstr[1] "Intet signaturteksthoved i beskeden, men beskedteksten er %u byte"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Kan ikke deserialisere besked: "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -953,23 +965,23 @@ msgstr ""
 "Fejl ved serialisering af GVariant med typestreng “%s” til D-Bus-wire-"
 "formatet"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
 msgstr ""
 "Antal fildeskriptorer i meddelelsen (%d) er forskelligt fra teksthovedet (%d)"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Kan ikke serialisere besked: "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr "Beskedteksten har signatur “%s”, men der er intet signaturteksthoved"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -977,17 +989,17 @@ msgid ""
 msgstr ""
 "Beskedteksten har typesignatur “%s”, men signaturen i teksthovedet er “%s”"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr "Beskedteksten er tom, men signaturen i teksthovedet er “(%s)”"
 
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Fejlagtig returværdi med beskedtekst af typen “%s”"
 
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Fejlagtig returværdi - tom beskedtekst"
 
@@ -1007,23 +1019,23 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Kan ikke hente hardwareprofil: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "Kan ikke indlæse %s eller %s: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Fejl ved kald til StartServiceByName for %s: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Uventet svar %d fra metoden StartServiceByName(“%s”)"
 
 # Ved ikke helt hvad proxy dækker over her
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1032,25 +1044,25 @@ msgstr ""
 "Kan ikke kalde metode; proxy er for et velkendt navn %s uden ejer, og proxy "
 "blev konstrueret med flaget G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "Abstrakt navnerum understøttes ikke"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr "Kan ikke angive “nonce”-fil ved oprettelse af server"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "Fejl ved skrivning af “nonce”-fil i “%s”: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "Strengen “%s” er ikke en gyldig D-Bus-GUID"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "Kan ikke lytte på ikke-understøttet transport “%s”"
@@ -1113,6 +1125,10 @@ msgstr "Forbind til sessionsbussen"
 msgid "Connect to given D-Bus address"
 msgstr "Forbind til den givne D-Bus-adresse"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADRESSE"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Tilvalg for forbindelsesslutpunkt:"
@@ -1341,71 +1357,72 @@ msgstr "Fejl: %s er ikke et gyldigt velkendt busnavn.\n"
 msgid "Not authorized to change debug settings"
 msgstr "Ikke godkendt til at ændre fejlsøgningsindstillinger"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Unavngivet"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "Skrivebordsfil angav intet Exec-felt"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Kan ikke finde terminal krævet af dette program"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Programmet “%s” blev ikke fundet i $PATH"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr "Kan ikke oprette konfigurationsfolder %s for brugerprogram: %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr "Kan ikke oprette bruger-MIME-konfigurationsfolder %s: %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "Programinformation mangler en identifikator"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Kan ikke oprette brugerskrivebords-fil %s"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Tilpasset definition for %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "drevet implementerer ikke eject"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "drevet implementerer ikke eject eller eject_with_operation"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "drevet implementerer ikke forespørgsel om medier"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "drevet implementerer ikke start"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "drevet implementerer ikke stop"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "TLS-motor implementerer ikke hentning af TLS-bindinger"
 
@@ -1418,27 +1435,27 @@ msgstr "TLS-understøttelse er ikke tilgængelig"
 msgid "DTLS support is not available"
 msgstr "DTLS-understøttelse er ikke tilgængelig"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Kan ikke håndtere version %d af GEmblem-kodning"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Forkert antal symboler (%d) i GEmblem-kodning"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Kan ikke håndtere version %d af GEmblemIcon-kodning"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Forkert antal symboler (%d) i GEmblemedIcon-kodning"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Forventede et GEmblem til GEmblemedIcon"
 
@@ -1446,131 +1463,136 @@ msgstr "Forventede et GEmblem til GEmblemedIcon"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "Indeholdende montering findes ikke"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Kan ikke kopiere over mappe"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Kan ikke kopiere mappe over mappe"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Målfilen findes"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Kan ikke kopiere mappe rekursivt"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "Filintervalskopiering understøttes ikke"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Fejl ved splejsning af fil: %s"
 
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "Splejsning understøttes ikke"
 
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr "Kopiering (reflink/klon) mellem monteringer understøttes ikke"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "Kopiering (reflink/klon) er ikke understøttet eller ugyldigt"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "Kopiering (reflink/klon) er ikke understøttet eller virkede ikke"
 
-#: gio/gfile.c:3395
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Kan ikke hente attributten %s"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Kan ikke kopiere specialfil"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Ugyldig værdi givet for symlink"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Symbolske links er ikke understøttet"
 
 # I koden er det en funktion der hedder g_file_trash, som kan give dette som en fejlmeddelelse
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "Flyt til papirkurv understøttes ikke"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "Filnavne må ikke indeholder “%c”"
 
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr "Kunne ikke oprette en midlertidig mappe til skabelonen “%s”: %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "diskenheden implementerer ikke montering"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Intet program er registreret til håndtering af denne fil"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "Optæller er lukket"
 
 # udviklerkommentar ved tilsvarende streng andetsteds i filen forklarer dette
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "Filoptæller arbejder stadig"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "Filoptæller er allerede lukket"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Kan ikke håndtere version %d af GFileIcon-kodning"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Fejlformateret inddata til GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Strømmen understøtter ikke query_info"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Søgning understøttes ikke på strømmen"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "Afkortning tillades ikke for inputstrømmen"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "Afkortning understøttes ikke på strømmen"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Ugyldigt værtsnavn"
 
@@ -1603,65 +1625,65 @@ msgstr "HTTP-proxysvaret er for stort"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "HTTP-proxyserveren lukkede uventet forbindelsen."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Forkert antal tegn (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Ingen type til klassenavn %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "Typen %s implementerer ikke GIcon-grænsefladen"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "Typen %s har ingen klasse"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Fejlformateret versionsnummer %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr ""
 "Typen %s implementerer ikke from_tokens(), som er del af GIcon-grænsefladen"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Kan ikke håndtere den givne version af ikonkodningen"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Ingen adresse angivet"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "Længden %u er for stor til adressen"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "Adressen har bit sat ud over præfikslængden"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "Kunne ikke fortolke “%s” som en IP-adresse-maske"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Utilstrækkelig plads til sokkeladresse"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Sokkeladresse understøttes ikke"
 
@@ -1675,7 +1697,7 @@ msgstr "Inputstrøm implementerer ikke læsning"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "Strøm arbejder stadig"
 
@@ -1691,7 +1713,7 @@ msgstr "Behold med fil ved flytning"
 msgid "“version” takes no arguments"
 msgstr "“version” tager ikke nogen argumenter"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Brug:"
 
@@ -1699,79 +1721,79 @@ msgstr "Brug:"
 msgid "Print version information and exit."
 msgstr "Udskriv versionsoplysninger og afslut."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Kommandoer:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Sammenkæd filer til standardoutput"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Kopiér en eller flere filer"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Vis oplysninger om steder"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Start et program fra en skrivebordsfil"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Vis indholdet af steder"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Hent eller sæt håndtering til en mimetype"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Opret mapper"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Overvåg ændringer af filer og mapper"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Montér eller afmontér stederne"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Flyt en eller flere filer"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Åbn filer med standardprogrammet"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Omdøb en fil"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Slet en eller flere filer"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Læs fra standardinput og gem"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Sæt en filattribut"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Flyt filer eller mapper til papirkurv"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Viser indholdet af stederne i et træ"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Kommandoer:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "Brug %s for at få uddybende hjælp.\n"
@@ -1781,7 +1803,7 @@ msgid "Error writing to stdout"
 msgstr "Fejl under skrivning til stdout"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1804,60 +1826,64 @@ msgstr ""
 "stedet for lokale filer. For eksempel kan du bruge noget i stil med\n"
 "smb://server/ressource/fil.txt som sted."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Ingen steder givet"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Ingen målmappe"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Vis fremgang"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Spørg før overskrivning"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Behold alle attributter"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Sikkerhedskopiér eksisterende destinationsfiler"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Følg aldrig symbolske links"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Brug standardrettigheder for destinationen"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr "Brug standardtidsstempler for filændringer på destinationen"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "Overførte %s ud af %s (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "KILDE"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "DESTINATION"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Kopiér en eller flere filer fra KILDE til DESTINATION."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1867,12 +1893,12 @@ msgstr ""
 "stedet for lokale filer. For eksempel kan du bruge noget i stil med\n"
 "smb://server/ressource/fil.txt som sted."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "Destinationen %s er ikke en mappe"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: overskriv “%s”? "
@@ -1913,52 +1939,52 @@ msgstr "visningsnavn: %s\n"
 msgid "edit name: %s\n"
 msgstr "redigeringsnavn: %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "navn: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "type: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "størrelse: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "skjult\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "uri: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "lokal sti: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "unix-montering: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Attributter som kan ændres:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Navnerum for attributter som kan ændres:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Vis oplysninger om steder."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2520,7 +2546,8 @@ msgstr ""
 "nuværende katalog)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "KATALOG"
 
@@ -2571,6 +2598,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "C-identifikatornavn, der bruges til genereret kildekode"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFIKATOR"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Mål-C-kompileren (standard: CC-miljøvariablen)"
@@ -3082,124 +3113,124 @@ msgstr "Fejl ved hentning af filsysteminfo for %s: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "Indeholdende montering for filen %s blev ikke fundet"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Kan ikke omdøbe rodmappen"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Fejl ved omdøbning af filen %s: %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Kan ikke omdøbe fil, da filnavnet allerede findes"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Ugyldigt filnavn"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Fejl ved åbning af filen %s: %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Fejl under fjernelse af filen %s: %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Fejl ved flytning af filen %s til papirkurv: %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Kan ikke oprette papirkurvskatalog %s: %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr "Kan ikke finde topniveau-katalog til papirkurv %s"
 
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr "Papirkurv understøttes ikke på interne systemmonteringer"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr "Kan ikke finde eller oprette papirkurvskatalog %s til papirkurv %s"
 
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "Kan ikke oprette papirkurvs-infofil for %s: %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr "Kan ikke smide filen %s ud på andet filsystem"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Kan ikke smide filen %s ud: %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Kan ikke smide filen %s ud"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Fejl ved oprettelse af mappen %s: %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "Filsystemet understøtter ikke symbolske links"
 
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Fejl under oprettelse af symbolsk link %s: %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Fejl ved flytning af filen %s: %s"
 
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Kan ikke flytte mappe over mappe"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "Oprettelse af sikkerhedskopi mislykkedes"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Fejl ved fjernelse af målfil: %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Flytning mellem monteringer understøttes ikke"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Kunne ikke bestemme diskforbruget af %s: %s"
@@ -3221,119 +3252,119 @@ msgstr "Ugyldigt udvidet attributnavn"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Fejl ved indstilling af udvidet attribut “%s”: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (ugyldig kodning)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Fejl ved indhentning af oplysninger om filen “%s”: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "Fejl ved indhentning af oplysninger om fildeskriptor: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Ugyldig attributtype (uint32 forventet)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Ugyldig attributtype (uint64 forventet)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Ugyldig attributtype (byte-streng forventet)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "Kan ikke ændre rettigheder på symlinks"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Fejl ved ændring af rettigheder: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Fejl ved ændring af ejer: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "symlink må ikke være NULL"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Fejl ved manipulation af symlink: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr "Fejl ved manipulation af symlink: filen er ikke et symlink"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr "Antal ekstra nanosekunder %d for UNIX-tidsstempel %lld er negativt"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr ""
 "Antal ekstra nanosekunder %d for UNIX-tidsstempel %lld når op på 1 sekund"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "UNIX-tidsstempel %lld passer ikke ind i 64 bit"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr ""
 "UNIX-tidsstempel %lld ligger uden for intervallet, som understøttes af "
 "Windows"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "Filnavnet “%s” kan ikke konverteres til UTF-16"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "Filen “%s” kan ikke åbnes: Windowsfejl %lu"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr ""
 "Fejl ved ændring af tidspunkt for ændring eller tilgang for filen “%s”: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "Fejl ved ændring af tidspunkt for ændring eller tilgang: %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "SELinux-kontekst skal være forskellig fra NULL"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "SELinux er ikke aktiveret på dette system"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Fejl ved ændring af SELinux-kontekst: %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "Indstilling af attributten %s understøttes ikke"
@@ -3386,7 +3417,7 @@ msgid "Error truncating file: %s"
 msgstr "Fejl ved afkortning af filen: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Fejl ved åbning af filen “%s”: %s"
@@ -3408,27 +3439,27 @@ msgstr "Filen blev ændret eksternt"
 msgid "Error removing old file: %s"
 msgstr "Fejl under fjernelse af gammel fil: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "Ugyldig GSeekType angivet"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Ugyldig søgeforespørgsel"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "Kan ikke afkorte GMemoryInputStream"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Hukommelses-uddatastrøm kan ikke ændre størrelse"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Kunne ikke ændre størrelse for hukommelses-uddatastrøm"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3436,32 +3467,32 @@ msgstr ""
 "Mængden af hukommelse, der kræves af skrivningen, er større end det "
 "tilgængelige adresserum"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Forespurgte om søgning før begyndelse af strøm"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Forespurgte om søgning efter afslutning af strøm"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "monteringsobjekt implementerer ikke “unmount”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "monteringsobjekt implementerer ikke “eject”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "monteringsobjekt implementerer ikke “unmount” eller “unmount_with_operation”"
@@ -3469,7 +3500,7 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr ""
 "monteringsobjekt implementerer ikke “eject” eller “eject_with_operation”"
@@ -3477,34 +3508,34 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "monteringsobjekt implementerer ikke “remount”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "monteringsobjekt implementerer ikke gæt på indholdstype"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr "monteringsobjekt implementerer ikke synkrone gæt på indholdstype"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Værtsnavnet “%s” indeholder “[”, men ikke “]”"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Netværket kan ikke nås"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Værten kan ikke nås"
 
@@ -3532,7 +3563,7 @@ msgstr "Netværkshåndtering kører ikke"
 msgid "NetworkManager version too old"
 msgstr "Versionen af NetværksHåndtering er for gammel"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Uddatastrøm implementerer ikke write"
 
@@ -3545,38 +3576,38 @@ msgstr "Summen af vektorer givet til %s er for stor"
 msgid "Source stream is already closed"
 msgstr "Kildestrømmen er allerede lukket"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Uspecificeret fejl under opslag af proxy"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Fejl ved opløsning af “%s”: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s er ikke implementeret"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Ugyldigt domæne"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "Ressourcen på “%s” findes ikke"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "Ressourcen på “%s” kunne ikke udpakkes"
@@ -3594,11 +3625,11 @@ msgstr "Ressourcen i “%s” er ikke et katalog"
 msgid "Input stream doesn’t implement seek"
 msgstr "Inputstrømmen implementerer ikke søgning"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Vis sektioner, der indeholder ressourcer, i en elf-FIL"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3608,15 +3639,15 @@ msgstr ""
 "Hvis SEKTION er givet, så vis kun ressourcer i denne sektion\n"
 "Hvis STI er givet, så vis kun matchende ressourcer"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "FIL [STI]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SEKTION"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3628,15 +3659,15 @@ msgstr ""
 "Hvis STI er givet, så vis kun matchende ressourcer\n"
 "Detaljerne inkluderer sektion, størrelse og komprimering"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Udskriv en ressourcefil til stdout"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "FILSTI"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3664,7 +3695,7 @@ msgstr ""
 "Brug “gresource help KOMMANDO” til at få uddybende hjælp.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3679,19 +3710,19 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SEKTION   Navn på elf-sektion (valgfri)\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  KOMMANDO  Den kommandoen der skal forklares (valgfri)\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr "  FIL       En elf-fil (et binært eller delt bibliotek)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3699,19 +3730,19 @@ msgstr ""
 "  FIL       En elf-fil (et binært eller delt bibliotek)\n"
 "            eller en kompileret ressourcefil\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[STI]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr "  STI       En eventuelt delvis ressourcesti (valgfri)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "STI"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  STI       En ressourcesti\n"
 
@@ -3942,214 +3973,214 @@ msgstr "Tomt skemanavn givet\n"
 msgid "No such key “%s”\n"
 msgstr "Ingen sådan nøgle “%s”\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Ugyldig sokkel, ikke initialiseret"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Ugyldig sokkel, initialisering mislykkedes på grund af: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "Soklen er allerede lukket"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1438
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "Tidsudløb for sokkel-I/O"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "opretter GSocket fra fd: %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Kan ikke oprette sokkel: %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "Der blev angivet en ukendt familie"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "Der blev angivet en ukendt protokol"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr "Kan ikke bruge datagramoperationer på en ikke-datagram-sokkel."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr "Kan ikke bruge datagramoperationer på en sokkel med angivet udløbstid."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "kunne ikke finde lokal adresse: %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "kunne ikke finde fjern adresse: %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "kunne ikke lytte: %s"
 
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Fejl ved binding til adresse %s: %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Fejl ved deltagelse i multicastgruppe: %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Fejl ved fratræden fra multicastgruppe: %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Ingen understøttelse for kildespecifik multicast"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Sokkelfamilie understøttes ikke"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "kildespecifik er ikke en IPv4-adresse"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Grænsefladenavnet er for langt"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Grænseflade ikke fundet: %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Ingen understøttelse for kildespecifik multicast med IPv4"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Ingen understøttelse for kildespecifik multicast med IPv6"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Fejl ved accept af forbindelse: %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Forbinder"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Kan ikke hente verserende fejl: "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Fejl ved modtagelse af data: %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Fejl ved afsendelse af data: %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Kan ikke nedlukke sokkel: %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Fejl ved lukning af sokkel: %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "Venter på sokkelbetingelse: %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Kan ikke sende meddelelse: %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Meddelelsesvektorer er for store"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Fejl ved afsendelse af meddelelse: %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "GSocketControlMessage understøttes ikke af Windows"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Fejl ved modtagelse af meddelelse: %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Kan ikke læse sokkelakkreditiver: %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr "g_socket_get_credentials ikke implementeret på dette operativsystem"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Kunne ikke forbinde til proxyserver %s: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Kunne ikke forbinde til %s: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Kunne ikke forbinde: "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "Brug af proxy over ikke-TCP-forbindelse understøttes ikke."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "Proxyprotokollen “%s” understøttes ikke."
 
 # Relateret til ordlistens "(SMTP )listener -> *(SMTP-)modtager"
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "Modtager er allerede lukket"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "Tilføjede sokkel er lukket"
 
@@ -4239,95 +4270,95 @@ msgstr "SOCKSv5-proxy understøtter ikke den givne adressetype."
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "Ukendt SOCKSv5-proxyfejl."
 
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr "Fejl under oprettelse af kommunikationskanal til underproces (%s)"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Kanaler understøttes ikke på denne platform"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Kan ikke håndtere version %d af GThemedIcon-kodningen"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Der blev ikke fundet nogen gyldige adresser"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Fejl ved baglæns opløsning af “%s”: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr "Fejl ved fortolkning af DNS-post %s: fejlformateret DNS-pakke"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Ingen DNS-post af den forespurgte type for “%s”"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "Midlertidigt ude af stand til at opløse “%s”"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Fejl ved opløsning af “%s”"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Fejlformateret DNS-pakke"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Kunne ikke fortolke DNS-svar for “%s”: "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Intet privat, PEM-kodet nøgle fundet"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "Kan ikke dekryptere PEM-kodet privat nøgle"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "Kunne ikke fortolke PEM-kodet privat nøgle"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Intet PEM-kodet certifikat fundet"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "Kunne ikke fortolke PEM-kodet certifikat"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "Den nuværende TLS-motor understøtter ikke PKCS #12"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr ""
 "Denne GTlsBackend understøtter ikke oprettelse af PKCS #11-certifikater"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4337,7 +4368,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4345,139 +4376,150 @@ msgstr ""
 "Adskillige indtastede adgangskoder var forkerte og din adgang vil blive låst "
 "efter yderligere fejlslagne forsøg."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "Den indtastede adgangskode er forkert."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "Afsendelse af FD understøttes ikke"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "Forventede én kontrolmeddelelse, men fik %d"
 msgstr[1] "Forventede én kontrolmeddelelse, men fik %d"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Uventet type af supplerende data"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "Forventede én fd, men fik %d\n"
 msgstr[1] "Forventede én fd, men fik %d\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Modtog ugyldig fd"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "Modtagelse af FD understøttes ikke"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Fejl ved afsendelse af akkreditiver: "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr "Fejl ved kontrol af om SO_PASSCRED er slået til for sokkel: %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Fejl ved aktivering af SO_PASSCRED: %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Forventede at læse en enkelt byte for at modtage akkreditiver, men læste nul "
 "byte"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Forventer ikke kontrolmeddelelse, men modtog %d"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Fejl ved deaktivering af SO_PASSCRED: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Fejl ved læsning fra fildeskriptor: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Fejl ved lukning af fildeskriptor: %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "Filsystemets rod"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Fejl under skrivning til fildeskriptor: %s"
 
 # "[abstract unix domain]-socket address" eller "abstract [unix domain socket] address", eller en anden kombination?  Vi må hellere bibeholde ordenes rækkefølge på bekostning af at ordet bliver meget langt
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr "Abstrakte UNIX-domænesokkeladresser understøttes ikke af dette system"
 
 # eject og eject_with_operation må være funktionskald, så de bør ikke oversættes (naturligvis er det ikke en særlig brugervenlig fejlmeddelelse, men det er jo udviklerne der bestemmer dette)
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "diskenheden implementerer ikke eject"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "diskenheden implementerer ikke eject eller eject_with_operation"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr "Programmet “%s” i programobjektet har ingen verber"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr "Programmet “%s” og håndteringen “%s” i programobjektet har ingen verber"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Fejl ved læsning fra håndtag: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Fejl ved lukning af håndtag: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Fejl under skrivning til håndtag: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Utilstrækkelig hukommelse"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Intern fejl: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Kræver yderligere input"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Ugyldige komprimerede data"
 
@@ -4505,149 +4547,287 @@ msgstr "Kør en dbus-tjeneste"
 msgid "Wrong args\n"
 msgstr "Forkerte argumenter\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Kunne ikke åbne “%s”: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Fejl: Kunne ikke skrive hele outputtet: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Fejl: Kunne ikke omdøbe “%s” til “%s”: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Inkludér kataloger i GIR-søgesti"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Outputfil"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Delt bibliotek"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Vis fejlsøgningsmeddelelser"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Vis uddybende meddelelser"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Vis programversion og afslut"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Fejl ved fortolkning af argumenter: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Angiv venligst nøjagtigt én inputfil"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Fejl ved fortolkning af filen “%s”: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Kunne ikke bygge typelib til modulet “%s”"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Ugyldig typelib for modulet “%s”: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Vis alle tilgængelige oplysninger"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Kunne ikke fortolke: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Ingen inputfiler"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Kunne ikke læse “%s”: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Kunne ikke oprette typelib “%s”: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Kunne ikke indlæse typelib: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Advarsel: %u moduler udeladt"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Typelib-version som skal inspiceres"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSION"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Vis de delte biblioteker, som typelib kræver"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Vis andre typelib'er, som det inspicerede typelib kræver"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "Det typelib som skal inspiceres"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "NAVNERUM"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "— Inspicér GI-typelib"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Kunne ikke fortolke kommandolinjetilvalg: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Angiv venligst nøjagtigt ét navnerum"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Angiv venligst --print-shlibs, --print-typelibs eller begge"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Uventet attribut “%s” for elementet “%s”"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "Attributten “%s” for elementet “%s” blev ikke fundet"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Uventet mærke “%s”, forventede mærket “%s”"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Uventet mærke “%s” inden i “%s”"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Ugyldig dato/klokkeslæt “%s” i bogmærkefil"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr "Ingen gyldig bogmærkefil blev fundet i datakatalogerne"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Et bogmærke for URI'en “%s” findes allerede"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Der blev intet bogmærke fundet for URI'en “%s”"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Ingen MIME-type er defineret i bogmærket for URI'en “%s”"
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "Intet privat flag er defineret i bogmærket for URI'en “%s”"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "Ingen grupper er sat i bogmærket for URI'en “%s”"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr "Intet program med navnet “%s” har registreret et bogmærke for “%s”"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr "Kunne ikke udvide eksekveringslinjen “%s” med URI'en “%s”"
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Konverteringsinddata indeholder et tegn, som ikke kan repræsenteres"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Delvis tegnsekvens ved slutningen af inddata"
 
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr "Kan ikke konvertere tilbagefaldet “%s” til tegnsæt “%s”"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Indlejret NUL-byte i konverteringsinddata"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Indlejret NUL-byte i konverteringsuddata"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr "URI'en “%s” er ikke en absolut URI, ved brug af “fil”-metoden"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "URI'en “%s” er ugyldig"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "Værtsnavnet for URI'en “%s” er ugyldig"
 
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "URI'en “%s” indeholder ugyldigt beskyttede tegn"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "Stinavnet “%s” er ikke en absolut sti"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %d %b %Y %T %Z"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%d/%m-%y"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 # Læg mærke til programmørkommentaren. Selvom vi ikke bruger AM/PM %p må det jo stadig være den foretrukne måde at udtrykke 12-timers tid.
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%I:%M:%S %p"
@@ -4668,62 +4848,62 @@ msgstr "%I:%M:%S %p"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "januar"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "februar"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "marts"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "april"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "juni"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "juli"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "august"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "september"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "oktober"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "november"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "december"
@@ -4745,132 +4925,132 @@ msgstr "december"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "jan"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "feb"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "apr"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "jun"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "jul"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "aug"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "sep"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "okt"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "nov"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "dec"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "mandag"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "tirsdag"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "onsdag"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "torsdag"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "fredag"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "lørdag"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "søndag"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "man"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "tirs"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "ons"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "tors"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "fre"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "lør"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "søn"
@@ -4892,62 +5072,62 @@ msgstr "søn"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "januar"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "februar"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "marts"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "april"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "juni"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "juli"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "august"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "september"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "oktober"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "november"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "december"
@@ -4969,191 +5149,197 @@ msgstr "december"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "jan"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "feb"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "apr"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "jun"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "jul"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "aug"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "sep"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "okt"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "nov"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "dec"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "AM"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "PM"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Fejl ved åbning af mappen “%s”: %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "Kunne ikke allokere %lu byte til at læse filen “%s”"
-msgstr[1] "Kunne ikke allokere %lu byte til at læse filen “%s”"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Kunne ikke allokere %s for at læse filen “%s”"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Fejl ved læsning af filen “%s”: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Filen “%s” er for stor"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Kunne ikke læse fra filen “%s”: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Kunne ikke åbne filen “%s”: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "Kunne ikke læse attributter for filen “%s”: fstat() mislykkedes: %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Kunne ikke åbne filen “%s”: fdopen() mislykkedes: %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "Kunne ikke omdøbe filen “%s” til “%s”: g_rename() mislykkedes: %s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "Kunne ikke skrive filen “%s”: ftruncate() mislykkedes: %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Kunne ikke skrive filen “%s”: write() mislykkedes: %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Kunne ikke skrive filen “%s”: fsync() mislykkedes: %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Fejl under oprettelse af filen “%s”: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr ""
 "Den eksisterende fil “%s” kunne ikke fjernes: g_unlink() mislykkedes: %s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Skabelonen “%s” er ugyldig, må ikke indeholde en “%s”"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Skabelonen “%s” indeholder ikke XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Kunne ikke læse den symbolske link “%s”: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
-msgstr "Kunne ikke åbne konverterer fra “%s” til “%s”: %s"
+msgstr "Kunne ikke åbne konvertering fra “%s” til “%s”: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr "Kan ikke foretage en rå læsning i g_io_channel_read_line_string"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "Resterende ukonverterede data i læsemellemlager"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "Kanal afslutter med et ufuldendt tegn"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Kan ikke foretage en rå læsning i g_io_channel_read_to_end"
 
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr "Gyldig nøglefil blev ikke fundet i søgekatalogerne"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "Ikke en almindelig fil"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5161,50 +5347,50 @@ msgstr ""
 "Nøglefilen indeholder linjen “%s” hvilken ikke er et nøgle-værdi-par, en "
 "gruppe eller en kommentar"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Ugyldigt gruppenavn: %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Nøglefilen starter ikke med en gruppe"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Ugyldigt nøglenavn: %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "Nøglefilen indeholder kodningen “%s”, der ikke understøttes"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Nøglefilen indeholder ikke gruppen “%s”"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Nøglefilen indeholder ikke nøglen “%s” i gruppen “%s”"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr "Nøglefilen indeholder nøglen “%s” med værdien “%s” der ikke er UTF-8"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
 msgstr ""
 "Nøglefilen indeholder nøglen “%s”, som har en værdi, der ikke kan fortolkes."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5213,36 +5399,36 @@ msgstr ""
 "Nøglefilen indeholder nøglen “%s” i gruppen “%s”, som har en værdi der ikke "
 "kan fortolkes."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr "Nøglen “%s” i gruppen “%s” har værdien “%s”, mens %s blev forventet"
 
-#: glib/gkeyfile.c:4356
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Nøglefilen indeholder beskyttede tegn for enden af linjen"
 
-#: glib/gkeyfile.c:4378
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr "Nøglefilen indeholder en ugyldig undvigesekvens “%s”"
 
-#: glib/gkeyfile.c:4530
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "Værdien “%s” kan ikke fortolkes som et nummer."
 
-#: glib/gkeyfile.c:4544
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "Heltalsværdien “%s” er ikke i gyldigt interval"
 
-#: glib/gkeyfile.c:4577
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "Værdien “%s” kan ikke fortolkes som en float."
 
-#: glib/gkeyfile.c:4616
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "Værdien “%s” kan ikke fortolkes som en sandhedsværdi."
@@ -5263,32 +5449,32 @@ msgstr "Kunne ikke kortlægge %s%s%s%s: mmap() mislykkedes: %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "Kunne ikke åbne filen “%s”: open() mislykkedes: %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Fejl på linje %d tegn %d: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "Ugyldig UTF-8-kodet tekst i navnet — ugyldig “%s”"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "“%s” er ikke et gyldigt navn"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "“%s” er ikke et gyldigt navn: “%c”"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Fejl på linje %d: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5297,7 +5483,7 @@ msgstr ""
 "Fejl ved fortolkning af “%-.*s” som skulle have været et ciffer i en "
 "tegnreference (&#234; for eksempel) — måske er cifret for stort"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5307,23 +5493,23 @@ msgstr ""
 "og-tegn uden at det var beregnet på at starte en entitet — undgå dette ved "
 "at bruge &amp; i stedet"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "Tegnreferencen “%-.*s” koder ikke et tilladt tegn"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Tom entitet “&;” fundet; gyldige entiteter er: &amp; &quot; &lt; &gt; &apos;"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "Entitetsnavnet “%-.*s” er ukendt"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5332,11 +5518,11 @@ msgstr ""
 "tegn uden at det var beregnet på at starte en entitet — dette undgås ved at "
 "bruge &amp; i stedet"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Dokumentet skal begynde med et element (f.eks <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5345,7 +5531,7 @@ msgstr ""
 "“%s” er ikke et gyldigt tegn efter et “<”-tegn; det kan ikke være "
 "begyndelsen på et elementnavn"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5354,12 +5540,12 @@ msgstr ""
 "Mærkeligt tegn “%s”, forventede et “>”-tegn for at afslutte det tomme "
 "elementmærke “%s”"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "For mange attributter i elementet “%s”"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5367,7 +5553,7 @@ msgstr ""
 "Mærkeligt tegn “%s”, forventede et “=” efter attributnavn “%s” for elementet "
 "“%s”"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5378,7 +5564,7 @@ msgstr ""
 "begyndelsesmærket til elementet “%s” eller alternativt en attribut; måske "
 "brugte du et ugyldigt tegn i attributnavnet"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5387,7 +5573,7 @@ msgstr ""
 "Mærkeligt tegn “%s”, forventede et åbningsanførselstegn efter lighedstegnet "
 "når værdien for egenskaben “%s” for attributten “%s” angives"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5396,7 +5582,7 @@ msgstr ""
 "“%s” er ikke et gyldigt tegn efter tegnene “</”; “%s” er måske ikke "
 "begyndelsen på et elementnavn"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5405,25 +5591,25 @@ msgstr ""
 "“%s” er ikke et gyldigt tegn efter det lukkende elementnavn “%s”; tilladt "
 "tegn er “>”"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "Element “%s” blev lukket, ingen åbne elementer nu"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr "Element “%s” blev lukket, men aktivt åbent element er “%s”"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Dokumentet var tomt eller indeholdt kun blanke tegn"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr "Dokumentet sluttede uventet lige efter en åben vinkelparentes “<”"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5431,7 +5617,7 @@ msgid ""
 msgstr ""
 "Dokumentet sluttede uventet med åbne elementer — “%s” var sidste åbne element"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5440,19 +5626,19 @@ msgstr ""
 "Dokumentet sluttede uventet, forventede at se en vinkelparentes for at "
 "afslutte det sidste mærke <%s/>"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr "Dokumentet sluttede uventet inden i et elementnavn"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr "Dokumentet sluttede uventet inden i et attributnavn"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr "Dokumentet sluttede uventet inden i et element-åbnende mærke."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5460,263 +5646,263 @@ msgstr ""
 "Dokumentet sluttede uventet efter lighedstegnet efter et attributnavn; ingen "
 "attributværdi"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr "Dokumentet sluttede uventet inden i en attributværdi"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr "Dokumentet sluttede uventet inden i lukningsmærket for elementet “%s”"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
 "Dokumentet sluttede uventet inden i lukningsmærket for et uåbnet element"
 
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Dokumentet sluttede uventet inden i en kommentar eller behandlingsinstruktion"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[TILVALG …]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Tilvalg til hjælp:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Vis tilvalg for hjælp"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Vis alle tilvalg for hjælp"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Tilvalg for programmet:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Tilvalg:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "Kan ikke fortolke heltalsværdien “%s” for %s"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "Heltalsværdien “%s” for %s er ikke i gyldigt interval"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "Kan ikke fortolke double-værdien “%s” for %s"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "Double-værdien “%s” for %s er ikke i gyldigt interval"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Kunne ikke fortolke tilvalg %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Mangler argument for %s"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Ukendt tilvalg %s"
 
-#: glib/gregex.c:480
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "beskadiget objekt"
 
-#: glib/gregex.c:482
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "ikke mere ledig hukommelse"
 
-#: glib/gregex.c:497
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "intern fejl"
 
-#: glib/gregex.c:499
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr ""
 "mønsteret indeholder elementer der ikke understøttes i forbindelse med "
 "partiel træfning"
 
-#: glib/gregex.c:501
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "baglæns referencer som betingelser understøttes ikke i forbindelse med "
 "partiel træfning"
 
-#: glib/gregex.c:507
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "rekursionsgrænse nået"
 
-#: glib/gregex.c:509
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "ugyldig forskydning"
 
-#: glib/gregex.c:511
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "rekursiv løkke"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:514
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr "der anmodes om en matchtilstand, som ikke er kompileret til JIT"
 
-#: glib/gregex.c:535 glib/gregex.c:1851
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "ukendt fejl"
 
-#: glib/gregex.c:556
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ sidst i mønster"
 
-#: glib/gregex.c:560
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c sidst i mønster"
 
-#: glib/gregex.c:565
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "ukendt tegn følger \\"
 
-#: glib/gregex.c:569
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "tal er ude af rækkefølge i {}-kvantor"
 
-#: glib/gregex.c:573
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "for stort tal i {}-kvantor"
 
-#: glib/gregex.c:577
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "manglende afsluttende ] for tegnklasse"
 
-#: glib/gregex.c:581
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "ugyldig undvigesekvens i tegnklasse"
 
-#: glib/gregex.c:585
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "følgen er ikke ordnet i tegnklassen"
 
-#: glib/gregex.c:590
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "intet at gentage"
 
-#: glib/gregex.c:594
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "ukendt tegn efter (? eller (?-"
 
-#: glib/gregex.c:598
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr "POSIX-navngivne klasser understøttes kun inden i en klasse"
 
-#: glib/gregex.c:602
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "POSIX-arrangerende elementer understøttes ikke"
 
-#: glib/gregex.c:608
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr "manglende afsluttende )"
 
-#: glib/gregex.c:612
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "reference til ikke-eksisterende undermønster"
 
-#: glib/gregex.c:616
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "manglende ) efter kommentar"
 
-#: glib/gregex.c:620
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "regulært udtryk for stort"
 
-#: glib/gregex.c:624
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "fejlformateret tal eller navn efter (?("
 
-#: glib/gregex.c:628
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "lookbehind-assert-erklæring har ikke fast længde"
 
-#: glib/gregex.c:632
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "betinget gruppe indeholder mere end to grene"
 
-#: glib/gregex.c:636
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "assert-erklæring forventet efter (?("
 
-#: glib/gregex.c:640
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "en nummereret reference kan ikke være nul"
 
-#: glib/gregex.c:644
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "ukendt POSIX-klassenavn"
 
-#: glib/gregex.c:649
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "tegnværdi i \\x{…}-sekvens er for stor"
 
-#: glib/gregex.c:653
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C ikke tillad i lookbehind-assert-erklæring"
 
-#: glib/gregex.c:657
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "manglende terminator i undermønsters navn"
 
-#: glib/gregex.c:661
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "to navngivne undermønstre har samme navn"
 
-#: glib/gregex.c:665
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "fejlformateret \\P- eller \\p-sekvens"
 
-#: glib/gregex.c:669
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "ukendt egenskabsnavn efter \\P eller \\p"
 
-#: glib/gregex.c:673
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "undermønsters navn er for langt (maksimal 32 tegn)"
 
-#: glib/gregex.c:677
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "for mange navngivne undermønstre (maksimalt 10.000)"
 
-#: glib/gregex.c:681
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "oktal værdi er større end \\377"
 
-#: glib/gregex.c:685
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "DEFINE-gruppe indeholder mere end én gren"
 
-#: glib/gregex.c:689
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "inkonsistente NEWLINE-indstillinger"
 
-#: glib/gregex.c:693
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5724,234 +5910,234 @@ msgstr ""
 "\\g følges ikke af et navn eller tal indeholdt i klammer eller "
 "vinkelklammer, eller af et enkeltstående tal"
 
-#: glib/gregex.c:698
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "et argument er ikke tilladt for (*ACCEPT), (*FAIL) eller (*COMMIT)"
 
-#: glib/gregex.c:702
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB) ikke genkendt"
 
-#: glib/gregex.c:706
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "tallet er for stort"
 
-#: glib/gregex.c:710
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "manglende undermønsternavn efter (?&"
 
-#: glib/gregex.c:714
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr "forskellige navne til undermønstre med samme nummer er ikke tilladt"
 
-#: glib/gregex.c:718
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) skal have et argument"
 
-#: glib/gregex.c:722
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "\\c skal være efterfulgt af et ASCII-tegn"
 
-#: glib/gregex.c:726
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "\\k følges ikke af et navn indeholdt i klammer, vinkelklammer eller "
 "citationstegn"
 
-#: glib/gregex.c:730
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N understøttes ikke i en klasse"
 
-#: glib/gregex.c:734
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "navn er for langt i (*MARK), (*PRUNE), (*SKIP) eller (*THEN)"
 
-#: glib/gregex.c:738 glib/gregex.c:874
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "kodeoverløb"
 
-#: glib/gregex.c:742
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "ukendt tegn efter (?P"
 
-#: glib/gregex.c:746
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "overløb kompileringsarbejdspladsen"
 
-#: glib/gregex.c:750
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "tidligere kontrolleret, refereret undermønster blev ikke fundet"
 
-#: glib/gregex.c:873 glib/gregex.c:1135 glib/gregex.c:2457
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "Fejl under søgning med det regulære udtryk %s: %s"
 
-#: glib/gregex.c:1735
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "PCRE-biblioteket er kompileret uden UTF8-understøttelse"
 
-#: glib/gregex.c:1743
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "PCRE-biblioteket er kompileret med inkompatible indstillinger"
 
-#: glib/gregex.c:1860
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr "Fejl under kompilering af det regulære udtryk “%s” ved tegn %s: %s"
 
-#: glib/gregex.c:2900
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "hexadecimalt ciffer eller “}” forventet"
 
-#: glib/gregex.c:2916
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "hexadecimalt ciffer forventet"
 
-#: glib/gregex.c:2956
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "manglende “<” i symbolsk reference"
 
-#: glib/gregex.c:2965
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "ufærdig symbolsk reference"
 
-#: glib/gregex.c:2972
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "symbolsk reference med længde nul"
 
-#: glib/gregex.c:2983
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "ciffer forventet"
 
-#: glib/gregex.c:3001
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "ugyldig symbolsk reference"
 
-#: glib/gregex.c:3064
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "løst afsluttende “\\”"
 
-#: glib/gregex.c:3068
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "ukendt undvigesekvens"
 
-#: glib/gregex.c:3078
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr "Fejl under fortolkning af erstatningstekst “%s” ved tegn %lu: %s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Anført tekst begynder ikke med anførselstegn"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr ""
 "Uafbalanceret anførselstegn i kommandolinje eller anden skal-anført tekst"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr "Tekst sluttede lige efter et “\\”-tegn. (Teksten var “%s”)"
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Tekst sluttede før tilsvarende anførselstegn blev fundet for %c (teksten var "
 "“%s”)"
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Tekst var tom (eller indeholdt kun blanke tegn)"
 
-#: glib/gspawn.c:320
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "Fejl ved læsning af data fra underproces (%s)"
 
-#: glib/gspawn.c:473
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr "Uventet fejl ved læsning af data fra underproces (%s)"
 
-#: glib/gspawn.c:558
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Uventet fejl i waitpid() (%s)"
 
-#: glib/gspawn.c:1180 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Underproces afsluttede med kode %ld"
 
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Underproces dræbt med signal %ld"
 
-#: glib/gspawn.c:1195
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Underproces stoppet med signal %ld"
 
-#: glib/gspawn.c:1202
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "Underproces afsluttede fejlagtigt"
 
-#: glib/gspawn.c:2032 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "Fejl under læsning fra barnedatakanal (%s)"
 
-#: glib/gspawn.c:2404
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "Fejl under kørsel af underprocessen “%s” (%s)"
 
-#: glib/gspawn.c:2530
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Fejl under fraspaltning af proces (%s)"
 
-#: glib/gspawn.c:2690 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "Fejl ved skift til mappen “%s” (%s)"
 
-#: glib/gspawn.c:2700
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "Kunne ikke køre underprocessen “%s” (%s)"
 
-#: glib/gspawn.c:2710
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr "Kunne ikke åbne filen for at omtildele fildeskriptoren (%s)"
 
-#: glib/gspawn.c:2718
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr "Kunne ikke duplikere fildeskriptoren for underproces (%s)"
 
-#: glib/gspawn.c:2727
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Fejl ved fraspaltning af underproces (%s)"
 
-#: glib/gspawn.c:2735
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr "Kunne ikke lukke fildeskriptoren for underproces (%s)"
 
-#: glib/gspawn.c:2743
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Ukendt fejl under kørsel af underprocessen “%s”"
 
-#: glib/gspawn.c:2767
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr ""
@@ -6010,78 +6196,78 @@ msgstr ""
 "Uventet fejl i g_io_channel_win32_poll() under læsning af data fra en "
 "underproces"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "Tom streng er ikke et tal"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "“%s” er ikke et tal med fortegn"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "Tallet “%s” er uden for det gyldige interval [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "“%s” er ikke et tal uden fortegn"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "Ugyldig %-kodning i URI"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Ugyldigt tegn i URI"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Ikke-UTF-8-tegn i URI"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Ugyldig IPv6-adresse “%.*s” i URI"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Ugyldigt kodet IP-adresse “%.*s” i URI"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Ugyldigt internationaliseret værtsnavn ‘%.*s’ i URI"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Kunne ikke fortolke port “%.*s” i URI"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "Porten “%.*s” i URI ligger uden for gyldigt interval"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "URI'en “%s” er ikke en absolut URI"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "URI'en “%s” har ingen værtskomponent"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "URI'en er ikke absolut og der er ikke givet nogen basis-URI"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "Mangler “=” og parameterværdi"
 
@@ -6162,65 +6348,65 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "kb"
+msgid "kbit"
+msgstr "kbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "Mb"
+msgid "Mbit"
+msgstr "Mbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "Gb"
+msgid "Gbit"
+msgstr "Gbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "Tb"
+msgid "Tbit"
+msgstr "Tbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "Pb"
+msgid "Pbit"
+msgstr "Pbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "Eb"
+msgid "Ebit"
+msgstr "Ebit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "Kib"
+msgid "Kibit"
+msgstr "Kibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "Mib"
+msgid "Mibit"
+msgstr "Mibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "Gib"
+msgid "Gibit"
+msgstr "Gibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "Tib"
+msgid "Tibit"
+msgstr "Tibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "Pib"
+msgid "Pibit"
+msgstr "Pibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "Eib"
+msgid "Eibit"
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6325,6 +6511,48 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~ msgid ""
+#~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
+#~ msgstr ""
+#~ "Meddelelse for METHOD_RETURN: Teksthovedet REPLY_SERIAL mangler eller er "
+#~ "ugyldigt"
+
+#~ msgid "kb"
+#~ msgstr "kb"
+
+#~ msgid "Mb"
+#~ msgstr "Mb"
+
+#~ msgid "Gb"
+#~ msgstr "Gb"
+
+#~ msgid "Tb"
+#~ msgstr "Tb"
+
+#~ msgid "Pb"
+#~ msgstr "Pb"
+
+#~ msgid "Eb"
+#~ msgstr "Eb"
+
+#~ msgid "Kib"
+#~ msgstr "Kib"
+
+#~ msgid "Mib"
+#~ msgstr "Mib"
+
+#~ msgid "Gib"
+#~ msgstr "Gib"
+
+#~ msgid "Tib"
+#~ msgstr "Tib"
+
+#~ msgid "Pib"
+#~ msgstr "Pib"
+
+#~ msgid "Eib"
+#~ msgstr "Eib"
+
 #~ msgid "GApplication options"
 #~ msgstr "GApplication-indstillinger"
 
index 40eeb53..9388119 100644 (file)
--- a/po/de.po
+++ b/po/de.po
@@ -7,21 +7,21 @@
 # Andre Klapper <ak-47@gmx.net>, 2007, 2008.
 # Philipp Kerling <k.philipp@gmail.com>, 2008.
 # Hendrik Richter <hendrikr@gnome.org>, 2004-2009.
-# Christian Kirbach <Christian.Kirbach@gmail.com>, 2009, 2010, 2012.
+# Christian Kirbach <Christian.Kirbach@gmail.com>, 2009-2024.
 # Tobias Endrigkeit <tobiasendrigkeit@googlemail.com>, 2012.
 # Bernd Homuth <dev@hmt.im>, 2015.
 # Wolfgang Stöggl <c72578@yahoo.de>, 2011, 2015-2016.
 # Tim Sabsch <tim@sabsch.com>, 2019-2023.
 # Mario Blättermann <mario.blaettermann@gmail.com>, 2010-2013, 2015-2018, 2020-2021.
 # Philipp Kiemle <philipp.kiemle@gmail.com>, 2021-2023.
-# Jürgen Benvenuti <gastornis@posteo.org>, 2022, 2023.
+# Jürgen Benvenuti <gastornis@posteo.org>, 2022-2024.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: glib master\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-08-31 20:16+0000\n"
-"PO-Revision-Date: 2023-09-01 11:37+0200\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-04-01 14:35+0000\n"
+"PO-Revision-Date: 2024-04-10 22:18+0200\n"
 "Last-Translator: Jürgen Benvenuti <gastornis@posteo.org>\n"
 "Language-Team: German <gnome-de@gnome.org>\n"
 "Language: de\n"
@@ -29,7 +29,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 3.3.1\n"
+"X-Generator: Poedit 3.4.2\n"
 
 #: gio/gappinfo.c:339
 msgid "Setting default applications not supported yet"
@@ -53,36 +53,40 @@ msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr ""
 "Es konnte keine Vorgabeanwendung für das Adressschema »%s« gefunden werden"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "GApplication-Optionen:"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Optionen für GApplication anzeigen"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr "GApplication-Dienstmodus starten (aus D-Bus Dienstdateien verwenden)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Anwendungskennung überschreiben"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Die Anwendungsversion ausgeben"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Laufende Instanz ersetzen"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Hilfe ausgeben"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[BEFEHL]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Version ausgeben"
 
@@ -136,7 +140,7 @@ msgid "APPID"
 msgstr "ANWENDUNGSKENNUNG"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "BEFEHL"
 
@@ -148,9 +152,13 @@ msgstr "Der Befehl, für den eine detaillierte Hilfe ausgegeben wird"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Anwendungsbezeichnung im D-Bus-Format (z.B: org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "DATEI"
 
@@ -175,7 +183,7 @@ msgstr "PARAMETER"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Optionaler Parameter für den Aufruf der Aktion, im GVariant-Format"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -189,12 +197,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Aufruf:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Argumente:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[ARGUMENTE …]"
 
@@ -287,78 +295,78 @@ msgstr ""
 "Unbekannter Befehl: %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "Zu großer Zählwert an %s übermittelt"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Suchen im Basis-Datenstrom nicht unterstützt"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "GBufferedInputStream konnte nicht abgeschnitten werden"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "Datenstrom ist bereits geschlossen"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "Abschneiden wird vom Basis-Datenstrom nicht unterstützt"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "Vorgang wurde abgebrochen"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Ungültiges Objekt, wurde nicht initialisiert"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Ungültige Multibyte-Folge in Eingabe"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Nicht genug Platz im Ziel"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Ungültige Bytefolge in Umwandlungseingabe"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Fehler bei der Umwandlung: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Abbrechbare Initialisierung wird nicht unterstützt"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "Umwandlung von Zeichensatz »%s« in »%s« wird nicht unterstützt"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Konverter von »%s« in »%s« konnte nicht geöffnet werden"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "%s-Typ"
@@ -372,42 +380,42 @@ msgstr "Unbekannter Typ"
 msgid "%s filetype"
 msgstr "%s-Dateityp"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials enthält ungültige Daten"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials ist in diesem Betriebssystem nicht implementiert"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Es gibt auf Ihrer Plattform keine Unterstützung für GCredentials"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr "GCredentials enthält in diesem Betriebssystem keine Prozesskennung"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr ""
 "Fälschen von Anmeldedaten ist unter diesem Betriebssystem nicht möglich"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "Unerwartet frühes Datenstromende"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "Nicht unterstützter Schlüssel »%s« im Adresseintrag »%s«"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr "Bedeutungsloses Schlüssel-Wert-Paar im Adresseintrag »%s«"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -416,28 +424,28 @@ msgstr ""
 "Adresse »%s« ist ungültig (benötigt genau einen der Schlüssel path, dir, "
 "tmpdir oder abstract keys)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Fehler in Adresse »%s« – Das Attribut »%s« ist nicht korrekt"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Unbekannter oder nicht unterstützter Transport »%s« für Adresse »%s«"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "Adresselement »%s« enthält keinen Doppelpunkt"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr "Der Transportname im Adresselement »%s« darf nicht leer sein"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -446,7 +454,7 @@ msgstr ""
 "Schlüssel-Wert-Paar %d, »%s«, in Adresselement »%s« enthält kein "
 "Gleichheitszeichen"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
@@ -454,7 +462,7 @@ msgstr ""
 "Schlüssel-Wert-Paar %d, »%s«, in Adresselement »%s« darf keinen leeren "
 "Schlüssel enthalten"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -463,7 +471,7 @@ msgstr ""
 "Fehler beim Entfernen von Escape-Zeichen im Schlüssel-Wert-Paar %d, »%s«, im "
 "Adresselement »%s«"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -472,84 +480,84 @@ msgstr ""
 "Fehler in Adresse »%s« - für den Unix-Transport muss genau einer der "
 "Schlüssel »path« oder »abstract« gesetzt sein"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr ""
 "Fehler in Adresse »%s« – Das Host-Attribut fehlt oder ist nicht korrekt"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr ""
 "Fehler in Adresse »%s« – Das Port-Attribut fehlt oder ist nicht korrekt"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Fehler in Adresse »%s« – Das noncefile-Attribut fehlt oder ist nicht korrekt"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "Fehler beim automatischen Starten: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "Fehler beim Öffnen der Nonce-Datei »%s«: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Fehler beim Lesen der Nonce-Datei »%s«: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr ""
 "Fehler beim Lesen der Nonce-Datei »%s«, erwartet wurden 16 Bytes, jedoch %d "
 "erhalten"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr ""
 "Fehler beim Schreiben des Inhalts der Nonce-Datei »%s« in den Datenstrom:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "Die angegebene Adresse ist leer"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr ""
 "Ein Nachrichtenbus kann nicht erzeugt werden, wenn AT_SECURE gesetzt ist"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr ""
 "Ein Nachrichtenbus kann nicht ohne eine Rechner-Kennung erzeugt werden: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "D-Bus kann nicht automatisch ohne X11 $DISPLAY gestartet werden"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Fehler beim Erzeugen der Befehlszeile »%s«: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Adresse des Sitzungsbus konnte nicht ermittelt werden (für dieses "
 "Betriebssystem nicht implementiert)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -558,7 +566,7 @@ msgstr ""
 "Bus-Adresse konnte nicht über die Umgebungsvariable DBUS_STARTER_BUS_TYPE "
 "ermittelt werden – unbekannter Wert »%s«"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -566,21 +574,21 @@ msgstr ""
 "Bus-Adresse konnte nicht ermittelt werden, da die Umgebungsvariable "
 "DBUS_STARTER_BUS_TYPE nicht gesetzt ist"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Unbekannter Bus-Typ %d"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Unerwarteter Mangel an Inhalt beim Versuch, eine Zeile zu lesen"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr ""
 "Unerwarteter Mangel an Inhalt beim Versuch, eine Zeile (sicher) zu lesen"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -588,15 +596,15 @@ msgstr ""
 "Alle verfügbaren Legitimierungsmechanismen sind ausgeschöpft (%s Versuche) "
 "(verfügbar: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Unerwarteter Mangel an Inhalt beim Versuch, einen Byte zu lesen"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr "Benutzerkennungen müssen für Server und Gegenstelle gleich sein"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Abgebrochen durch GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -618,13 +626,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Fehler beim Erstellen des Ordners »%s«: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Vorgang wird nicht unterstützt"
 
@@ -690,15 +698,15 @@ msgstr "Fehler beim Öffnen des Schlüsselbundes »%s« zum Schreiben: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(Außerdem schlug das Entsperren von »%s« ebenso fehl: %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "Verbindung ist geschlossen"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "Zeitüberschreitung wurde erreicht"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
@@ -791,65 +799,79 @@ msgstr "Ein Unterbaum wurde bereits für %s exportiert"
 msgid "Object does not exist at path “%s”"
 msgstr "Das Objekt existiert nicht am Pfad »%s«"
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "Typ ist UNGÜLTIG"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
 msgstr ""
-"METHOD_CALL-Meldung: Kopfzeilenfeld PATH oder MEMBER fehlt oder ist ungültig"
+"%s-Nachricht: %s-Kopffeld ist ungültig. Erwartet wurde ein Wert des Typs »%s«"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr ""
-"METHOD_RETURN-Meldung: Kopfzeilenfeld REPLY_SERIAL fehlt oder ist ungültig"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "%s-Nachricht:: Kopffeld %s fehlt oder ist ungültig"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr ""
-"ERROR-Meldung: Kopfzeilenfeld REPLY_SERIAL oder ERROR_NAME fehlt oder ist "
-"ungültig"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "%s-Nachricht: UNGÜLTIGES Kopffeld angegeben"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
 msgstr ""
-"SIGNAL-Meldung: Kopfzeilenfeld PATH, INTERFACE oder MEMBER fehlt oder ist "
-"ungültig"
+"%s-Meldung: Das Kopfzeilenfeld PATH verwendet den reservierten Wert /org/"
+"freedesktop/DBus/Local"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
 msgstr ""
-"SIGNAL-Meldung: Das Kopfzeilenfeld PATH verwendet den reservierten Wert /org/"
-"freedesktop/DBus/Local"
+"%s-Meldung: Kopfzeilenfeld INTERFACE enthält keinen gültigen "
+"Schnittstellennamen"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
+"freedesktop.DBus.Local"
+msgstr ""
+"%s-Meldung: Das Kopfzeilenfeld INTERFACE verwendet den reservierten Wert org."
 "freedesktop.DBus.Local"
+
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
 msgstr ""
-"SIGNAL-Meldung: Das Kopfzeilenfeld INTERFACE verwendet den reservierten Wert "
-"org.freedesktop.DBus.Local"
+"%s-Meldung: Kopfzeilenfeld MEMBER enthält keinen gültigen Teilnehmernamen"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+"%s-Meldung: Kopfzeilenfeld ERROR_NAME enthält keinen gültigen Fehlernamen"
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "Typ ist UNGÜLTIG"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
 msgstr[0] "%lu Byte sollte gelesen werden, aber nur %lu erhalten"
 msgstr[1] "%lu Bytes sollten gelesen werden, aber nur %lu erhalten"
 
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr ""
 "Ein NUL-Byte wurde nach der Zeichenkette »%s« erwartet, aber es wurde Byte "
 "%d gefunden"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -859,21 +881,21 @@ msgstr ""
 "Position %d gefunden (Länge der Zeichenkette ist %d). Die gültige UTF-8-"
 "Zeichenkette bis zu diesem Punkt war »%s«."
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Der Wert ist zu tief verschachtelt"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr "Verarbeiteter Wert »%s« ist kein gültiger D-Bus-Objektpfad"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "Verarbeiteter Wert »%s« ist keine gültige D-Bus-Signatur"
 
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -886,7 +908,7 @@ msgstr[1] ""
 "Array der Länge %u Bytes wurde erkannt. Maximale Länge ist 2<<26 Bytes (64 "
 "MiB)."
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -895,16 +917,16 @@ msgstr ""
 "Es wurde ein Feld des Typs »a%c« gefunden. Erwartet wurde als Länge ein "
 "Vielfaches von %u Byte, aber es waren %u Byte Länge"
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Leere Strukturen (Tupel) sind in D-Bus nicht erlaubt"
 
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr "Verarbeiteter Wert »%s« für Variante ist keine gültige D-Bus-Signatur"
 
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -912,7 +934,7 @@ msgstr ""
 "Fehler beim Deserialisieren von GVariant mit der Typenzeichenkette »%s« aus "
 "dem D-Bus Wire-Format"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -921,29 +943,29 @@ msgstr ""
 "Ungültiger Wert für die Speicherreihenfolge. Es wird entweder 0x6c (»l«) "
 "oder 0x42 (»B«) erwartet, aber der Wert 0x%02x gefunden"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr ""
 "Ungültige Version des Hauptprotokolls. Erwartet wurde 1, jedoch %d gefunden"
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "Signatur-Kopfzeilenfeld gefunden, ist aber nicht vom Typ Signatur"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr ""
 "Signatur-Kopfzeilenfeld mit Signatur »%s« gefunden, aber Nachrichtenrumpf "
 "ist leer"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr "Verarbeiteter Wert »%s« ist keine gültige D-Bus-Signatur (für Rumpf)"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
@@ -954,11 +976,11 @@ msgstr[1] ""
 "Kein Signatur-Kopfzeilenfeld in der Nachricht, aber der Nachrichtenrumpf ist "
 "%u Bytes groß"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Meldung kann nicht deserialisiert werden: "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -966,7 +988,7 @@ msgstr ""
 "Fehler beim Deserialisieren von GVariant mit der Typenzeichenkette »%s« in "
 "das D-Bus Wire-Format"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
@@ -974,18 +996,18 @@ msgstr ""
 "Anzahl der Dateideskriptoren in Meldung (%d) und Kopfzeilenfeld (%d) ist "
 "unterschiedlich"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Meldung kann nicht serialisiert werden: "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr ""
 "Nachrichtenrumpf hat den Signaturtyp »%s«, aber es gibt keine Signatur im "
 "Kopfzeilenfeld"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -994,18 +1016,18 @@ msgstr ""
 "Nachrichtenrumpf hat den Signaturtyp »%s«, aber die Signatur im "
 "Kopfzeilenfeld ist »%s«"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr ""
 "Nachrichtenrumpf ist leer, aber die Signatur im Kopfzeilenfeld ist »(%s)«"
 
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Fehlerrückmeldung mit Inhalt des Typs »%s«"
 
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Fehlerrückmeldung mit leerem Inhalt"
 
@@ -1026,22 +1048,22 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Hardware-Profil konnte nicht ermittelt werden: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "%s oder %s kann nicht geladen werden: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Fehler beim Aufruf von StartServiceByName für %s: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Unerwartete Antwort %d von der Methode StartServiceByName(»%s«)"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1051,25 +1073,25 @@ msgstr ""
 "bekannten Namen %s ohne Besitzer, und der Proxy wurde mit dem Flag "
 "»G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START« erstellt"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "Abstrakter Namensraum wird nicht unterstützt"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr "Nonce-Datei kann beim Erstellen eines Servers nicht angegeben werden"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "Fehler beim Schreiben der Nonce-Datei auf »%s«: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "Die Zeichenkette »%s« ist keine gültige GUID für D-Bus"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "An nicht unterstützter Übertragung »%s« kann nicht gelauscht werden"
@@ -1132,6 +1154,10 @@ msgstr "Zum Sitzungsbus verbinden"
 msgid "Connect to given D-Bus address"
 msgstr "Zur angegebenen D-Bus-Adresse verbinden"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADDRESSE"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Optionen für Gegenstelle der Verbindung:"
@@ -1367,74 +1393,75 @@ msgstr "Fehler: %s ist kein gültiger, bekannter Bus-Name\n"
 msgid "Not authorized to change debug settings"
 msgstr "Nicht berechtigt, Fehlerdiagnose-Einstellungen zu ändern"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Unbenannt"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "Desktop-Datei hat kein Exec-Feld angegeben"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Für die Anwendung benötigtes Terminal konnte nicht gefunden werden"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Programm »%s« wurde nicht im $PATH gefunden"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr ""
 "Konfigurationsordner %s für Benutzeranwendungen konnte nicht erstellt "
 "werden: %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr ""
 "MIME-Konfigurationsordner %s des Benutzers konnte nicht erstellt werden: %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "Den Anwendungsinformationen fehlt ein Bezeichner"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Benutzer-Desktop-Datei %s kann nicht erstellt werden"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Benutzerdefinition für %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "Laufwerk unterstützt Auswerfen nicht"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "Laufwerk unterstützt weder ein Auswerfen noch »eject_with_operation«"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "Laufwerk unterstützt Prüfen auf Datenträger nicht"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "Laufwerk unterstützt keinen Startvorgang"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "Laufwerk unterstützt keinen Stoppvorgang"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "TLS-Backend implementiert keine TLS-Bindungs-Ermittlung"
 
@@ -1447,27 +1474,27 @@ msgstr "TLS-Unterstützung ist nicht verfügbar"
 msgid "DTLS support is not available"
 msgstr "DTLS-Unterstützung ist nicht verfügbar"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Version %d der GEmblem-Kodierung kann nicht verarbeitet werden"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Ungültige Symbolanzahl (%d) in GEmblem-Kodierung"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Version %d der GEmblemedIcon-Kodierung kann nicht verarbeitet werden"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Ungültige Symbolanzahl (%d) in GEmblemedIcon-Kodierung"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Es wurde ein GEmblem für GEmblemedIcon erwartet"
 
@@ -1475,131 +1502,137 @@ msgstr "Es wurde ein GEmblem für GEmblemedIcon erwartet"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "Enthaltender Einhängepunkt existiert nicht"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Es kann nicht über den Ordner kopiert werden"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Ordner kann nicht über Ordner kopiert werden"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Zieldatei existiert"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Ordner kann nicht rekursiv kopiert werden"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "Dateibereich kopieren wird nicht unterstützt"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Fehler beim Zusammenfügen der Datei: %s"
 
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "Zusammenfügen wird nicht unterstützt"
 
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr "Kopieren (reflink/clone) zwischen Einhängepunkten nicht unterstützt"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "Kopieren (reflink/clone) wird nicht unterstützt oder ist ungültig"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr ""
 "Kopieren (reflink/clone) wird nicht unterstützt oder funktioniert nicht"
 
-#: gio/gfile.c:3395
+# Ich denke "reset" ist gemeint
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Das Attribut %s kann nicht abgerufen werden"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Spezielle Datei kann nicht kopiert werden"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Ungültiger Wert für symbolische Verknüpfung angegeben"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Symbolische Verknüpfungen nicht unterstützt"
 
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "Papierkorb nicht unterstützt"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "Dateinamen dürfen kein »%c« enthalten"
 
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr ""
 "Für die Vorlage »%s« konnte kein temporärer Ordner erstellt werden:  %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "Datenträger unterstützt Einhängen nicht"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Es wurde keine Anwendung gefunden, die diese Datei verarbeiten kann"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "Datei-Enumerator ist geschlossen"
 
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "Datei-Enumerator hat noch einen ausstehenden Vorgang"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "Datei-Enumerator ist bereits geschlossen"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Version %d der GFileIcon-Kodierung kann nicht verarbeitet werden"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Ungültige Eingangsdaten für GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Datenstrom unterstützt query_info nicht"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Suchen im Datenstrom nicht unterstützt"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "Abschneiden des Eingabedatenstroms nicht erlaubt"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "Abschneiden wird vom Datenstrom nicht unterstützt"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Ungültiger Rechnername"
 
@@ -1632,64 +1665,64 @@ msgstr "Antwort vom HTTP-Proxy ist zu groß"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "HTTP Proxy-Server hat die Verbindung unerwartet geschlossen."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Ungültige Symbolanzahl (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Kein Typ für Klassenname %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "GIcon-Schnittstelle wird vom Typ %s nicht unterstützt"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "Typ %s ist keine Klasse"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Ungültige Versionsnummer: %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr "Typ %s implementiert nicht from_tokens() der GIcon-Schnittstelle"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Übergebene Version der Symbol-Kodierung kann nicht verarbeitet werden"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Keine Adresse angegeben"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "Länge %u ist zu groß für eine Adresse"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "Für die Adresse sind Bits außerhalb der Präfix-Länge gesetzt"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "»%s« konnte nicht als IP-Adressmaske verarbeitet werden"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Nicht genug Platz für eine Socket-Adresse"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Nicht unterstützte Socket-Adresse"
 
@@ -1703,7 +1736,7 @@ msgstr "Eingabedatenstrom unterstützt kein Lesen"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "Datenstrom hat noch einen ausstehenden Vorgang"
 
@@ -1719,7 +1752,7 @@ msgstr "Zusammen mit Datei verschieben"
 msgid "“version” takes no arguments"
 msgstr "»version« akzeptiert keine Argumente"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Aufruf:"
 
@@ -1727,79 +1760,79 @@ msgstr "Aufruf:"
 msgid "Print version information and exit."
 msgstr "Versionsinformationen ausgeben und beenden."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Befehle:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Dateien aneinander hängen und auf der Standardausgabe ausgeben"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Eine oder mehrere Dateien kopieren"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Informationen zu Orten anzeigen"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Anwendung mittels desktop-Datei starten"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Den Inhalt der Orte auflisten"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Anwendung für MIME-Typ ermitteln oder festlegen"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Ordner erstellen"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Dateien und Ordner auf Änderungen überwachen"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Die Orte ein- oder aushängen"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Eine oder mehrere Dateien verschieben"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Dateien mit der Standard-Anwendung öffnen"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Eine Datei umbenennen"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Eine oder mehrere Dateien löschen"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Aus der Standardeingabe lesen und speichern"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Ein Dateiattribut festlegen"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Dateien oder Ordner in den Papierkorb verschieben"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Den Inhalt der Orte in einer Baumstruktur auflisten"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Befehle:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "Verwenden Sie »%s«, um detaillierte Hilfe zu erhalten.\n"
@@ -1809,7 +1842,7 @@ msgid "Error writing to stdout"
 msgstr "Fehler beim Schreiben in die Standardausgabe"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1832,60 +1865,64 @@ msgstr ""
 "jedoch werden GIO-Orte statt lokaler Dateien verwendet; z.B. können\n"
 "Sie als Ort etwas wie »smb://server/ressource/datei.txt« angeben."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Keine Orte angegeben"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Kein Zielordner"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Fortschritt zeigen"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Vor Überschreiben nachfragen"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Alle Attribute übernehmen"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Vorhandene Zieldateien sichern"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Niemals symbolischen Verknüpfungen folgen"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Standardberechtigungen für das Ziel verwenden"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr "Standard-Dateibearbeitungszeitstempel für das Ziel verwenden"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "%s von %s übertragen (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "QUELLE"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "ZIEL"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Eine oder mehrere Dateien von QUELLE nach ZIEL kopieren."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1895,12 +1932,12 @@ msgstr ""
 "jedoch werden GIO-Orte statt lokaler Dateien verwendet; z.B. können\n"
 "Sie als Ort etwas wie »smb://server/ressource/datei.txt« angeben."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "Das Ziel »%s« ist kein Ordner"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: Soll »%s« überschrieben werden? "
@@ -1941,52 +1978,52 @@ msgstr "Anzeigename: %s\n"
 msgid "edit name: %s\n"
 msgstr "Name bearbeiten: %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "Name: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "Typ: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "Größe: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "verborgen\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "Adresse: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "Lokaler Pfad: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "Unix-Einhängepunkt: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Setzbare Attribute:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Namensraum der schreibbaren Attribute:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Informationen zu Orten zeigen."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2554,7 +2591,8 @@ msgstr ""
 "(Vorgabe ist der aktuelle Ordner)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "ORDNER"
 
@@ -2605,6 +2643,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "C-Bezeichnername für den generierten Quellcode"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "BEZEICHNER"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Der Ziel-C-Compiler (Voreinstellung: die CC-Umgebungsvariable)"
@@ -3131,130 +3173,130 @@ msgstr "Fehler beim Einlesen der Dateisystem-Information für %s: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "Enthaltender Einhängepunkt für Datei %s wurde nicht gefunden"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Wurzelordner kann nicht umbenannt werden"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Fehler beim Umbenennen der Datei %s: %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Datei kann nicht umbenannt werden, da der Dateiname bereits existiert"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Ungültiger Dateiname"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Fehler beim Öffnen der Datei »%s«: %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Fehler beim Entfernen der Datei »%s«: %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Fehler beim Verschieben der Datei %s in den Papierkorb: %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Papierkorb-Ordner %s konnte nicht angelegt werden: %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr ""
 "Oberster Ordner konnte zum Verschieben von %s in den Papierkorb nicht "
 "gefunden werden"
 
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr ""
 "Papierkorbaktionen zwischen systeminternen Einhängepunkten werden nicht "
 "unterstützt"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr "Papierkorb-Ordner %s konnte für %s nicht gefunden oder angelegt werden"
 
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "Löschprotokoll-Datei für %s konnte nicht angelegt werden: %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr ""
 "Datei %s kann nicht über Dateisystemgrenzen hinweg in den Papierkorb "
 "verschoben werden"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Datei %s kann nicht in den Papierkorb verschoben werden: %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Datei %s kann nicht in den Papierkorb verschoben werden"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Fehler beim Erstellen des Ordners »%s«: %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "Das Dateisystem unterstützt keine symbolische Verknüpfungen"
 
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Fehler beim Erstellen der symbolischen Verknüpfung %s: %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Fehler beim Verschieben der Datei %s: %s"
 
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Ordner kann nicht über Ordner verschoben werden"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "Erstellen der Sicherungsdatei gescheitert"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Fehler beim Entfernen der Zieldatei: %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Verschieben zwischen Einhängepunkten nicht unterstützt"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Konnte die Festplattenbelegung von %s nicht bestimmen: %s"
@@ -3276,121 +3318,121 @@ msgstr "Ungültiger erweiterter Attributname"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Fehler beim Setzen des erweiterten Attributs »%s«: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (ungültige Kodierung)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Fehler beim Holen der Informationen für Datei »%s«: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "Fehler beim Holen der Informationen für Dateideskriptor: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Ungültiger Attributtyp (»uint32« erwartet)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Ungültiger Attributtyp (»uint64« erwartet)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Ungültiger Attributtyp (»byte string« erwartet)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr ""
 "Zugriffsrechte für symbolische Verknüpfungen können nicht gesetzt werden"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Fehler beim Setzen der Zugriffsrechte: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Fehler beim Setzen des Besitzers: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "Symbolische Verknüpfung darf nicht NULL sein"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Fehler beim Setzen der symbolischen Verknüpfung: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr ""
 "Fehler beim Setzen der symbolischen Verknüpfung: Datei ist keine symbolische "
 "Verknüpfung"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr "Zusätzliche Nanosekunden %d für UNIX-Zeitstempel %lld sind negativ"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr ""
 "Zusätzliche Nanosekunden %d für UNIX-Zeitstempel %lld erreichen 1 Sekunde"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "UNIX-Zeitstempel %lld passt nicht in 64 Bit"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr ""
 "UNIX-Zeitstempel %lld ist außerhalb des von Windows unterstützten Bereichs"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "Dateiname »%s« kann nicht nach UTF-16 konvertiert werden"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "Datei »%s« kann nicht geöffnet werden: Windows-Fehler %lu"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr ""
 "Fehler beim Setzen der Änderungs- oder Zugriffszeit für Datei »%s«: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "Fehler beim Setzen der Zugriffsrechte oder der Zugriffszeit: %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "SELinux-Kontext darf nicht NULL sein"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "SELinux ist auf diesem System nicht aktiviert"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Fehler beim Setzen des SELinux-Kontexts: %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "Setzen des Attributs %s nicht unterstützt"
@@ -3444,7 +3486,7 @@ msgid "Error truncating file: %s"
 msgstr "Fehler beim Abschneiden der Datei: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Fehler beim Öffnen der Datei »%s«: %s"
@@ -3466,27 +3508,27 @@ msgstr "Die Datei wurde extern verändert"
 msgid "Error removing old file: %s"
 msgstr "Fehler beim Entfernen der alten Datei: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "Ungültiger GSeekType übergeben"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Ungültige Suchanfrage"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "GMemoryInputStream konnte nicht abgeschnitten werden"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Größe des Speicherausgabestroms ist nicht änderbar"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Größe des Speicherausgabestroms konnte nicht geändert werden"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3494,32 +3536,32 @@ msgstr ""
 "Für den Schreibvorgang erforderliche Speichermenge ist größer als der "
 "verfügbare Adressbereich"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Angeforderte Suche vor dem Beginn des Datenstroms"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Angeforderte Suche nach dem Ende des Datenstroms"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "Einhängepunkt unterstützt Aushängen nicht"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "Einhängepunkt unterstützt Auswerfen nicht"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "Einhängepunkt unterstützt nicht das Aushängen oder »unmount_with_operation«"
@@ -3527,41 +3569,41 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr "Einhängepunkt unterstützt Auswerfen oder »eject_with_operation« nicht"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "Einhängepunkt unterstützt erneutes Einhängen nicht"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "Einhängepunkt unterstützt Erraten des Inhaltstyps nicht"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr "Einhängepunkt unterstützt synchrones Erraten des Inhaltstyps nicht"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Rechnername »%s« enthält »[«, aber nicht »]«"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Das Netzwerk ist nicht erreichbar"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Rechner ist nicht erreichbar"
 
@@ -3589,7 +3631,7 @@ msgstr "NetworkManager läuft nicht"
 msgid "NetworkManager version too old"
 msgstr "Die Version von NetworkManager ist zu alt"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Ausgabedatenstrom unterstützt kein Schreiben"
 
@@ -3602,38 +3644,38 @@ msgstr "An %s übermittelte Vektorsumme ist zu groß"
 msgid "Source stream is already closed"
 msgstr "Quelldatenstrom ist bereits geschlossen"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Nicht näher angegebener Fehler beim Nachschlagen des Proxys"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Fehler beim Auflösen von »%s«: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s ist nicht implementiert"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Ungültige Domain"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "Die Ressource auf »%s« existiert nicht"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "Die Ressource auf »%s« konnte nicht entpackt werden"
@@ -3651,11 +3693,11 @@ msgstr "Die Ressource auf »%s« ist ein Ordner"
 msgid "Input stream doesn’t implement seek"
 msgstr "Eingabedatenstrom unterstützt kein Suchen"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Sektionen einer ELF-Datei auflisten, welche Ressourcen enthält"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3665,15 +3707,15 @@ msgstr ""
 "Falls SEKTION angegeben ist, nur die Ressourcen dieser Sektion auflisten\n"
 "Falls PFAD angegeben ist, nur die betreffenden Ressourcen auflisten"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "DATEI [PFAD]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SEKTION"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3685,15 +3727,15 @@ msgstr ""
 "Falls PFAD angegeben ist, nur die betreffenden Ressourcen auflisten\n"
 "Details enthalten Sektion, Größe und Kompression"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Eine Ressourcendatei in stdout auspacken"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "DATEIPFAD"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3721,7 +3763,7 @@ msgstr ""
 "Rufen Sie »gresource help BEFEHL« auf, um detaillierte Hilfe zu erhalten.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3736,20 +3778,20 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SEKTION   Ein (optionaler) Name einer ELF-Sektion\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  BEFEHL    Der (optionale) zu erklärende Befehl\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr ""
 "  DATEI     Eine ELF-Datei (ein Binary oder eine gemeinsame Bibliothek)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3757,20 +3799,20 @@ msgstr ""
 "  DATEI     Eine ELF-Datei (ein Binary oder eine gemeinsame Bibliothek)\n"
 "            oder eine kompilierte Ressourcendatei\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[PFAD]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr ""
 "  PFAD      Ein (optionaler) Ressourcenpfad (kann unvollständig sein)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "PFAD"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  PFAD      Ein Ressourcenpfad\n"
 
@@ -4006,218 +4048,218 @@ msgstr "Leerer Schema-Name wurde angegeben\n"
 msgid "No such key “%s”\n"
 msgstr "Kein derartiger Schlüssel »%s«\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Ungültiger Socket, wurde nicht initialisiert"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Ungültiger Socket, Initialisierung schlug fehl wegen: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "Der Socket ist bereits geschlossen"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1438
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "Zeitüberschreitung bei Ein-/Ausgabeoperation des Sockets"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "GSocket wird erstellt von Dateideskriptor: %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Socket kann nicht angelegt werden: %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "Eine unbekannte Familie wurde angegeben"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "Ein unbekanntes Protokoll wurde angegeben"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr ""
 "Datagramm-Operationen können nicht auf einem Nicht-Datagramm-Socket "
 "ausgeführt werden."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr ""
 "Datagramm-Operationen können nicht auf einem Socket mit gesetzter "
 "Zeitüberschreitung ausgeführt werden."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "Lokale Adresse konnte nicht gelesen werden: %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "Entfernte Adresse konnte nicht gelesen werden: %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "Es konnte nicht gelauscht werden: %s"
 
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Fehler beim Binden an Adresse %s: %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Fehler beim Beitreten zur Multicast-Gruppe: %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Fehler beim Verlassen der Multicast-Gruppe: %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Quellen-spezifisches Multicast wird nicht unterstützt"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Nicht unterstützte Socket-Familie"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "Quellen-spezifisch ist keine IPv4-Adresse"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Schnittstellenname ist zu lang"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Schnittstelle nicht gefunden: %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Quellen-spezifisches IPv4-Multicast wird nicht unterstützt"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Quellen-spezifisches IPv6-Multicast wird nicht unterstützt"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Fehler bei Annahme der Verbindung: %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Verbindungsvorgang läuft"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Ausstehender Fehler konnte nicht erhalten werden: "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Fehler beim Erhalt von Daten: %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Fehler beim Senden von Daten: %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Socket kann nicht heruntergefahren werden: %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Fehler beim Schließen des Sockets: %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "Es wird auf eine Socket-Bedingung gewartet: %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Nachricht konnte nicht gesendet werden: %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Nachrichtenträger sind zu lang"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Fehler beim Senden der Nachricht: %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "GSocketControlMessage wird unter Windows nicht unterstützt"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Fehler beim Empfang der Nachricht: %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Socket-Berechtigungen konnten nicht gelesen werden: %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr ""
 "g_socket_get_credentials ist für dieses Betriebssystem nicht implementiert"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Verbindung zum Proxy-Server %s konnte nicht aufgebaut werden: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Verbindung mit %s ist gescheitert: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Verbindung ist gescheitert: "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "Nicht-TCP-Verbindung über Proxy wird nicht unterstützt."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "Proxy-Protokoll »%s« wird nicht unterstützt."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "Lauscher ist bereits geschlossen"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "Der hinzugefügte Socket ist geschlossen"
 
@@ -4310,97 +4352,97 @@ msgstr "SOCKSv5-Proxy unterstützt den angegebenen Adresstyp nicht."
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "Unbekannter Fehler im SOCKSv5-Proxy."
 
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr ""
 "Weiterleitung für Kommunikation mit Kindprozess (%s) konnte nicht erzeugt "
 "werden"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Weiterleitungen werden auf dieser Plattform nicht unterstützt"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Version %d der GThemedIcon-Kodierung kann nicht verarbeitet werden"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Es wurden keine gültigen Adressen gefunden"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Fehler beim Rückwärtsauflösen von »%s«: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr "Fehler bei der Verarbeitung des DNS %s-Eintrags: ungültiges DNS-Paket"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Kein DNS-Eintrag des angeforderten Typs für »%s«"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "»%s« kann vorübergehend nicht aufgelöst werden"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Fehler beim Auflösen von »%s«"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Ungültiges DNS-Paket"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Fehler bei der Verarbeitung der DNS-Antwort zu »%s«: "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Kein PEM-enkodierter geheimer Schlüssel gefunden"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "PEM-enkodierter geheimer Schlüssel konnte nicht entschlüsselt werden"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "PEM-enkodierter geheimer Schlüssel konnte nicht verarbeitet werden"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Kein PEM-enkodiertes Zertifikat gefunden"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "PEM-enkodiertes Zertifikat konnte nicht verarbeitet werden"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "Das aktuelle TLS-Backend unterstützt PKCS #12 nicht"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr ""
 "Das GTlsBackend unterstützt die Erstellung von PKCS #11-Zertifikaten nicht"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4410,7 +4452,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4418,140 +4460,151 @@ msgstr ""
 "Passwörter wurden mehrfach inkorrekt eingegeben, daher wird Ihr Zugriff nach "
 "weiteren Fehleingaben gesperrt."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "Das eingegebene Passwort ist ungültig."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "Senden von FD wird nicht unterstützt"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "1 Kontrollnachricht wird erwartet, %d wurde erhalten"
 msgstr[1] "1 Kontrollnachricht wird erwartet, %d wurden erhalten"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Unerwartete Art von Zusatzdaten"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "Ein Dateideskriptor wird erwartet, aber %d wurde erhalten\n"
 msgstr[1] "Ein Dateideskriptor wird erwartet, aber %d wurden erhalten\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Ungültiger Dateideskriptor wurde erhalten"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "Erhalten von FD wird nicht unterstützt"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Fehler beim Senden der Anmeldedaten: "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr ""
 "Fehler bei der Überprüfung, ob SO_PASSCRED für Socket aktiviert ist: %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Fehler beim Aktivieren von SO_PASSCRED: %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Erwartet wurde der Empfang eines einzelnen Bytes als Anmeldedaten, jedoch "
 "null Bytes gelesen"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Kontrollnachricht wurde nicht erwartet, %d wurde erhalten"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Fehler beim Deaktivieren von SO_PASSCRED: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Fehler beim Lesen aus dem Dateideskriptor: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Fehler beim Schließen des Dateideskriptors: %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "Wurzelordner des Dateisystems"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Fehler beim Schreiben in den Dateideskriptor: %s"
 
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr ""
 "Abstrakte Unix Domänen-Socket-Adresse wird auf diesem System nicht "
 "unterstützt"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "Datenträger unterstützt Auswerfen nicht"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "Datenträger unterstützt weder Auswerfen noch »eject_with_operation«"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr ""
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Fehler beim Lesen aus dem Handler: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Fehler beim Schließen des Handlers: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Fehler beim Schreiben in das Handle: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Nicht genügend freier Speicher"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Interner Fehler: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Weitere Eingaben erforderlich"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Ungültige komprimierte Daten"
 
@@ -4579,156 +4632,294 @@ msgstr "Einen D-Bus-Dienst ausführen"
 msgid "Wrong args\n"
 msgstr "Falsche Argumente\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Fehler beim Öffnen von »%s«: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Fehler: Die Ausgabe konnte nicht vollständig geschrieben werden: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Fehler: »%s« konnte nicht in »%s« umbenannt werden: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Ordner in den Suchpfad von GIR einbeziehen"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Ausgabedatei"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Gemeinsam verwendete Bibliothek"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Fehlerdiagnose-Nachrichten anzeigen"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Ausführliche Nachrichten anzeigen"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Die Programm-Version anzeigen und beenden"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Fehler bei der Verarbeitung der Argumente: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Bitte geben Sie genau eine Eingabedatei an"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Fehler beim Verarbeiten der Datei »%s«: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Bauen der typelib für das Modul »%s« ist fehlgeschlagen"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Ungültige typelib für das Modul »%s«: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Alle verfügbaren Informationen anzeigen"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Fehler beim Verarbeiten: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Keine Eingabedateien"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "»%s« konnte nicht angelegt werden: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "typelib »%s« konnte nicht angelegt werden: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Laden der typelib ist fehlgeschlagen: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Warnung: %u Module wurden ausgelassen"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Version von Typelib zum Inspizieren"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSION"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Die gemeinsam verwendeten Bibliotheken auflisten, die typelib benötigt"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Andere typelibs auflisten, welche die inspizierte typelib erfordern"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "Die zu inspizierende typelib"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "NAMENSRAUM"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- GI typelib inspizieren"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Fehler beim Verarbeiten der Befehlszeilenoptionen: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Bitte geben Sie genau einen Namensraum an"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Bitte geben Sie »--print-shlibs«, »--print-typelibs« oder beides an"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Unerwartetes Attribut »%s« des Elements »%s«"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "Attribut »%s« des Elements »%s« konnte nicht gefunden werden"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Unerwarteter Tag »%s«; Tag »%s« wird erwartet"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Unerwarteter Tag »%s« innerhalb von »%s«"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Ungültiges Datum bzw. Uhrzeit »%s« in der Lesezeichendatei"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr "Es wurde keine gültige Lesezeichendatei in den Datenordnern gefunden"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Es existiert bereits ein Lesezeichen für die Adresse »%s«"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Es konnte kein Lesezeichen für die Adresse »%s« gefunden werden."
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Es ist kein MIME-Typ im Lesezeichen für die Adresse »%s« definiert."
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr ""
 "Es konnte keine »privat«-Markierung für das Lesezeichen für die Adresse »%s« "
 "gefunden werden."
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr ""
 "Es wurden keine Gruppen für das Lesezeichen für die Adresse »%s« festgelegt."
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr ""
 "Es wurde keine Anwendung namens »%s« gefunden, die ein Lesezeichen für »%s« "
 "registriert hat."
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr ""
 "Die Befehlszeile »%s« konnte nicht mit der Adresse »%s« verknüpft werden."
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Nicht darstellbares Zeichen in Umwandlungsausgabe"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Bruchstückhafte Zeichenfolge am Eingabeende"
 
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr "Notnagel »%s« kann nicht in Kodierung »%s« umgewandelt werden"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Eingebettetes NUL-Byte in Umwandlungseingabe"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Eingebettetes NUL-Byte in Umwandlungsausgabe"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr ""
 "Die Adresse »%s« ist keine absolute Adresse, die das »file«-Schema verwendet"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "Die Adresse »%s« ist ungültig"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "Der Rechnername der Adresse »%s« ist ungültig"
 
 # CHECK
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "Die Adresse »%s« enthält ungültige Escape-Zeichen"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "Der Pfadname »%s« ist kein absoluter Pfad"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %e. %b %Y %T %Z"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%d.%m.%y"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%I:%M:%S"
@@ -4749,62 +4940,62 @@ msgstr "%I:%M:%S"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "Januar"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "Februar"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "März"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "April"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "Mai"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "Juni"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "Juli"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "August"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "September"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "Oktober"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "November"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "Dezember"
@@ -4826,132 +5017,132 @@ msgstr "Dezember"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "Jan"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "Feb"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "Mär"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "Apr"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "Mai"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "Jun"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "Jul"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "Aug"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "Sep"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "Okt"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "Nov"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "Dez"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "Montag"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "Dienstag"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "Mittwoch"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "Donnerstag"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "Freitag"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "Samstag"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "Sonntag"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "Mo"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "Di"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "Mi"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "Do"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "Fr"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "Sa"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "So"
@@ -4973,62 +5164,62 @@ msgstr "So"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "Januar"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "Februar"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "März"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "April"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "Mai"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "Juni"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "Juli"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "August"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "September"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "Oktober"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "November"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "Dezember"
@@ -5050,197 +5241,203 @@ msgstr "Dezember"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "Jan"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "Feb"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "Mär"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "Apr"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "Mai"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "Jun"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "Jul"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "Aug"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "Sep"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "Okt"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "Nov"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "Dez"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "AM"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "PM"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Fehler beim Öffnen des Ordners »%s«: %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "%lu Byte konnte nicht zugeordnet werden, um Datei »%s« zu lesen"
-msgstr[1] "%lu Bytes konnten nicht zugeordnet werden, um Datei »%s« zu lesen"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "%s konnte nicht reserviert werden, um Datei »%s« zu lesen"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Fehler beim Lesen der Datei »%s«: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Datei »%s« ist zu groß"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Aus der Datei »%s« konnte nicht gelesen werden: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Datei »%s« konnte nicht geöffnet werden: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr ""
 "Attribute der Datei »%s« konnten nicht ermittelt werden: fstat() "
 "gescheitert: %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Datei »%s« konnte nicht geöffnet werden: fdopen() gescheitert: %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr ""
 "Datei »%s« konnte nicht in »%s« umbenannt werden: g_rename() ist "
 "gescheitert: %s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "Schreiben der Datei »%s« schlug fehl: ftruncate() ist gescheitert: %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Schreiben der Datei »%s« schlug fehl: write() ist gescheitert: %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr ""
 "Datei »%s« konnte nicht geschrieben werden: fsync() ist gescheitert: %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Datei »%s« konnte nicht angelegt werden: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr ""
 "Die vorhandene Datei »%s« konnte nicht entfernt werden: g_unlink() ist "
 "gescheitert: %s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Vorlage »%s« ungültig, sollte kein »%s« enthalten"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Vorlage »%s« enthält nicht XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Die symbolische Verknüpfung »%s« konnte nicht gelesen werden: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "Konverter von »%s« in »%s« konnte nicht geöffnet werden: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr "Raw-read in g_io_channel_read_line_string nicht möglich"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "Nicht konvertierte Daten befinden sich noch im Lesepuffer"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "Kanal endet mit einem Teilzeichen"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Raw-read in g_io_channel_read_to_end nicht möglich"
 
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr "Es wurde keine gültige Schlüsselwertedatei in den Suchordnern gefunden"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "Keine reguläre Datei"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5248,45 +5445,45 @@ msgstr ""
 "Die Schlüsselwertedatei enthält die Zeile »%s«, welche kein zulässiges "
 "Schlüssel-Wert-Paar, keine Gruppe und kein Kommentar ist"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Ungültiger Gruppenname: %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Die Schlüsselwertedatei beginnt nicht mit einer Gruppe"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Ungültiger Schlüsselname: %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "Die Schlüsselwertedatei enthält die nicht unterstützte Kodierung »%s«"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Die Schlüsselwertedatei enthält nicht die Gruppe »%s«"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Die Schlüsselwertedatei hat keinen Schlüssel »%s« in der Gruppe »%s«"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr ""
 "Die Schlüsselwertedatei enthält den Schlüssel »%s« mit dem Wert »%s«, der "
 "nicht in UTF-8 kodiert ist"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
@@ -5294,7 +5491,7 @@ msgstr ""
 "Die Schlüsselwertedatei enthält den Schlüssel »%s« mit einem Wert, der nicht "
 "interpretiert werden konnte."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5303,39 +5500,39 @@ msgstr ""
 "Die Schlüsselwertedatei enthält den Schlüssel »%s« in der Gruppe »%s« mit "
 "einem Wert, der nicht interpretiert werden konnte."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr ""
 "Der Schlüssel »%s« in der Gruppe »%s« enthält den Wert »%s«, obwohl %s "
 "erwartet wurde"
 
-#: glib/gkeyfile.c:4356
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Die Schlüsselwertedatei enthält ein Escape-Zeichen am Zeilenende"
 
 # CHECK
-#: glib/gkeyfile.c:4378
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr "Die Schlüsselwertedatei enthält das ungültige Escape-Zeichen »%s«"
 
-#: glib/gkeyfile.c:4530
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "Der Wert »%s« konnte nicht als Zahl interpretiert werden."
 
-#: glib/gkeyfile.c:4544
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "Ganzzahliger Wert »%s« ist außerhalb des Wertebereiches"
 
-#: glib/gkeyfile.c:4577
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "Der Wert »%s« konnte nicht als Gleitkommazahl interpretiert werden."
 
-#: glib/gkeyfile.c:4616
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr ""
@@ -5358,32 +5555,32 @@ msgstr "»%s%s%s%s« konnte nicht abgebildet werden: mmap() ist gescheitert: %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "Datei »%s« konnte nicht geöffnet werden: open() ist gescheitert: %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Fehler in Zeile %d, Zeichen %d: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "Ungültiger UTF-8-kodierter Text im Namen – »%s« ist nicht gültig"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "»%s« ist kein gültiger Name"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "»%s« ist kein gültiger Name: »%c«"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Fehler in Zeile %d: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5392,7 +5589,7 @@ msgstr ""
 "»%-.*s«, was eine Zahl in einer Zeichenreferenz (wie &#234;) sein sollte, "
 "konnte nicht analysiert werden – vielleicht ist die Zahl zu groß"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5402,24 +5599,24 @@ msgstr ""
 "&-Zeichen benutzt, ohne eine Entität beginnen zu wollen – umschreiben Sie "
 "das »&« als &amp;"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "Zeichenreferenz »%-.*s« kodiert kein zulässiges Zeichen"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Leere Entität »&;« gefunden; gültige Entitäten sind &amp; &quot; &lt; &gt; "
 "&apos;"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "Entitätenname »%-.*s« ist unbekannt"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5428,11 +5625,11 @@ msgstr ""
 "Zeichen benutzt, ohne eine Entität beginnen zu wollen – umschreiben Sie das "
 "»&« als &amp;"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Dokument muss mit einem Element beginnen (e.g. <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5441,7 +5638,7 @@ msgstr ""
 "»%s« ist kein gültiges Zeichen nach einem »<«-Zeichen; es darf keinen "
 "Elementnamen beginnen"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5450,12 +5647,12 @@ msgstr ""
 "Seltsames Zeichen »%s«, »>« erwartet um Start-Tag des leeren Elements »%s« "
 "abzuschließen"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "Zu viele Attribute im Element »%s«"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5463,7 +5660,7 @@ msgstr ""
 "Seltsames Zeichen »%s«, »=« wird nach dem Attributnamen »%s« des Elements "
 "»%s« erwartet"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5474,7 +5671,7 @@ msgstr ""
 "»/« erwartet, um das Start-Tag des Elements »%s« abzuschließen; vielleicht "
 "haben Sie ein ungültiges Zeichen in einem Attributnamen benutzt"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5484,7 +5681,7 @@ msgstr ""
 "Elements »%s« wurde ein Anführungszeichen nach dem Gleichheitszeichen "
 "erwartet"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5493,7 +5690,7 @@ msgstr ""
 "»%s« ist kein gültiges Zeichen, wenn es auf die Zeichen »</« folgt; »%s« "
 "darf keinen Elementnamen beginnen"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5502,26 +5699,26 @@ msgstr ""
 "»%s« ist kein gültiges Zeichen, wenn es auf den schließenden Elementnamen "
 "»%s« folgt; das erlaubte Zeichen ist »>«"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "Element »%s« wurde geschlossen, kein Element ist derzeit offen"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr ""
 "Element »%s« wurde geschlossen, aber das derzeit offene Element ist »%s«"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Dokument ist leer oder enthält nur Leerraum"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr "Dokument endete unerwartet nach einer offenen spitzen Klammer »<«"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5530,7 +5727,7 @@ msgstr ""
 "Dokument endete unerwartet mit noch offenen Elementen – »%s« war das letzte "
 "offene Element"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5539,19 +5736,19 @@ msgstr ""
 "Dokument endete unerwartet, es wurde eine spitze Klammer »>«, die das Tag "
 "<%s/> schließt, erwartet"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr "Dokument endete unerwartet innerhalb eines Elementnamens"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr "Dokument endete unerwartet innerhalb eines Attributnamens"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr "Dokument endete unerwartet innerhalb eines Element-öffnenden Tags."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5559,270 +5756,270 @@ msgstr ""
 "Dokument endete unerwartet nach dem Gleichheitszeichen, das einem "
 "Attributnamen folgt; kein Attributwert"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr "Dokument endete unerwartet innerhalb eines Attributwertes"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr ""
 "Dokument endete unerwartet innerhalb eines schließenden Tags für das Element "
 "»%s«"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
 "Dokument endete unerwartet innerhalb eines schließenden Tags für ein "
 "ungeöffnetes Element"
 
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Dokument endete unerwartet innerhalb eines Kommentars oder "
 "Verarbeitungsanweisung"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[OPTION …]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Hilfeoptionen:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Hilfeoptionen anzeigen"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Alle Hilfeoptionen anzeigen"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Anwendungsoptionen:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Optionen:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "»%s« konnte nicht als ganzzahliger Wert für %s interpretiert werden"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "Ganzzahliger Wert »%s« für %s ist außerhalb des Bereiches"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "»%s« konnte nicht als »double«-Wert für %s interpretiert werden"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "»double«-Wert »%s« für %s ist außerhalb des Bereiches"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Fehler beim Verarbeiten der Option: %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Für %s wird ein Argument benötigt"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Unbekannte Option %s"
 
-#: glib/gregex.c:480
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "Beschädigtes Objekt"
 
-#: glib/gregex.c:482
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "Nicht genügend freier Speicher"
 
-#: glib/gregex.c:497
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "Interner Fehler"
 
-#: glib/gregex.c:499
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr ""
 "Der Ausdruck enthält Elemente, die teilweise Übereinstimmung nicht "
 "unterstützen"
 
-#: glib/gregex.c:501
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "Rückreferenzen als Bedingungen werden für teilweise Übereinstimmung nicht "
 "unterstützt"
 
-#: glib/gregex.c:507
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "Rekursionslimit wurde erreicht"
 
-#: glib/gregex.c:509
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "fehlerhafter Versatz"
 
-#: glib/gregex.c:511
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "Rekursionsschleife"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:514
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr ""
 "Übereinstimmungsmodus wurde angefragt, der nicht für JIT kompiliert ist"
 
-#: glib/gregex.c:535 glib/gregex.c:1851
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "Unbekannter Fehler"
 
-#: glib/gregex.c:556
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ am Ende des Ausdrucks"
 
-#: glib/gregex.c:560
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c am Ende des Ausdrucks"
 
-#: glib/gregex.c:565
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "Unbekanntes Zeichen nach \\"
 
 # CHECK
-#: glib/gregex.c:569
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "Ziffern wirkungslos in {}-Quantifizierer"
 
-#: glib/gregex.c:573
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "Ziffer zu groß in {}-Quantifizierer"
 
-#: glib/gregex.c:577
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "Terminierendes ] für Zeichenklasse fehlt"
 
-#: glib/gregex.c:581
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "Ungültige Escape-Sequenz in Zeichenklasse"
 
 # CHECK
-#: glib/gregex.c:585
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "Bereich wirkungslos in Zeichenklasse"
 
-#: glib/gregex.c:590
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "Nichts zum Wiederholen"
 
-#: glib/gregex.c:594
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "Unbekanntes Zeichen nach (? oder (?-"
 
-#: glib/gregex.c:598
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr "POSIX-benannte Klassen werden nur innerhalb einer Klasse unterstützt"
 
-#: glib/gregex.c:602
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "POSIX-Elementverknüpfungen nicht unterstützt"
 
-#: glib/gregex.c:608
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr "Abschließende ) fehlt"
 
-#: glib/gregex.c:612
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "Referenz auf nicht existierenden Unterausdruck"
 
-#: glib/gregex.c:616
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "fehlende ) nach Kommentar"
 
-#: glib/gregex.c:620
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "Regulärer Ausdruck zu groß"
 
-#: glib/gregex.c:624
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "Falsch formatierte Zahl oder Name nach (?("
 
-#: glib/gregex.c:628
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "Rückblickende Annahme hat keine feste Länge"
 
-#: glib/gregex.c:632
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "Bedingte Gruppe enthält mehr als zwei Verzweigungen"
 
-#: glib/gregex.c:636
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "Annahme erwartet nach (?("
 
-#: glib/gregex.c:640
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "Eine nummerierte Referenz darf nicht Null sein"
 
-#: glib/gregex.c:644
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "Unbekannter POSIX-Klassenname"
 
-#: glib/gregex.c:649
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "Wert in \\x{…}-Sequenz ist zu groß"
 
-#: glib/gregex.c:653
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C nicht erlaubt in rückblickender Annahme"
 
-#: glib/gregex.c:657
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "Terminierung im Namen des Unterausdrucks fehlt"
 
-#: glib/gregex.c:661
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "Zwei benannte Unterausdrücke haben den gleichen Namen"
 
-#: glib/gregex.c:665
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "Fehlerhafte \\P- oder \\p-Sequenz"
 
-#: glib/gregex.c:669
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "Unbekannte Eigenschaftsname nach \\P oder \\p"
 
-#: glib/gregex.c:673
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "Name des Unterausdrucks ist zu lang (maximal 32 Zeichen)"
 
-#: glib/gregex.c:677
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "Zu viele benannte Unterausdrücke (maximal 10.000)"
 
-#: glib/gregex.c:681
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "Oktaler Wert ist größer als \\377"
 
-#: glib/gregex.c:685
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "DEFINE-Gruppe enthält mehr als eine Verzweigung"
 
-#: glib/gregex.c:689
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "Inkonsistente NEWLINE-Optionen"
 
-#: glib/gregex.c:693
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5830,244 +6027,244 @@ msgstr ""
 "Auf \\g folgt kein eingeklammerter, in eckigen Klammern eingeklammerter oder "
 "zitierter Name oder eine Zahl oder eine einfache Zahl"
 
-#: glib/gregex.c:698
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "Ein Argument ist für (*ACCEPT), (*FAIL), oder (*COMMIT) nicht erlaubt"
 
-#: glib/gregex.c:702
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB) nicht erkannt"
 
-#: glib/gregex.c:706
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "Zahl ist zu groß"
 
-#: glib/gregex.c:710
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "Name des Unterausdrucks nach (?& fehlt"
 
-#: glib/gregex.c:714
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr ""
 "Verschiedene Namen für Unterausdrücke der gleichen Nummer sind nicht erlaubt"
 
-#: glib/gregex.c:718
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) benötigt ein Argument"
 
-#: glib/gregex.c:722
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "Auf \\c muss ein ASCII-Zeichen folgen"
 
-#: glib/gregex.c:726
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "Auf \\k folgt kein eingeklammerter, in eckigen Klammern eingeklammerter oder "
 "zitierter Name"
 
-#: glib/gregex.c:730
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N wird in einer Klasse nicht unterstützt"
 
-#: glib/gregex.c:734
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "Name ist zu lang in (*MARK), (*PRUNE), (*SKIP), oder (*THEN)"
 
-#: glib/gregex.c:738 glib/gregex.c:874
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "Code-Überlauf"
 
-#: glib/gregex.c:742
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "Unbekanntes Zeichen nach (?P"
 
-#: glib/gregex.c:746
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "Überlauf beim Kompilieren des Arbeitsbereichs"
 
-#: glib/gregex.c:750
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr ""
 "Bereits geprüfter, referenzierter Unterausdruck konnte nicht gefunden werden"
 
-#: glib/gregex.c:873 glib/gregex.c:1135 glib/gregex.c:2457
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "Fehler beim Anwenden des regulären Ausdrucks %s: %s"
 
-#: glib/gregex.c:1735
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "PCRE-Bibliothek wurde ohne UTF8-Unterstützung kompiliert"
 
-#: glib/gregex.c:1743
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr ""
 "PCRE-Bibliothek wurde mit Unterstützung für nicht-kompatible Optionen "
 "kompiliert"
 
-#: glib/gregex.c:1860
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr ""
 "Fehler beim Kompilieren des regulären Ausdrucks »%s« bei Zeichen %s: %s"
 
-#: glib/gregex.c:2900
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "Hexadezimalzahl oder »}« erwartet"
 
-#: glib/gregex.c:2916
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "Hexadezimalzahl erwartet"
 
-#: glib/gregex.c:2956
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "Fehlendes »<» in symbolischer Referenz"
 
-#: glib/gregex.c:2965
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "Unvollendete symbolische Referenz"
 
-#: glib/gregex.c:2972
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "Symbolische Referenz der Länge 0"
 
-#: glib/gregex.c:2983
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "Ziffer erwartet"
 
-#: glib/gregex.c:3001
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "Illegale symbolische Referenz"
 
-#: glib/gregex.c:3064
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "Verirrtes abschließendes »\\«"
 
-#: glib/gregex.c:3068
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "Unbekannte Escape-Sequenz"
 
-#: glib/gregex.c:3078
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr "Fehler beim Verarbeiten des Ersetzungstextes »%s« an Zeichen %lu: %s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Zitierter Text beginnt nicht mit einem Anführungszeichen"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr ""
 "Unbalanciertes Anführungszeichen in Befehlszeile oder anderem Text in "
 "Shellquotes"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr "Text endete nach einem »\\«-Zeichen. (Der Text war »%s«)"
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Text endete, bevor ein passendes Anführungszeichen für %c gefunden wurde. "
 "(Der Text war »%s«)"
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Text war leer (oder enthielt nur Leerraum)"
 
-#: glib/gspawn.c:320
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "Daten vom Kindprozess konnten nicht gelesen werden (%s)"
 
-#: glib/gspawn.c:473
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr "Unerwarteter Fehler beim Lesen von Daten eines Kindprozesses (%s)"
 
-#: glib/gspawn.c:558
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Unerwarteter Fehler in waitpid() (%s)"
 
-#: glib/gspawn.c:1180 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Der Kindprozess wurde mit Status %ld beendet"
 
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Der Kindprozess wurde mit Signal %ld beendet"
 
-#: glib/gspawn.c:1195
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Der Kindprozess wurde mit Signal %ld beendet"
 
-#: glib/gspawn.c:1202
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "Der Kindprozess wurde gewaltsam beendet"
 
-#: glib/gspawn.c:2032 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "Lesen aus Weiterleitung zum Kind (%s) gescheitert"
 
-#: glib/gspawn.c:2404
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "Abspalten des Kindprozesses »%s« gescheitert (%s)"
 
-#: glib/gspawn.c:2530
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Abspalten gescheitert (%s)"
 
-#: glib/gspawn.c:2690 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "In Ordner »%s« (%s) konnte nicht gewechselt werden"
 
-#: glib/gspawn.c:2700
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "Kindprozess »%s« konnte nicht ausgeführt werden (%s)"
 
-#: glib/gspawn.c:2710
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr ""
 "Öffnen der Datei zur Neuzuweisung des Datei-Deskriptors ist fehlgeschlagen "
 "(%s)"
 
-#: glib/gspawn.c:2718
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr ""
 "Duplizieren des Datei-Deskriptors für Kindprozess ist fehlgeschlagen (%s)"
 
-#: glib/gspawn.c:2727
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Abspalten des Kindprozesses gescheitert (%s)"
 
-#: glib/gspawn.c:2735
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr ""
 "Schließen des Datei-Deskriptors des Kindprozesses ist fehlgeschlagen (%s)"
 
-#: glib/gspawn.c:2743
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Unbekannter Fehler beim Ausführen des Kindprozesses »%s«"
 
-#: glib/gspawn.c:2767
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr ""
@@ -6126,78 +6323,78 @@ msgstr ""
 "Unerwarteter Fehler in g_io_channel_win32_poll() beim Lesen aus dem "
 "Kindprozess"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "Leere Zeichenkette ist keine Zahl"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "»%s« ist keine vorzeichenbehaftete Zahl"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "Zahl »%s« ist außerhalb des zulässigen Bereichs [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "»%s« ist keine vorzeichenlose Zahl"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "Unzulässige %-Kodierung in Adresse"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Unzulässiges Zeichen in Adresse"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Nicht-UTF-8-Zeichen in Adresse"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Ungültige IPv6-Adresse »%.*s« in Adresse"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Unzulässig kodierte IP-Adresse »%.*s« in Adresse"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Unzulässig internationalisierter Rechnername »%.*s« in Adresse"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Port »%.*s« in Adresse konnte nicht verarbeitet werden"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "Port »%.*s« in Adresse ist außerhalb des Bereiches"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "Adresse »%s« ist keine absolute Adresse"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "Adresse »%s« hat keine Host-Komponente"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "Adresse ist nicht absolut und es wurde keine Basis-Adresse angegeben"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "»=« und Parameter-Wert fehlen"
 
@@ -6278,65 +6475,65 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "KB"
+msgid "kbit"
+msgstr "KBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "MB"
+msgid "Mbit"
+msgstr "MBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "GB"
+msgid "Gbit"
+msgstr "GBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "TB"
+msgid "Tbit"
+msgstr "TBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "PB"
+msgid "Pbit"
+msgstr "PBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "EB"
+msgid "Ebit"
+msgstr "EBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "KiB"
+msgid "Kibit"
+msgstr "KiBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "MiB"
+msgid "Mibit"
+msgstr "MiBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "GiB"
+msgid "Gibit"
+msgstr "GiBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "TiB"
+msgid "Tibit"
+msgstr "TiBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "PiB"
+msgid "Pibit"
+msgstr "PiBit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "EiB"
+msgid "Eibit"
+msgstr "EiBit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6441,6 +6638,47 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~ msgid ""
+#~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
+#~ msgstr ""
+#~ "METHOD_RETURN-Meldung: Kopfzeilenfeld REPLY_SERIAL fehlt oder ist ungültig"
+
+#~ msgid "kb"
+#~ msgstr "KB"
+
+#~ msgid "Mb"
+#~ msgstr "MB"
+
+#~ msgid "Gb"
+#~ msgstr "GB"
+
+#~ msgid "Tb"
+#~ msgstr "TB"
+
+#~ msgid "Pb"
+#~ msgstr "PB"
+
+#~ msgid "Eb"
+#~ msgstr "EB"
+
+#~ msgid "Kib"
+#~ msgstr "KiB"
+
+#~ msgid "Mib"
+#~ msgstr "MiB"
+
+#~ msgid "Gib"
+#~ msgstr "GiB"
+
+#~ msgid "Tib"
+#~ msgstr "TiB"
+
+#~ msgid "Pib"
+#~ msgstr "PiB"
+
+#~ msgid "Eib"
+#~ msgstr "EiB"
+
 #~ msgid "GApplication options"
 #~ msgstr "Optionen für GApplication"
 
index 25a010d..edf1c0f 100644 (file)
--- a/po/fa.po
+++ b/po/fa.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: glib HEAD\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
-"POT-Creation-Date: 2024-03-01 17:06+0000\n"
-"PO-Revision-Date: 2024-03-07 01:06+0330\n"
+"POT-Creation-Date: 2024-03-27 18:59+0000\n"
+"PO-Revision-Date: 2024-04-05 17:26+0330\n"
 "Last-Translator: Danial Behzadi <dani.behzi@ubuntu.com>\n"
 "Language-Team: Persian <>\n"
 "Language: fa\n"
@@ -2610,7 +2610,7 @@ msgstr "شکست در تجزیهٔ مقدار <default>گونهٔ «%s»: "
 
 #: gio/glib-compile-schemas.c:494
 msgid "<choices> cannot be specified for keys tagged as having an enumerated type"
-msgstr ""
+msgstr "<choices> را نمی توان برای کلیدهایی که گونهٔ شمارشی دارند مشخص کرد"
 
 #: gio/glib-compile-schemas.c:503
 msgid "<choices> already specified for this key"
@@ -2619,7 +2619,7 @@ msgstr "<choices> از پیش برای این کلید مشخّص شده"
 #: gio/glib-compile-schemas.c:515
 #, c-format
 msgid "<choices> not allowed for keys of type “%s”"
-msgstr ""
+msgstr "<choices> برای کلیدهایی از گونهٔ «%s» مجاز نیست."
 
 #: gio/glib-compile-schemas.c:531
 #, c-format
@@ -2629,7 +2629,7 @@ msgstr "<choice value='%s'/> از پیش داده شده"
 #: gio/glib-compile-schemas.c:546
 #, c-format
 msgid "<choices> must contain at least one <choice>"
-msgstr ""
+msgstr "<choices> باید کمینه یک <choice> داشته باشد"
 
 #: gio/glib-compile-schemas.c:560
 msgid "<aliases> already specified for this key"
@@ -2640,17 +2640,19 @@ msgid ""
 "<aliases> can only be specified for keys with enumerated or flags types or after "
 "<choices>"
 msgstr ""
+"<aliases> را تنها می‌توان برای کلیدهایی با انواع شمارشی یا گونه‌های پرچم‌ یا بعد از "
+"<choices> مشخص کرد."
 
 #: gio/glib-compile-schemas.c:583
 #, c-format
 msgid ""
 "<alias value='%s'/> given when “%s” is already a member of the enumerated type"
-msgstr ""
+msgstr "<alias value='%s'/> داده شده ولی «%s» عضوی از گونهٔ شمارشی است"
 
 #: gio/glib-compile-schemas.c:589
 #, c-format
 msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
-msgstr ""
+msgstr "<alias value='%s'/> داده شده ولی <choice value='%s'/> از پیش داده شده بود"
 
 #: gio/glib-compile-schemas.c:597
 #, c-format
@@ -2660,7 +2662,7 @@ msgstr "<alias value='%s'/> از پیش مشخّص شده"
 #: gio/glib-compile-schemas.c:607
 #, c-format
 msgid "alias target “%s” is not in enumerated type"
-msgstr ""
+msgstr "هدف مستعار \"%s\" در گونهٔ شمارشی نیست"
 
 #: gio/glib-compile-schemas.c:608
 #, c-format
@@ -2670,7 +2672,7 @@ msgstr "مقصد جایگزینی «%s» در <choices> نیست"
 #: gio/glib-compile-schemas.c:623
 #, c-format
 msgid "<aliases> must contain at least one <alias>"
-msgstr ""
+msgstr "<aliases> باید کمینه یک <alias> داشته باشد"
 
 #: gio/glib-compile-schemas.c:797
 msgid "Empty names are not permitted"
@@ -2679,7 +2681,7 @@ msgstr "نام‌های خالی مجاز نیستند"
 #: gio/glib-compile-schemas.c:807
 #, c-format
 msgid "Invalid name “%s”: names must begin with a lowercase letter"
-msgstr ""
+msgstr "نام نامعتبر «%s»: نام‌ها باید با حرفی کوچک آغاز شوند"
 
 #: gio/glib-compile-schemas.c:819
 #, c-format
@@ -2687,21 +2689,23 @@ msgid ""
 "Invalid name “%s”: invalid character “%c”; only lowercase letters, numbers and "
 "hyphen (“-”) are permitted"
 msgstr ""
+"نام نامعتبر «%s»: نویسه نامعتبر \"%c\"؛ فقط حروف کوچک، اعداد و خط فاصله («-») "
+"مجازند"
 
 #: gio/glib-compile-schemas.c:828
 #, c-format
 msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
-msgstr ""
+msgstr "نام نامعتبر «%s»: دو خط فاصله متوالی («--») مجاز نیست"
 
 #: gio/glib-compile-schemas.c:837
 #, c-format
 msgid "Invalid name “%s”: the last character may not be a hyphen (“-”)"
-msgstr ""
+msgstr "نام نامعتبر «%s»: آخرین نویسه نباید خط فاصله («-») باشد"
 
 #: gio/glib-compile-schemas.c:845
 #, c-format
 msgid "Invalid name “%s”: maximum length is 1024"
-msgstr ""
+msgstr "نام نامعتبر «%s»: بیشینهٔ درازا ۱۰۲۴ است"
 
 #: gio/glib-compile-schemas.c:917
 #, c-format
@@ -2723,13 +2727,15 @@ msgid ""
 "<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> to "
 "modify value"
 msgstr ""
+"<key name='%s'> روی <key name='%s'> در <schema id='%s'> سایه می‌اندازد. برای "
+"تغییر مقدار از <override> استفاده کنید"
 
 #: gio/glib-compile-schemas.c:983
 #, c-format
 msgid ""
 "Exactly one of “type”, “enum” or “flags” must be specified as an attribute to "
 "<key>"
-msgstr ""
+msgstr "فقط یکی از «type»، «enum» یا «flags» باید به عنوان ویژگی <key> مشخّص شود"
 
 #: gio/glib-compile-schemas.c:1002
 #, c-format
@@ -2743,7 +2749,7 @@ msgstr "رشتهٔ گونهٔ GVariant نامعتبر «%s»"
 
 #: gio/glib-compile-schemas.c:1047
 msgid "<override> given but schema isn’t extending anything"
-msgstr ""
+msgstr "<override> داده شده ولی طرحواره چیزی را گسترش نمی دهد"
 
 #: gio/glib-compile-schemas.c:1060
 #, c-format
@@ -2763,12 +2769,12 @@ msgstr "<schema id='%s'> از پیش مشخّص شده"
 #: gio/glib-compile-schemas.c:1153
 #, c-format
 msgid "<schema id='%s'> extends not yet existing schema “%s”"
-msgstr ""
+msgstr "<schema id='%s'> طرحوارهٔ «%s» را که هنوز وجود ندارد کسترش می‌دهد"
 
 #: gio/glib-compile-schemas.c:1169
 #, c-format
 msgid "<schema id='%s'> is list of not yet existing schema “%s”"
-msgstr ""
+msgstr "<schema id='%s'> سیاهه‌ای از طرحوارهٔ «%s» است که هنوز وجود ندارد"
 
 #: gio/glib-compile-schemas.c:1177
 #, c-format
@@ -2784,6 +2790,7 @@ msgstr "نمی‌تواند طرحواره‌ای را با یک مسیر گست
 #, c-format
 msgid "<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
 msgstr ""
+"<schema id='%s'> سیاهه‌ای است که طرحوارهٔ «%s» را که هنوز وجود ندارد گسترش می‌دهد"
 
 #: gio/glib-compile-schemas.c:1207
 #, c-format
@@ -2791,6 +2798,8 @@ msgid ""
 "<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s” "
 "does not extend “%s”"
 msgstr ""
+"<schema id='%s' list-of='%s'> ‏<schema id='%s' list-of='%s'> را گسترش داده ولی "
+"«%s» ‏«%s» را گسترش نمی‌دهد"
 
 #: gio/glib-compile-schemas.c:1224
 #, c-format
@@ -2808,6 +2817,8 @@ msgid ""
 "Warning: Schema “%s” has path “%s”.  Paths starting with “/apps/”, “/desktop/” "
 "or “/system/” are deprecated."
 msgstr ""
+"هشدار: طرحوارهٔ «%s» مسیر «%s» دارد.  مسیرهای آغاز شده با /apps/،‏ /desktop/ یا /"
+"system/ منسوخ شده‌اند."
 
 #: gio/glib-compile-schemas.c:1270
 #, c-format
@@ -2836,7 +2847,7 @@ msgstr "متن ممکن است درون «%s» نمایان نشود"
 #: gio/glib-compile-schemas.c:1694
 #, c-format
 msgid "Warning: undefined reference to <schema id='%s'/>"
-msgstr ""
+msgstr "هشدار: ارجاع تعریف نشده به <schema id='%s'/>"
 
 #. Translators: Do not translate "--strict".
 #: gio/glib-compile-schemas.c:1833 gio/glib-compile-schemas.c:1912
@@ -2857,6 +2868,8 @@ msgid ""
 "No such key “%s” in schema “%s” as specified in override file “%s”; ignoring "
 "override for this key."
 msgstr ""
+"کلید «%s» در طرحوارهٔ «%s» آنگونه که در پروندهٔ پوششی «%s» مشخّص شده وجود ندارد. "
+"چشم‌پوشی کردن از پوشش‌ها برای این کلید."
 
 #: gio/glib-compile-schemas.c:1971
 #, c-format
@@ -2864,20 +2877,26 @@ msgid ""
 "No such key “%s” in schema “%s” as specified in override file “%s” and --strict "
 "was specified; exiting."
 msgstr ""
+"کلید «%s» در طرحوارهٔ «%s» آنگونه که در پروندهٔ پوششی «%s» مشخّص شده وجود نداشته و "
+"‪--strict‬ داده شده. خروج."
 
 #: gio/glib-compile-schemas.c:1993
 #, c-format
 msgid ""
-"Cannot provide per-desktop overrides for localized key “%s” in schema "
-"“%s” (override file “%s”); ignoring override for this key."
+"Cannot provide per-desktop overrides for localized key “%s” in schema “%s” "
+"(override file “%s”); ignoring override for this key."
 msgstr ""
+"نمی‌توان پوشش‌های به ازای میزکار را برای ملید بومی شدهٔ «%s» در طرحوارهٔ «%s» فراهم "
+"کرد (پوشش پروندهٔ «%s»). چشم‌پوشی کردن از پوشش برای این کلید."
 
 #: gio/glib-compile-schemas.c:2002
 #, c-format
 msgid ""
-"Cannot provide per-desktop overrides for localized key “%s” in schema "
-"“%s” (override file “%s”) and --strict was specified; exiting."
+"Cannot provide per-desktop overrides for localized key “%s” in schema “%s” "
+"(override file “%s”) and --strict was specified; exiting."
 msgstr ""
+"نمی‌توان پوشش‌های به ازای میزکار را برای ملید بومی شدهٔ «%s» در طرحوارهٔ «%s» فراهم "
+"کرد (پوشش پروندهٔ «%s») و ‪--strict‬ داده شده. خروج."
 
 #: gio/glib-compile-schemas.c:2026
 #, c-format
@@ -2885,6 +2904,8 @@ msgid ""
 "Error parsing key “%s” in schema “%s” as specified in override file “%s”: %s. "
 "Ignoring override for this key."
 msgstr ""
+"خطای تجزیهٔ کلید «%s» در طرحوارهٔ «%s» که در پروندهٔ پوشش «%s» مشخّص شده: %s. "
+"چشم‌پوشی کردن از پوشش برای این کلید."
 
 #: gio/glib-compile-schemas.c:2038
 #, c-format
@@ -2892,6 +2913,8 @@ msgid ""
 "Error parsing key “%s” in schema “%s” as specified in override file “%s”: %s. --"
 "strict was specified; exiting."
 msgstr ""
+"خطای تجزیهٔ کلید «%s» در طرحوارهٔ «%s» که در پروندهٔ پوشش «%s» مشخّص شده: %s. ‏strict "
+"داده شده. خروچ."
 
 #: gio/glib-compile-schemas.c:2065
 #, c-format
@@ -2899,6 +2922,8 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is outside the range "
 "given in the schema; ignoring override for this key."
 msgstr ""
+"پوشش برای کلید «%s»‌ در طرحوارهٔ «%s» در پروندهٔ پوشش «%s» خارج از بازهٔ داده شده در "
+"طرحواره است. چشم‌پوشی کردن از پوشش برای این کلید."
 
 #: gio/glib-compile-schemas.c:2075
 #, c-format
@@ -2906,6 +2931,8 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is outside the range "
 "given in the schema and --strict was specified; exiting."
 msgstr ""
+"پوشش برای کلید «%s»‌ در طرحوارهٔ «%s» در پروندهٔ پوشش «%s» خارج از بازهٔ داده شده در "
+"طرحواره بوده و ‪--strict‬ داده شده. خروج."
 
 #: gio/glib-compile-schemas.c:2101
 #, c-format
@@ -2913,6 +2940,8 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is not in the list of "
 "valid choices; ignoring override for this key."
 msgstr ""
+"پوشش برای کلید «%s»‌ در طرحوارهٔ «%s» در پروندهٔ پوشش «%s» در سیاههٔ گزینه‌های معتبر "
+"نیست. چشم‌پوشی کردن از پوشش برای این کلید."
 
 #: gio/glib-compile-schemas.c:2111
 #, c-format
@@ -2920,6 +2949,8 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is not in the list of "
 "valid choices and --strict was specified; exiting."
 msgstr ""
+"پوشش برای کلید «%s»‌ در طرحوارهٔ «%s» در پروندهٔ پوشش «%s» در سیاههٔ گزینه‌های معتبر "
+"نبوده و ‪--strict‬ داده شده. خروج."
 
 #: gio/glib-compile-schemas.c:2173
 msgid "Where to store the gschemas.compiled file"
@@ -3169,32 +3200,32 @@ msgstr "خطا در تنظیم پیوند نمادین: پرونده یک پیو
 #: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
-msgstr ""
+msgstr "نانوثانیه‌های اضافی %Id برای مهر برچسب زمانی %Illd یونیکس منفی است"
 
 #: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
-msgstr ""
+msgstr "نانوثانیه‌های اضافی %Id برای مهر برچسب زمانی %Illd یونیکس به ۱ ثانیه رسیده"
 
 #: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
-msgstr ""
+msgstr "برچسب زمانی %Illd یونیکس در ۶۴ بیت نمی‌گنجد"
 
 #: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
-msgstr ""
+msgstr "برچسب زمانی %Illd یونیکس خارج از بازهٔ پشتیبانی شده به دست ویندوز است"
 
 #: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
-msgstr ""
+msgstr "نام پروندهٔ «%s» نمی‌تواند به UTF-16 تبدیل شود"
 
 #: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
-msgstr ""
+msgstr "پروندهٔ «%s» نمی‌ةواند گشوده شود:‌خطای ویندوز %Ilu"
 
 #: gio/glocalfileinfo.c:2797
 #, c-format
@@ -3243,7 +3274,7 @@ msgstr "خطا در هنگام جستجو در پرونده: %s"
 
 #: gio/glocalfilemonitor.c:882
 msgid "Unable to find default local file monitor type"
-msgstr ""
+msgstr "ناتوان در یافتن گونهٔ واپایش پروندهٔ محلّی"
 
 #: gio/glocalfileoutputstream.c:222 gio/glocalfileoutputstream.c:300
 #: gio/glocalfileoutputstream.c:336 gio/glocalfileoutputstream.c:824
@@ -3304,7 +3335,7 @@ msgstr "درخواست جستجو نامعتبر"
 
 #: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
-msgstr ""
+msgstr "نمی‌توان GMemoryInputStream را کوتاه کرد"
 
 #: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
@@ -3318,15 +3349,15 @@ msgstr "شکست در تغییر اندازهٔ جریان خروجی حافظه
 msgid ""
 "Amount of memory required to process the write is larger than available address "
 "space"
-msgstr ""
+msgstr "مقدار حافظهٔ لازم برای پردازش نوشتن بیش از فضای نشانی موجود است"
 
 #: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
-msgstr ""
+msgstr "جویش درخواستی پیش از آغاز جریان"
 
 #: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
-msgstr ""
+msgstr "جویش درخواستی پس از پایان جریان"
 
 #. Translators: This is an error
 #. * message for mount objects that
@@ -3368,14 +3399,14 @@ msgstr "سوار کردن remount را پیاده نساخته"
 #. * don't implement content type guessing.
 #: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
-msgstr ""
+msgstr "شی سوار شده حدس گونهٔ محتوا را پیاده نمی‌کند"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
 #: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
-msgstr ""
+msgstr "شی سوار شده حدس همزمان گونهٔ محتوا را پیاده نمی‌کند"
 
 #: gio/gnetworkaddress.c:424
 #, c-format
@@ -3486,6 +3517,9 @@ msgid ""
 "If SECTION is given, only list resources in this section\n"
 "If PATH is given, only list matching resources"
 msgstr ""
+"سیاهه کردن منابع\n"
+"اگر SECTION داده شد تنها سیاهه کردن منابع در این بخش\n"
+"اگر PATH داده شد تنها سیاهه کردن منابع مطابق"
 
 #: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
@@ -3502,6 +3536,10 @@ msgid ""
 "If PATH is given, only list matching resources\n"
 "Details include the section, size and compression"
 msgstr ""
+"سیاهه کردن منابع با جزییات\n"
+"اگر SECTION داده شد تنها سیاهه کردن منابع در این بخش\n"
+"اگر PATH داده شد تنها سیاهه کردن منابع مطابق\n"
+"جزییات شامل بخش، اندازه و فشرده‌سازی"
 
 #: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
@@ -3526,6 +3564,18 @@ msgid ""
 "Use “gresource help COMMAND” to get detailed help.\n"
 "\n"
 msgstr ""
+"استفاده:\n"
+" gresource [--section SECTION] COMMAND [ARGS…]\n"
+"\n"
+"فرمان‌ها:\n"
+"  help                      نمایش این اطّلاعات\n"
+"  sections                  سیاهه کردن بخش‌های منبع\n"
+"  list                      سیاهه کردن منابع\n"
+"  details                   سیاهه کردن منابع با جزییات\n"
+"  extract                   استخراج منبع\n"
+"\n"
+"برای گرفتن راهنمای با جزییات از ‪gresource help COMMAND‬ استفاده کنید.\n"
+"\n"
 
 #: gio/gresource-tool.c:557
 #, c-format
@@ -5709,6 +5759,7 @@ msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, or "
 "by a plain number"
 msgstr ""
+"پس از ‪\\g‬ نام یا عددی با پرانتز، گیومه یا نقل قول یا یک عدد ساده وجود ندارد"
 
 #: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
@@ -5740,7 +5791,7 @@ msgstr "باید ‪\\‬c‪‬ با نویسه‌ای اسکی همراه شو
 
 #: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
-msgstr ""
+msgstr "پس از ‪\\k‬ نامی با پرانتز، گیومه یا نقل قول وجود ندارد"
 
 #: glib/gregex.c:736
 msgid "\\N is not supported in a class"
@@ -5966,7 +6017,7 @@ msgstr "نام برنامهٔ نامعتبر: %s"
 #: glib/gspawn-win32.c:600 glib/gspawn-win32.c:940
 #, c-format
 msgid "Invalid string in argument vector at %d: %s"
-msgstr "رشتهٔ نامعتبر در بردار آرگومان درآیهٔ %Id: %s"
+msgstr "رشتهٔ نامعتبر در بردار آرگومان در %Id: %s"
 
 #: glib/gspawn-win32.c:611 glib/gspawn-win32.c:956
 #, c-format
index d849b2a..6551fc5 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
 # Gérard Baylard <Geodebay@gmail.com>, 2010.
 # Alexandre Franke <alexandre.franke@gmail.com>, 2012.
 # Thibault Martin <mail@thibaultmart.in>, 2020.
-# Guillaume Bernard <associations@guillaume-bernard.fr>, 2021.
+# Guillaume Bernard <associations@guillaume-bernard.fr>, 2021-2024.
 # Charles Monzat <charles.monzat@free.fr>, 2016-2022.
 # Claude Paroz <claude@2xlibre.net>, 2007-2022.
+# Vincent Chatelain <vinchatl_gnome@proton.me>, 2024.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: glib master\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-09-12 10:26+0000\n"
-"PO-Revision-Date: 2023-09-05 16:35+0200\n"
-"Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-03-11 21:02+0000\n"
+"PO-Revision-Date: 2024-03-14 17:27+0100\n"
+"Last-Translator: Vincent Chatelain <vinchatl_gnome@proton.me>\n"
 "Language-Team: GNOME French Team <gnomefr@traduc.org>\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-Generator: Poedit 3.2.2\n"
+"Plural-Forms: nplurals=2; plural=(n > 1)\n"
+"X-Generator: Gtranslator 45.3\n"
 
 #: gio/gappinfo.c:339
 msgid "Setting default applications not supported yet"
@@ -53,38 +54,42 @@ msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr ""
 "Impossible de trouver l’application par défaut pour le protocole d’URI « %s »"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "Options GApplication :"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Afficher les options GApplication"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr ""
 "Entrer dans le mode de service GApplication (utiliser à partir des fichiers "
 "de service D-Bus)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Remplacer l’identifiant d’application"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Afficher la version de l’application"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Remplacer l’instance en cours"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Afficher l’aide"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[COMMANDE]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Afficher la version"
 
@@ -141,7 +146,7 @@ msgid "APPID"
 msgstr "ID_APP"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "COMMANDE"
 
@@ -153,9 +158,13 @@ msgstr "La commande pour laquelle l’aide détaillée doit être affichée"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Identifiant d’application au format D-Bus (ex. : org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "FICHIER"
 
@@ -179,7 +188,7 @@ msgstr "PARAMÈTRE"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Paramètre facultatif pour l’invocation de l’action, au format GVariant"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -193,12 +202,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Utilisation :\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Paramètres :\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[PARAMS…]"
 
@@ -292,80 +301,80 @@ msgstr ""
 "commande non reconnue : %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "La valeur de comptage fournie à %s est trop grande"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Le positionnement n’est pas pris en charge sur le flux de base"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "Impossible de tronquer GBufferedInputStream"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "Le flux est déjà fermé"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "La troncature n’est pas prise en charge sur le flux de base"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "L’opération a été annulée"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Objet non valide, non initialisé"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Séquence multi-octet incomplète en entrée"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Espace insuffisant dans la destination"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Séquence d’octets incorrecte en entrée du convertisseur"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Erreur lors de la conversion : %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Initialisation annulable non prise en charge"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr ""
 "La conversion du jeu de caractères « %s » vers « %s » n’est pas prise en "
 "charge"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Impossible d’ouvrir le convertisseur de « %s » vers « %s »"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "Type %s"
@@ -379,45 +388,45 @@ msgstr "Type inconnu"
 msgid "%s filetype"
 msgstr "Type de fichier %s"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials contient des données non valables"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials n’est pas implémenté sur ce système d’exploitation"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Il n’y a pas de prise en charge de GCredentials pour votre plate-forme"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr ""
 "GCredentials ne contient pas d’identifiant de processus sur ce système "
 "d’exploitation"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr ""
 "L’usurpation d’identité n’est pas possible sur ce système d’exploitation"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "Fin précoce de flux inattendue"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "Clé « %s » non prise en charge dans l’élément d’adresse « %s »"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr ""
 "Combinaison clé/valeur sans signification dans l’élément d’adresse « %s »"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -426,30 +435,30 @@ msgstr ""
 "L’adresse « %s » n’est pas valide (nécessite exactement une des clés de "
 "« path », « dir », « tmpdir » ou « abstract »)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Erreur dans l’adresse « %s » — l’attribut « %s » est mal formé"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Transport « %s » inconnu ou non pris en charge pour l’adresse « %s »"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr ""
 "L’élément d’adresse « %s » ne comporte pas de caractère deux-points (:)"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr ""
 "Le nom de transport dans l’élément d’adresse « %s » ne doit pas être vide"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -458,7 +467,7 @@ msgstr ""
 "Le couple clé/valeur %d, « %s », dans l’élément d’adresse « %s » ne comporte "
 "pas de signe égal"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
@@ -466,7 +475,7 @@ msgstr ""
 "Le couple clé/valeur %d, « %s », dans l’élément d’adresse « %s » ne doit pas "
 "avoir une clé vide"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -475,7 +484,7 @@ msgstr ""
 "Erreur lors du décodage de la clé ou de la valeur dans le couple clé/valeur "
 "%d, « %s », dans l’élément d’adresse « %s »"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -484,89 +493,89 @@ msgstr ""
 "Erreur dans l’adresse « %s » — le transport Unix requiert que soit "
 "exactement définie une des clés « path » ou « abstract »"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr ""
 "Erreur dans l’adresse « %s » — l’attribut de l’hôte est manquant ou mal formé"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr ""
 "Erreur dans l’adresse « %s » — l’attribut du port est manquant ou mal formé"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Erreur dans l’adresse « %s » — l’attribut du fichier à dénomination unique "
 "est manquant ou mal formé"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
-msgstr "Erreur de lancement automatique :"
+msgstr "Erreur de lancement automatique : "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr ""
 "Erreur lors de l’ouverture du fichier à dénomination unique « %s » : %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Erreur de lecture du fichier à dénomination unique « %s » : %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr ""
 "Erreur de lecture du fichier à dénomination unique « %s », 16 octets "
 "attendus, %d reçus"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr ""
 "Erreur d’écriture du contenu du fichier à numérotation unique « %s » sur le "
 "flux :"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "L’adresse indiquée est vide"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr ""
 "Impossible de générer dynamiquement un bus messages quand AT_SECURE est "
 "défini"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr ""
 "Impossible de générer dynamiquement un bus messages sans identifiant "
 "machine : "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "Impossible de lancer automatiquement D-Bus sans $DISPLAY X11"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Erreur lors de la génération de la ligne de commande « %s » : "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Impossible de déterminer l’adresse du bus de session (non pris en charge "
 "pour ce système d’exploitation)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -575,7 +584,7 @@ msgstr ""
 "Impossible de déterminer l’adresse du bus à partir de la variable "
 "d’environnement DBUS_STARTER_BUS_TYPE — valeur inconnue « %s »"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -583,22 +592,22 @@ msgstr ""
 "Impossible de déterminer l’adresse du bus étant donné que la variable "
 "d’environnement DBUS_STARTER_BUS_TYPE n’est pas définie"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Type de bus %d inconnu"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Manque de contenu imprévu lors de la tentative de lecture d’une ligne"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr ""
 "Manque de contenu imprévu lors de la tentative de lecture (sécurisée) d’une "
 "ligne"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -606,17 +615,17 @@ msgstr ""
 "Tous les mécanismes d’authentification disponibles ont été épuisés (tentés : "
 "%s) (disponibles : %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Manque de contenu imprévu lors de la tentative de lecture d’un octet"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr ""
 "Les identifiants des utilisateurs doivent être identiques pour le pair et le "
 "serveur"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Annulé via GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -639,13 +648,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Erreur lors de la création du répertoire « %s » : %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Opération non prise en charge"
 
@@ -715,15 +724,15 @@ msgstr "Erreur lors de l’ouverture du trousseau de clés « %s » en écritu
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(en outre, le relèvement du verrou pour « %s » a aussi échoué : %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "La connexion est fermée"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "Le délai d’attente est dépassé"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
@@ -818,67 +827,82 @@ msgstr "Une sous-arborescence est déjà exportée pour « %s »"
 msgid "Object does not exist at path “%s”"
 msgstr "L’objet n’existe pas à l’emplacement « %s »"
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "le type est « INVALID »"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
 msgstr ""
-"Message de METHOD_CALL : champ d’en-tête PATH ou MEMBER manquant ou non "
-"valide"
+"Message de %s : le champ d’en-tête %s n’est pas valide ; valeur attendue de "
+"type « %s »"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr ""
-"Message de METHOD_RETURN : champ d’en-tête REPLY_SERIAL manquant ou non "
-"valide"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "Message de %s : le champ d’en-tête %s manque ou n’est pas valide"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr ""
-"Message d’ERREUR : champ d’en-tête REPLY_SERIAL ou ERROR_NAME manquant ou "
-"non valide"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "Message de %s : le champ d’en-tête INVALID est fourni"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
 msgstr ""
-"Message de SIGNAL : champ d’en-tête PATH, INTERFACE ou MEMBER manquant ou "
-"non valide"
+"Message de %s : le champ d’en-tête PATH utilise la valeur réservée /org/"
+"freedesktop/DBus/Local"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
 msgstr ""
-"Message de SIGNAL : le champ d’en-tête PATH utilise la valeur réservée /org/"
-"freedesktop/DBus/Local"
+"Message de %s : le champ d’en-tête INTERFACE ne contient pas un nom valide "
+"pour une interface"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
+"freedesktop.DBus.Local"
+msgstr ""
+"Message de %s : le champ d’en-tête INTERFACE utilise la valeur réservée org."
 "freedesktop.DBus.Local"
+
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
 msgstr ""
-"Message de SIGNAL : le champ d’en-tête INTERFACE utilise la valeur réservée "
-"org.freedesktop.DBus.Local"
+"Message de %s : le champ d’en-tête MEMBER ne contient pas un nom valide pour "
+"un membre"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+"Message de %s : le champ d’en-tête ERROR_NAME ne contient pas un nom valide "
+"pour une erreur"
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "le type est « INVALID »"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
 msgstr[0] "Lecture de %lu octet demandée, mais seulement %lu reçu(s)"
 msgstr[1] "Lecture de %lu octets demandée, mais seulement %lu reçu(s)"
 
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr ""
 "Octet 00 (NUL) attendu à la fin de la chaîne « %s » mais un octet %d a été "
 "trouvé"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -888,23 +912,23 @@ msgstr ""
 "rencontrés à la position %d (longueur de la chaîne : %d octets). La chaîne "
 "UTF-8 valide jusqu’à cet endroit est « %s »"
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Valeur imbriquée trop profondément"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr ""
 "La valeur analysée « %s » n’est pas un chemin vers un objet D-Bus valide"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "La valeur analysée « %s » n’est pas une signature D-Bus valide"
 
 # 2<<26  donne 128 Mo, 2^26 donne 64 Mo, 1<<26 donne 64 Mo
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -917,7 +941,7 @@ msgstr[1] ""
 "Un tableau de %u octets de long a été trouvé. La longueur maximale est de "
 "2<<26 octets (64 Mo)."
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -926,18 +950,18 @@ msgstr ""
 "Un tableau de type « a%c » a été trouvé, avec une longueur attendue multiple "
 "de %u octets, mais la longueur réelle est de %u octets"
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Les structures vides (tuples) ne sont pas autorisées dans D-Bus"
 
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr ""
 "La valeur « %s » analysée en tant que variant n’est pas une signature valide "
 "de D-Bus"
 
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -945,7 +969,7 @@ msgstr ""
 "Erreur en désérialisant le GVariant en chaîne de type « %s » à partir du "
 "format de transmission D-Bus"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -954,30 +978,30 @@ msgstr ""
 "Valeur de boutisme non valide. 0x6c (« l ») ou 0x42 (« B ») attendus, mais "
 "0x%02x trouvé"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr "Version majeure du protocole non valide. 1 attendu, %d trouvé"
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "En-tête de signature trouvé mais n’est pas de type signature"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr ""
 "En-tête de signature trouvé avec la signature « %s », mais le corps du "
 "message est vide"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr ""
 "La valeur analysée « %s » n’est pas une signature valide de D-Bus (pour le "
 "corps)"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
@@ -988,11 +1012,11 @@ msgstr[1] ""
 "Pas de signature d’en-tête dans le message, mais le corps du message est de "
 "%u octets"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Impossible de désérialiser le message : "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -1000,7 +1024,7 @@ msgstr ""
 "Erreur en sérialisant le GVariant en chaîne de type « %s » dans le format de "
 "transmission D-Bus"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
@@ -1008,18 +1032,18 @@ msgstr ""
 "Le nombre de descripteurs de fichiers dans le message (%d) diffère de celui "
 "du champ d’en-tête (%d)"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Impossible de sérialiser le message : "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr ""
 "Le corps du message a la signature « %s », mais il n’y a pas d’en-tête de "
 "signature"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -1028,19 +1052,19 @@ msgstr ""
 "Le corps du message a une signature de type « %s », mais celle dans le champ "
 "d’en-tête est « %s »"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr ""
 "Le corps du message est vide mais sa signature dans le champ d’en-tête est "
 "« (%s) »"
 
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Retour d’erreur avec un corps de type « %s »"
 
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Retour d’erreur avec un corps vide"
 
@@ -1062,23 +1086,23 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Impossible d’obtenir le profil matériel : %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "Impossible de charger %s ou %s : "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Erreur lors de l’appel de StartServiceByName pour %s : "
 
 # Guillemets anglais laissés volontairement
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Réponse %d inattendue de la méthode StartServiceByName(\"%s\")"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1088,28 +1112,28 @@ msgstr ""
 "%s sans propriétaire alors que le proxy a été construit avec le marqueur "
 "G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "L’espace de noms abstrait n’est pas pris en charge"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr ""
 "Impossible de définir un fichier à dénomination unique lors de la création "
 "d’un serveur"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr ""
 "Erreur lors de l’écriture du fichier à dénomination unique à « %s » : %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "La chaîne « %s » n’est pas un GUID valide de D-Bus"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "Impossible d’écouter sur le transport « %s » non pris en charge"
@@ -1172,6 +1196,10 @@ msgstr "Connexion au bus de session"
 msgid "Connect to given D-Bus address"
 msgstr "Connexion à l’adresse D-Bus donnée"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADRESSE"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Options de connexion au point terminal :"
@@ -1405,77 +1433,78 @@ msgstr "Erreur : %s n’est pas un nom de bus bien connu valide\n"
 msgid "Not authorized to change debug settings"
 msgstr "Non autorisé à modifier les paramètres de débogage"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Sans nom"
 
 # Un fichier Desktop n’est pas forcément sur le bureau...
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "Le fichier .desktop n’a pas précisé son champ Exec"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Impossible de trouver le terminal requis par l’application"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Programme « %s » non trouvé dans $PATH"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr ""
 "Impossible de créer le dossier de configuration utilisateur d’application "
 "%s : %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr ""
 "Impossible de créer le dossier de configuration utilisateur MIME %s : %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "Les informations de l’application ne comportent pas d’identifiant"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Impossible de créer le fichier .desktop utilisateur %s"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Définition personnalisée pour %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "le lecteur n’implémente pas l’éjection (« eject »)"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr ""
 "le lecteur n’implémente pas l’éjection combinée ou non (« eject » ou "
 "« eject_with_operation »)"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "le lecteur n’implémente pas la scrutation du média (« polling »)"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "le lecteur n’implémente pas le démarrage (« start »)"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "le lecteur n’implémente pas l’arrêt (« stop »)"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr ""
 "Le moteur TLS n’implémente pas la récupération du couplage TLS (« TLS "
@@ -1490,27 +1519,27 @@ msgstr "La prise en charge TLS n’est pas disponible"
 msgid "DTLS support is not available"
 msgstr "La prise en charge DTLS n’est pas disponible"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Impossible de gérer la version %d du codage GEmblem"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Nombre de jetons incorrect (%d) dans le codage GEmblem"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Impossible de gérer la version %d du codage GEmblemedIcon"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Nombre de jetons incorrect (%d) dans le codage GEmblemedIcon"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Un GEmblem est attendu pour le GEmblemedIcon"
 
@@ -1518,133 +1547,138 @@ msgstr "Un GEmblem est attendu pour le GEmblemedIcon"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "Le point de montage conteneur n’existe pas"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Impossible d’écraser un répertoire"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Impossible d’écraser un répertoire par un autre répertoire"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Le fichier cible existe"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Impossible de copier récursivement un répertoire"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "Copie d’une plage de fichiers non prise en charge"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Erreur lors de l’opération de « splicing » sur le fichier : %s"
 
 # http://en.wikipedia.org/wiki/Splice_(system_call)
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "L’opération « splice » n’est pas prise en charge"
 
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr ""
 "La copie (reflink/clone) entre points de montage n’est pas prise en charge"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "La copie (reflink/clone) n’est pas prise en charge ou n’est pas valide"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr ""
 "La copie (reflink/clone) n’est pas prise en charge ou n’a pas fonctionné"
 
-#: gio/gfile.c:3395
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Impossible d’obtenir l’attribut %s"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Impossible de copier le fichier spécial"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Valeur de lien symbolique donnée non valide"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Liens symboliques non pris en charge"
 
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "La corbeille n’est pas prise en charge"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "Les noms de fichiers ne peuvent comporter de « %c »"
 
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr ""
 "La création d’un répertoire temporaire pour le modèle « %s » a échoué : %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "le volume n’implémente pas le montage"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Aucune application n’est enregistrée pour gérer ce fichier"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "L’énumérateur est fermé"
 
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "L’énumérateur de fichiers est en cours d’opération"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "L’énumérateur de fichiers est déjà fermé"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Impossible de gérer la version %d du codage de GFileIcon"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Données d’entrée incorrectes pour GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Le flux ne prend pas en charge query_info"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Le positionnement n’est pas pris en charge sur le flux"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "La troncature n’est pas autorisée sur un flux d’entrée"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "La troncature n’est pas prise en charge sur le flux"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Nom d’hôte non valide"
 
@@ -1678,65 +1712,65 @@ msgid "HTTP proxy server closed connection unexpectedly."
 msgstr ""
 "Le serveur mandataire HTTP a terminé la connexion de manière inattendue."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Nombre de jetons incorrect (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Aucun type pour le nom de classe %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "Le type %s n’implémente pas l’interface GIcon"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "Le type %s n’est pas classé"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Numéro de version incorrect : %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr ""
 "Le type %s n’implémente pas la fonction from_tokens() de l’interface GIcon"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Impossible de gérer la version fournie du codage de l’icône"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Aucune adresse indiquée"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "La longueur %u est trop importante pour l’adresse"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "L’adresse possède des bits définis au-delà de la longueur du préfixe"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "Impossible d’analyser « %s » comme masque d’adresse IP"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Espace insuffisant pour une adresse de connecteur réseau"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Adresse de connecteur réseau non prise en charge"
 
@@ -1750,7 +1784,7 @@ msgstr "Le flux en entrée n’implémente pas « read »"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "Le flux a une opération en cours"
 
@@ -1766,7 +1800,7 @@ msgstr "Conserver avec le fichier lors du déplacement"
 msgid "“version” takes no arguments"
 msgstr "« version » n’accepte aucun paramètre"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Utilisation :"
 
@@ -1774,79 +1808,79 @@ msgstr "Utilisation :"
 msgid "Print version information and exit."
 msgstr "Afficher les informations de version et quitter."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Commandes :"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Concaténer les fichiers vers la sortie standard"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Copier un ou plusieurs fichiers"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Afficher des informations à propos des emplacements"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Démarrer une application depuis un fichier desktop"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Énumérer le contenu des emplacements"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Obtenir ou définir le gestionnaire d’un type MIME"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Créer des répertoires"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Surveiller les modifications de fichiers et de répertoires"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Monter ou démonter les emplacements"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Déplacer un ou plusieurs fichiers"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Ouvrir des fichiers avec l’application par défaut"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Renommer un fichier"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Supprimer un ou plusieurs fichiers"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Lire à partir de l’entrée standard et enregistrer"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Définir un attribut de fichier"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Déplacer des fichiers ou répertoires dans la corbeille"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Énumérer le contenu des emplacements dans une arborescence"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Commandes :"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "Utilisez %s pour obtenir de l’aide détaillée.\n"
@@ -1856,7 +1890,7 @@ msgid "Error writing to stdout"
 msgstr "Erreur lors de l’écriture vers stdout"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1879,60 +1913,66 @@ msgstr ""
 "utilisant des emplacements GIO au lieu de fichiers locaux : par exemple,\n"
 "on peut indiquer un emplacement comme smb://serveur/ressource/fichier.txt."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Aucun emplacement indiqué"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Aucun répertoire cible"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Afficher la progression"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Demander avant d’écraser"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Préserver tous les attributs"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Créer une sauvegarde des fichiers de destination existants"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Ne jamais suivre les liens symboliques"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Utiliser les permissions par défaut de la destination"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr ""
+"Utiliser les horodatages de modification des fichiers par défaut pour la "
+"destination"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "%s sur %s transférés (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "SOURCE"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "DESTINATION"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Copier un ou plusieurs fichiers de SOURCE vers DESTINATION."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1942,12 +1982,12 @@ msgstr ""
 "utilisant des emplacements GIO au lieu de fichiers locaux : par exemple,\n"
 "on peut indiquer un emplacement comme smb://serveur/ressource/fichier.txt."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "La destination « %s » n’est pas un répertoire"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s : écraser « %s » ? "
@@ -1988,52 +2028,52 @@ msgstr "nom d’affichage : %s\n"
 msgid "edit name: %s\n"
 msgstr "nom d’édition : %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "nom : %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "type : %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "taille : "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "caché\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "uri : %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "chemin local : %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "montage unix : %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Attributs pouvant être définis :\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Espaces de noms des attributs en écriture :\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Afficher des informations à propos des emplacements."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2604,7 +2644,8 @@ msgstr ""
 "FICHIER (par défaut le répertoire actuel)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "RÉPERTOIRE"
 
@@ -2657,6 +2698,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Nom d’identifiant C utilisé pour le code source généré"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFIANT"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Le compilateur C cible (par défaut : la variable d’environnement CC)"
@@ -3180,133 +3225,133 @@ msgstr ""
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "Le point de montage conteneur pour le fichier %s est introuvable"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Impossible de renommer le répertoire racine"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Erreur de renommage du fichier %s : %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Impossible de renommer le fichier car ce nom est déjà utilisé"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Nom de fichier non valide"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Erreur lors de l’ouverture du fichier %s : %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Erreur lors de la suppression du fichier %s : %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Erreur lors de la mise à la corbeille du fichier %s : %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Impossible de créer le répertoire de la corbeille %s : %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr ""
 "Impossible de trouver le répertoire racine pour mettre %s à la corbeille"
 
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr ""
 "La mise à la corbeille sur des montages systèmes internes n’est pas prise en "
 "charge"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr ""
 "Impossible de trouver ou créer le répertoire de la corbeille %s pour mettre "
 "%s à la corbeille"
 
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr ""
 "Impossible de créer le fichier d’informations de mise à la corbeille pour "
 "%s : %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr ""
 "Impossible de mettre à la corbeille le fichier %s au-delà des limites du "
 "système de fichiers"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Impossible de mettre à la corbeille le fichier %s : %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Impossible de mettre à la corbeille le fichier %s"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Erreur lors de la création du répertoire %s : %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "Le système de fichiers ne gère pas les liens symboliques"
 
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Erreur lors de la création du lien symbolique %s : %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Erreur lors du déplacement du fichier %s : %s"
 
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Impossible de déplacer un répertoire par dessus un autre"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "La création du fichier de sauvegarde a échoué"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Erreur lors de la suppression du fichier cible : %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Le déplacement entre points de montage n’est pas pris en charge"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Impossible de déterminer l’utilisation disque de %s : %s"
@@ -3329,126 +3374,126 @@ msgstr "Nom d’attribut étendu non valide"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Erreur lors de la définition de l’attribut étendu « %s » : %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (codage non valide)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Erreur lors de l’obtention des informations du fichier « %s » : %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr ""
 "Erreur lors de l’obtention des informations du descripteur de fichier : %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Type d’attribut non valide (uint32 attendu)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Type d’attribut non valide (uint64 attendu)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Type d’attribut non valide (chaîne d’octets attendue)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "Impossible de définir des permissions sur les liens symboliques"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Erreur lors de la définition des permissions : %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Erreur lors de la définition du propriétaire : %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "un lien symbolique ne doit pas être « NULL »"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Erreur lors de la définition du lien symbolique : %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr ""
 "Erreur lors de la définition du lien symbolique : le fichier n’est pas un "
 "lien symbolique"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr ""
 "Les nanosecondes supplémentaires %d pour l’horodatage UNIX %lld sont "
 "négatives"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr ""
 "Les nanosecondes supplémentaires %d pour l’horodatage UNIX %lld atteignent 1 "
 "seconde"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "L’horodatage UNIX %lld ne tient pas sur 64 bits"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr ""
 "L’horodatage UNIX %lld est hors de la plage prise en charge par Windows"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "Le nom de fichier « %s » ne peut être converti en UTF-16"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "Le fichier « %s » ne peut être ouvert : erreur Windows %lu"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr ""
 "Erreur lors de la définition de l’heure de modification ou d’accès pour le "
 "fichier « %s » : %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr ""
 "Erreur lors de la définition de l’heure de modification ou d’accès : %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "Le contexte SELinux ne doit pas être « NULL »"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "SELinux n’est pas activé sur ce système"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Erreur lors de la définition du contexte SELinux : %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "La définition de l’attribut %s n’est pas prise en charge"
@@ -3501,7 +3546,7 @@ msgid "Error truncating file: %s"
 msgstr "Erreur lors de la troncature du fichier : %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Erreur lors de l’ouverture du fichier « %s » : %s"
@@ -3523,27 +3568,27 @@ msgstr "Le fichier a été modifié extérieurement"
 msgid "Error removing old file: %s"
 msgstr "Erreur à la suppression de l’ancien fichier : %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "Le type GSeekType fourni n’est pas valide"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Requête « seek » non valide"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "Impossible de tronquer GMemoryInputStream"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Le flux de sortie mémoire n’est pas redimensionnable"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Le redimensionnement du flux de sortie mémoire a échoué"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3551,32 +3596,32 @@ msgstr ""
 "La quantité de mémoire nécessaire pour effectuer l’écriture est plus grande "
 "que l’espace d’adressage disponible"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Positionnement demandé avant le début du flux"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Positionnement demandé après la fin du flux"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "mount n’implémente pas le démontage (« unmount »)"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "mount n’implémente pas l’éjection (« eject »)"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "mount n’implémente pas le démontage (« unmount » ou "
@@ -3585,7 +3630,7 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr ""
 "mount n’implémente pas l’éjection (« eject » ou « eject_with_operation »)"
@@ -3593,34 +3638,34 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "mount n’implémente pas le remontage (« remount »)"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "mount n’implémente pas l’estimation du type de contenu"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr "mount n’implémente pas la supposition d’un type de contenu synchrone"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Le nom d’hôte « %s » comporte « [ » mais pas « ] »"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Réseau inaccessible"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Hôte inaccessible"
 
@@ -3648,7 +3693,7 @@ msgstr "NetworkManager n’est pas lancé"
 msgid "NetworkManager version too old"
 msgstr "La version de NetworkManager est trop ancienne"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Le flux de sortie n’implémente pas « write »"
 
@@ -3661,38 +3706,38 @@ msgstr "Somme des vecteurs passés à %s trop grande"
 msgid "Source stream is already closed"
 msgstr "Le flux source est déjà fermé"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Échec non défini de requête de serveur mandataire"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Erreur de résolution de « %s » : %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s non implémentée"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Domaine non valide"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "La ressource dans « %s » n’existe pas"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "La décompression de la ressource dans « %s » n’a pas réussi"
@@ -3710,11 +3755,11 @@ msgstr "La ressource dans « %s » n’est pas un répertoire"
 msgid "Input stream doesn’t implement seek"
 msgstr "Le flux en entrée n’implémente pas « seek » (le positionnement)"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Énumère les sections contenant les ressources dans un fichier « elf »"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3724,15 +3769,15 @@ msgstr ""
 "Si SECTION est fournie, énumère seulement les ressources de cette section\n"
 "Si CHEMIN est fourni, énumère seulement les ressources correspondantes"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "FICHIER [CHEMIN]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SECTION"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3744,15 +3789,15 @@ msgstr ""
 "Si CHEMIN est fourni, énumère seulement les ressources correspondantes\n"
 "Les détails incluent la section, la taille et la compression"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Extrait un fichier ressource vers la sortie standard"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "CHEMIN DU FICHIER"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3780,7 +3825,7 @@ msgstr ""
 "Utilisez « gresource help COMMANDE » pour obtenir de l’aide détaillée.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3795,20 +3840,20 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SECTION   Un nom de section elf (facultatif)\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  COMMANDE   La commande (facultative) à expliquer\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr ""
 "  FICHIER      Un fichier elf (un binaire ou une bibliothèque partagée)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3816,20 +3861,20 @@ msgstr ""
 "  FICHIER      Un fichier elf (un binaire ou une bibliothèque partagée)\n"
 "            ou un fichier ressource compilé\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[CHEMIN]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr ""
 "  CHEMIN      Un chemin (facultatif) de ressource (peut être partiel)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "CHEMIN"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  CHEMIN      Un chemin de ressource\n"
 
@@ -4064,219 +4109,219 @@ msgstr "Nom de schéma fourni vide\n"
 msgid "No such key “%s”\n"
 msgstr "La clé « %s » n’existe pas\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Connecteur non valide, non initialisé"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Connecteur non valide, l’initialisation a échoué en raison de : %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "Le connecteur est déjà fermé"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1445
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "Entrées/sorties hors délai sur le connecteur"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "création de GSocket à partir du descripteur de fichier : %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Impossible de créer le connecteur : %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "Indication d’une famille inconnue"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "Indication d’un protocole inconnu"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr ""
 "Impossible d’utiliser des opérations datagramme sur un connecteur non "
 "datagramme."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr ""
 "Impossible d’utiliser des opérations datagramme sur un connecteur doté d’un "
 "délai d’expiration."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "impossible d’obtenir l’adresse locale : %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "impossible d’obtenir l’adresse distante : %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "impossible d’écouter : %s"
 
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Erreur lors de la liaison à l’adresse %s : %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Erreur lors de la connexion au groupe multicast : %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Erreur lors de la déconnexion du groupe multicast : %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Aucune prise en charge pour le multicast spécifique à la source"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Famille de connecteur réseau non prise en charge"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "source-specific n’est pas une adresse IPv4"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Nom d’interface trop long"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Interface introuvable : %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Aucune prise en charge pour le multicast IPv4 spécifique à la source"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Aucune prise en charge pour le multicast IPv6 spécifique à la source"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Erreur d’acceptation de la connexion : %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Connexion en cours"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Impossible d’obtenir l’erreur actuelle : "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Erreur lors de la réception des données : %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Erreur lors de l’envoi des données : %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Impossible de fermer le connecteur : %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Erreur lors de la fermeture du connecteur : %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "En attente de l’état du connecteur : %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Impossible d’envoyer le message : %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Vecteurs de messages trop grands"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Erreur d’envoi de message : %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "GSocketControlMessage n’est pas pris en charge par Windows"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Erreur lors de la réception du message : %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Impossible de lire les données d’authentification du connecteur : %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr ""
 "g_socket_get_credentials n’est pas implémenté sur ce système d’exploitation"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Impossible de se connecter au serveur mandataire %s : "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Impossible de se connecter à %s : "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Impossible de se connecter : "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr ""
 "L’usage d’un proxy n’est pas pris en charge dans une connexion non-TCP."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "Le protocole du proxy « %s » n’est pas pris en charge."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "Le processus d’écoute est déjà fermé"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "Le connecteur réseau ajouté est fermé"
 
@@ -4374,97 +4419,97 @@ msgstr ""
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "Erreur inconnue du serveur mandataire SOCKSv5."
 
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr ""
 "La création du tube de communication avec le processus fils a échoué (%s)"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Les tubes ne sont pas pris en charge sur cette plate-forme"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Impossible de gérer la version %d du codage GThemedIcon"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Aucune adresse valide n’a été trouvée"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Erreur de résolution inverse de « %s » : %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr ""
 "Erreur lors de l’analyse de l’enregistrement DNS %s : paquet DNS non conforme"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Aucun enregistrement DNS du type demandé pour « %s »"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "Impossible temporairement de résoudre « %s »"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Erreur de résolution de « %s »"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Paquet DNS non conforme"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Impossible d’analyser la réponse DNS pour « %s » : "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Aucune clé privée codée PEM trouvée"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "Impossible de déchiffrer la clé privée codée-PEM"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "Impossible d’analyser la clé privée codée-PEM"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Aucun certificat codé-PEM trouvé"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "Impossible d’analyser le certificat codé-PEM"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "Le moteur TLS actuel ne prend pas en charge PKCS #12"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr ""
 "Ce GTlsBackend ne prend pas en charge la création de certificats PKCS #11"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4474,7 +4519,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4482,142 +4527,156 @@ msgstr ""
 "Plusieurs mots de passe saisis ont été incorrects, votre accès sera bloqué "
 "après quelques échecs de plus."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "Le mot de passe saisi est incorrect."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "L’envoi de descripteur de fichier n’est pas pris en charge"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "1 message de contrôle attendu, %d reçu"
 msgstr[1] "1 message de contrôle attendu, %d reçus"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Type de données auxiliaires inattendu"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "Un descripteur de fichier attendu, %d obtenu\n"
 msgstr[1] "Un descripteur de fichier attendu, %d obtenus\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Le descripteur de fichier reçu n’est pas valide"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "La réception de descripteur de fichier n’est pas prise en charge"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Erreur lors de l’envoi de l’identification : "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr ""
 "Erreur lors de la vérification de l’activation de SO_PASSCRED pour le "
 "connecteur : %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Erreur lors de l’activation de SO_PASSCRED : %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Lecture d’un unique octet attendue à la réception de l’identification, mais "
 "aucun octet lu"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Pas de message de contrôle attendu, %d reçu(s)"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Erreur lors de la désactivation de SO_PASSCRED : %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Erreur de lecture à partir du descripteur de fichier : %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Erreur de fermeture du descripteur de fichier : %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "Racine du système de fichiers"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Erreur d’écriture vers le descripteur de fichier : %s"
 
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr ""
 "Les adresses abstraites de connecteur réseau de domaine UNIX ne sont pas "
 "prises en charge sur ce système"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "le volume n’implémente pas l’éjection (« eject »)"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr ""
 "le volume n’implémente pas l’éjection (« eject » ou « eject_with_operation »)"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr ""
+"L’application « %s » dans l’objet de l’application ne contient pas de verbe"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+"L’application « %s » et le gestionnaire « %s » dans l’objet de l’application "
+"ne contient pas de verbe"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Erreur de lecture à partir de l’identificateur : %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Erreur de fermeture de l’identificateur : %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Erreur lors de l’écriture vers l’identificateur : %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Mémoire insuffisante"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Erreur interne : %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Entrée nécessitant plus de données"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Données compressées non valides"
 
@@ -4645,153 +4704,291 @@ msgstr "Exécuter un service dbus"
 msgid "Wrong args\n"
 msgstr "Paramètres incorrects\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "L’ouverture de « %s » a échoué : %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Erreur : impossible d’écrire l’intégralité de la sortie : %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Erreur : le renommage du fichier « %s » vers « %s » a échoué : %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Inclure les répertoires dans le chemin de recherche GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Fichier de sortie"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Bibliothèque partagée"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Affiche les messages de débogage"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Affiche les messages détaillés"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Affiche le numéro de version du programme et quitte"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Erreur lors de l’analyse des arguments : %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Veuillez ne spécifier qu’un seul fichier d’entrée"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Erreur lors de l’analyse du fichier « %s » : %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "La construction de typelib pour le module « %s » a échoué"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "typelib non valide pour le module « %s » : %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Afficher toutes les informations disponibles"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "L’analyse a échoué : %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Aucun fichier d’entrée"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "La lecture de « %s » a échoué : %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "La création de typelib « %s » a échoué : %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Le chargement de typelib a échoué : %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Attention : %u modules oubliés"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Version de typelib à inspecter"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSION"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Lister les bibliothèques partagées nécessaires pour le typelib"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Lister les autres typelibs dont le typelib inspecté a besoin"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "Le typelib à inspecter"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "ESPACE DE NOM"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Inspecter le typelib GI"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "L’analyse des options de la commande a échoué : %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Veuillez ne spécifier qu’un seul espace de nom"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Veuillez spécifier --print-shlibs, --print-typelibs ou les deux"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Attribut « %s » inattendu pour l’élément « %s »"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "L’attribut « %s » de l’élément « %s » est introuvable"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Balise « %s » inattendue. La balise « %s » était attendue"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Balise « %s » inattendue à l’intérieur de « %s »"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Date et heure « %s » non valide dans le fichier de signets"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr ""
 "Impossible de trouver un fichier de signets valide dans les répertoires de "
 "données"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Un signet pour l’URI « %s » existe déjà"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Aucun signet trouvé pour l’URI « %s »"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Aucun type MIME défini dans le signet pour l’URI « %s »"
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "Aucun indicateur privé n’est défini dans le signet pour l’URI « %s »"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "Aucun groupe n’est défini dans le signet pour l’URI « %s »"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr "Aucune application nommée « %s » n’a enregistré un signet pour « %s »"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr ""
 "Échec du développement de la ligne de commande « %s » pour l’URI « %s »"
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Caractère non affichable dans l’entrée du convertisseur"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Séquence de caractères incomplète en fin d’entrée"
 
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr ""
 "Impossible de convertir le caractère de repli « %s » dans le jeu de codes "
 "« %s »"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Octet nul imbriqué dans l’entrée du convertisseur"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Octet nul imbriqué dans la sortie du convertisseur"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr "L’URI « %s » n’est pas une URI absolue utilisant le protocole « file »"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "L’URI « %s » n’est pas valide"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "Le nom d’hôte de l’URI « %s » n’est pas valide"
 
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "L’URI « %s » contient des caractères d’échappement incorrects"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "Le nom de chemin « %s » n’est pas un chemin absolu"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %d %b %Y %T %Z"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%d/%m/%y"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%I:%M:%S %p"
@@ -4812,62 +5009,62 @@ msgstr "%I:%M:%S %p"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "janvier"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "février"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "mars"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "avril"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "mai"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "juin"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "juillet"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "août"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "septembre"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "octobre"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "novembre"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "décembre"
@@ -4889,132 +5086,132 @@ msgstr "décembre"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "janv."
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "févr."
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "mars"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "avril"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "mai"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "juin"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "juil."
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "août"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "sept."
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "oct."
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "nov."
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "déc."
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "lundi"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "mardi"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "mercredi"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "jeudi"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "vendredi"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "samedi"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "dimanche"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "lun."
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "mar."
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "mer."
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "jeu."
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "ven."
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "sam."
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "dim."
@@ -5036,62 +5233,62 @@ msgstr "dim."
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "janvier"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "février"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "mars"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "avril"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "mai"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "juin"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "juillet"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "août"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "septembre"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "octobre"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "novembre"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "décembre"
@@ -5113,199 +5310,205 @@ msgstr "décembre"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "janv."
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "févr."
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "mars"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "avril"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "mai"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "juin"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "juil."
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "août"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "sept."
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "oct."
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "nov."
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "déc."
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "AM"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "PM"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Erreur à l’ouverture du répertoire « %s » : %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "Impossible d’allouer %lu octet pour lire le fichier « %s »"
-msgstr[1] "Impossible d’allouer %lu octets pour lire le fichier « %s »"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Impossible d’allouer %s pour lire le fichier « %s »"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Erreur de lecture du fichier « %s » : %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Le fichier « %s » est trop grand"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "La lecture depuis le fichier « %s » a échoué : %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "L’ouverture du fichier « %s » a échoué : %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr ""
 "L’obtention des attributs du fichier « %s » a échoué : échec de fstat() : %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "L’ouverture du fichier « %s » a échoué : échec de fdopen() : %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr ""
 "Le renommage du fichier « %s » vers « %s » a échoué : échec de g_rename() : "
 "%s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "L’écriture dans le fichier « %s » a échoué : échec de ftruncate() : %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "L’écriture dans le fichier « %s » a échoué : échec de write() : %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "L’écriture dans le fichier « %s » a échoué : échec de fsync() : %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "La création du fichier « %s » a échoué : %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr ""
 "Le fichier existant « %s » ne peut pas être supprimé : échec de g_unlink() : "
 "%s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr ""
 "Le modèle « %s » n’est pas valide, il ne devrait pas contenir un « %s »"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Le modèle « %s » ne contient pas XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "La lecture du lien symbolique « %s » a échoué : %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "Impossible d’ouvrir le convertisseur de « %s » vers « %s » : %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr ""
 "Lecture de données brutes impossible dans g_io_channel_read_line_string"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "Données restantes non converties dans le tampon de lecture"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "La canal se termine avec un caractère partiel"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Lecture de données brutes impossible dans g_io_channel_read_to_end"
 
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr ""
 "Impossible de trouver un fichier de clés valide dans les répertoires de "
 "recherche"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "N’est pas un fichier standard"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5313,46 +5516,46 @@ msgstr ""
 "Le fichier de clés contient la ligne « %s » qui n’est ni une paire de "
 "valeurs de clé, ni un groupe, ni un commentaire"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Nom de groupe non valide : %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Le fichier de clés ne débute pas par un groupe"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Nom de clé non valide : %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr ""
 "Le fichier de clés contient un codage de caractères non pris en charge « %s »"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Le fichier de clés n’a pas de groupe « %s »"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Le fichier de clés ne contient pas de clé « %s » dans le groupe « %s »"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr ""
 "Le fichier de clés contient la clé « %s » avec la valeur « %s » qui n’est "
 "pas codé en UTF-8"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
@@ -5360,7 +5563,7 @@ msgstr ""
 "Le fichier de clés contient la clé « %s » dont une valeur est impossible à "
 "interpréter."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5369,41 +5572,41 @@ msgstr ""
 "Le fichier de clés contient la clé « %s » dans le groupe « %s » qui a une "
 "valeur impossible à interpréter."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr ""
 "La clé « %s » dans le groupe « %s » a une valeur « %s » alors que %s était "
 "attendu"
 
-#: glib/gkeyfile.c:4357
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Le fichier de clés contient un caractère d’échappement en fin de ligne"
 
-#: glib/gkeyfile.c:4394
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr ""
 "Le fichier de clés contient une séquence d’échappement non valide « %s »"
 
-#: glib/gkeyfile.c:4545
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "La valeur « %s » ne peut pas être interprétée comme un nombre."
 
-#: glib/gkeyfile.c:4559
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "La valeur entière « %s » est hors plage"
 
-#: glib/gkeyfile.c:4592
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr ""
 "La valeur « %s » ne peut pas être interprétée comme un nombre à virgule "
 "flottante."
 
-#: glib/gkeyfile.c:4631
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "La valeur « %s » ne peut pas être interprétée comme un booléen."
@@ -5425,32 +5628,32 @@ msgstr "Le mappage %s%s%s%s a échoué : échec de mmap() : %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "L’ouverture du fichier « %s » a échoué : échec de open() : %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Erreur à la ligne %d, caractère %d : "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "Codage UTF-8 non valide dans le nom — « %s » n’est pas valide"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "« %s » n’est pas un nom valide"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "« %s » n’est pas un nom valide : « %c »"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Erreur à la ligne %d : %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5460,7 +5663,7 @@ msgstr ""
 "référence des caractères (&#234; par exemple) — peut-être que le nombre est "
 "trop grand"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5470,24 +5673,24 @@ msgstr ""
 "vraisemblablement utilisé une esperluette sans intention d’écrire une entité "
 "— échappez l’esperluette avec &amp;"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "La référence au caractère « %-.*s » ne code pas un caractère autorisé"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Entité vide « &; » rencontrée ; les entités valides sont : &amp; &quot; &lt; "
 "&gt; &apos;"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "L’entité nommée « %-.*s » est inconnue"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5496,11 +5699,11 @@ msgstr ""
 "utilisé une esperluette sans intention d’écrire une entité — échappez "
 "l’esperluette avec &amp;"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Le document doit commencer avec un élément (par ex. <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5509,7 +5712,7 @@ msgstr ""
 "« %s » n’est pas un caractère valide à la suite du caractère « < » ; il ne "
 "semble pas commencer un nom d’élément"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5518,12 +5721,12 @@ msgstr ""
 "Caractère anormal « %s », un caractère « > » est requis pour terminer la "
 "balise d’élément vide « %s »"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "Trop d’attributs dans l’élément « %s »"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5531,7 +5734,7 @@ msgstr ""
 "Caractère anormal « %s », un caractère « = » est requis après le nom de "
 "l’attribut « %s » de l’élément « %s »"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5543,7 +5746,7 @@ msgstr ""
 "« %s » ; peut-être avez-vous utilisé un caractère non valide dans un nom "
 "d’attribut"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5552,7 +5755,7 @@ msgstr ""
 "Caractère anormal « %s », un guillemet d’ouverture après le signe égal est "
 "requis quand on affecte une valeur à l’attribut « %s » de l’élément « %s »"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5561,7 +5764,7 @@ msgstr ""
 "« %s » n’est pas un caractère valide à la suite des caractères « </ » ; "
 "« %s » ne peut pas commencer un nom d’élément"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5570,28 +5773,28 @@ msgstr ""
 "« %s » n’est pas un caractère valide à la suite du nom d’élément « %s » à "
 "fermer ; le caractère autorisé est « > »"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "L’élément « %s » a été fermé, aucun élément n’est actuellement ouvert"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr ""
 "L’élément « %s » a été fermé, mais l’élément actuellement ouvert est « %s »"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Le document était vide ou ne contenait que des espaces"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr ""
 "Le document s’est terminé de manière inattendue juste après un crochet "
 "ouvrant « < »"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5600,7 +5803,7 @@ msgstr ""
 "Le document s’est terminé de manière inattendue avec des éléments encore "
 "ouverts — « %s » était le dernier élément ouvert"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5609,25 +5812,25 @@ msgstr ""
 "Le document s’est terminé de manière inattendue, un crochet fermant pour la "
 "balise <%s/> est requis"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr ""
 "Le document s’est terminé de manière inattendue à l’intérieur d’un nom "
 "d’élément"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr ""
 "Le document s’est terminé de manière inattendue à l’intérieur d’un nom "
 "d’attribut"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr ""
 "Le document s’est terminé de manière inattendue à l’intérieur d’une balise "
 "d’ouverture d’élément."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5635,271 +5838,271 @@ msgstr ""
 "Le document s’est terminé de manière inattendue après le signe égal suivant "
 "un nom d’attribut ; aucune valeur d’attribut"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr ""
 "Le document s’est terminé de manière inattendue alors qu’il était à "
 "l’intérieur d’une valeur d’attribut"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr ""
 "Le document s’est terminé de manière inattendue à l’intérieur de la balise "
 "de fermeture pour l’élément « %s »"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
 "Le document s’est terminé de manière inattendue à l’intérieur de la balise "
 "de fermeture pour un élément non ouvert"
 
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Le document s’est terminé de manière inattendue à l’intérieur d’un "
 "commentaire ou d’une instruction de traitement"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[OPTION…]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Options de l’aide :"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Affiche les options de l’aide"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Affiche toutes les options de l’aide"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Options de l’application :"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Options :"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "Impossible d’analyser la valeur entière « %s » pour %s"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "La valeur entière « %s » pour %s est hors plage"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "Impossible d’analyser la valeur double « %s » pour %s"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "La valeur double « %s » pour %s est hors plage"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Erreur lors de l’analyse de l’option %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Paramètre manquant pour %s"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Option inconnue %s"
 
-#: glib/gregex.c:480
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "objet endommagé"
 
-#: glib/gregex.c:482
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "mémoire insuffisante"
 
-#: glib/gregex.c:497
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "erreur interne"
 
-#: glib/gregex.c:499
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr ""
 "le motif contient des éléments non pris en charge pour une correspondance "
 "partielle"
 
-#: glib/gregex.c:501
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "les références inverses utilisées comme conditions ne sont pas prises en "
 "charge pour une correspondance partielle"
 
-#: glib/gregex.c:507
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "limite de récursivité atteinte"
 
-#: glib/gregex.c:509
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "mauvais décalage"
 
-#: glib/gregex.c:511
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "boucle récursive"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:514
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr "le mode de correspondance demandé n’a pas été compilé pour JIT"
 
-#: glib/gregex.c:535 glib/gregex.c:1851
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "erreur inconnue"
 
-#: glib/gregex.c:556
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ à la fin du motif"
 
-#: glib/gregex.c:560
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c à la fin du motif"
 
-#: glib/gregex.c:565
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "un caractère non reconnu suit \\"
 
-#: glib/gregex.c:569
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "nombres en désordre dans le quantificateur {}"
 
-#: glib/gregex.c:573
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "nombre trop grand dans le quantificateur {}"
 
-#: glib/gregex.c:577
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "caractère terminaison ] manquant pour la classe de caractère"
 
-#: glib/gregex.c:581
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "séquence d’échappement non valide dans la classe de caractère"
 
-#: glib/gregex.c:585
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "plage déclassée dans la classe de caractère"
 
-#: glib/gregex.c:590
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "rien à répéter"
 
-#: glib/gregex.c:594
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "caractère non reconnu après (? ou (?-"
 
-#: glib/gregex.c:598
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr ""
 "Les classes nommées selon la norme POSIX sont uniquement prises en charge "
 "dans une classe"
 
-#: glib/gregex.c:602
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "les éléments d’interclassement POSIX ne sont pas pris en charge"
 
-#: glib/gregex.c:608
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr ") de terminaison manquante"
 
-#: glib/gregex.c:612
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "référence à un sous-motif inexistant"
 
-#: glib/gregex.c:616
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "« ) » manquante après un commentaire"
 
-#: glib/gregex.c:620
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "l’expression régulière est trop grande"
 
-#: glib/gregex.c:624
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "nom ou nombre non conforme après (?("
 
-#: glib/gregex.c:628
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "l’assertion « lookbehind » n’a pas de longueur fixe"
 
-#: glib/gregex.c:632
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "un groupe conditionnel contient plus de deux branches"
 
-#: glib/gregex.c:636
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "une assertion est attendue après (?("
 
-#: glib/gregex.c:640
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "une référence numérotée ne doit pas être zéro"
 
-#: glib/gregex.c:644
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "nom de classe POSIX inconnu"
 
-#: glib/gregex.c:649
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "la valeur du caractère dans la séquence \\x{…} est trop grande"
 
-#: glib/gregex.c:653
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C n’est pas autorisé dans l’assertion « lookbehind »"
 
-#: glib/gregex.c:657
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "terminaison manquante dans le nom du sous-motif"
 
-#: glib/gregex.c:661
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "deux sous-motifs nommés possèdent le même nom"
 
-#: glib/gregex.c:665
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "séquence \\P ou \\p mal formée"
 
-#: glib/gregex.c:669
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "nom de propriété inconnu après \\P ou \\p"
 
-#: glib/gregex.c:673
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "le nom du sous-motif est trop long (32 caractères maximum)"
 
-#: glib/gregex.c:677
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "trop de sous-motifs nommés (10 000 maximum)"
 
-#: glib/gregex.c:681
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "la valeur octale est plus grande que \\377"
 
-#: glib/gregex.c:685
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "le groupe DEFINE contient plus d’une branche"
 
-#: glib/gregex.c:689
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "options NEWLINE inconsistantes"
 
-#: glib/gregex.c:693
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5907,245 +6110,245 @@ msgstr ""
 "\\g n’est pas suivi d’un nom ou nombre entre accolades, chevrons, guillemets "
 "simples ou d’un nombre simple"
 
-#: glib/gregex.c:698
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "un paramètre n’est pas permis pour (*ACCEPT), (*FAIL) ou (*COMMIT)"
 
-#: glib/gregex.c:702
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB) non reconnu"
 
-#: glib/gregex.c:706
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "le nombre est trop grand"
 
-#: glib/gregex.c:710
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "nom de sous-motif manquant après (?&"
 
-#: glib/gregex.c:714
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr ""
 "il n’est pas permis d’avoir des noms différents pour des sous-motifs du même "
 "nombre"
 
-#: glib/gregex.c:718
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) doit avoir un paramètre"
 
-#: glib/gregex.c:722
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "\\c doit être suivi d’un caractère ASCII"
 
-#: glib/gregex.c:726
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "\\k n’est pas suivi d’un nom entre accolades, chevrons ou guillemets simples"
 
-#: glib/gregex.c:730
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N n’est pas pris en charge dans une classe"
 
-#: glib/gregex.c:734
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "le nom est trop long dans (*MARK), (*PRUNE), (*SKIP) ou (*THEN)"
 
-#: glib/gregex.c:738 glib/gregex.c:874
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "dépassement de code"
 
-#: glib/gregex.c:742
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "caractère non reconnu après (?P"
 
-#: glib/gregex.c:746
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "dépassement de capacité en compilant l’espace de travail"
 
-#: glib/gregex.c:750
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "un sous-motif référencé et précédemment vérifié n’a pas été trouvé"
 
-#: glib/gregex.c:873 glib/gregex.c:1135 glib/gregex.c:2457
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "Erreur lors de la correspondance de l’expression régulière %s : %s"
 
-#: glib/gregex.c:1735
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "La bibliothèque PCRE est compilée sans la prise en charge UTF-8"
 
-#: glib/gregex.c:1743
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "La bibliothèque PCRE est compilée avec des options incompatibles"
 
-#: glib/gregex.c:1860
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr ""
 "Erreur à la compilation de l’expression régulière « %s » au caractère %s : %s"
 
-#: glib/gregex.c:2900
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "chiffre hexadécimal ou « } » attendu"
 
-#: glib/gregex.c:2916
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "chiffre hexadécimal attendu"
 
-#: glib/gregex.c:2956
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "« < » manquant dans la référence symbolique"
 
-#: glib/gregex.c:2965
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "référence symbolique non terminée"
 
-#: glib/gregex.c:2972
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "référence symbolique de longueur nulle"
 
-#: glib/gregex.c:2983
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "chiffre attendu"
 
-#: glib/gregex.c:3001
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "référence symbolique illégale"
 
-#: glib/gregex.c:3064
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "terminaison parasite « \\ »"
 
-#: glib/gregex.c:3068
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "séquence d’échappement inconnue"
 
-#: glib/gregex.c:3078
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr ""
 "Erreur lors de l’analyse du texte de substitution « %s » au caractère %lu : "
 "%s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Le texte cité ne commence pas par des guillemets"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr ""
 "Guillemets de fermeture introuvables dans la ligne de commande ou autre "
 "texte rapporté"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr ""
 "Le texte s’est terminé juste après un caractère « \\ » (le texte était "
 "« %s »)."
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Le texte s’est terminé avant que des guillemets correspondants ne soient "
 "rencontrés pour %c (le texte était « %s »)."
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Le texte était vide (ou ne contenait que des espaces)"
 
-#: glib/gspawn.c:320
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "La lecture des données depuis le processus fils a échoué (%s)"
 
-#: glib/gspawn.c:473
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr ""
 "Erreur inattendue lors de la lecture de données depuis un processus fils (%s)"
 
-#: glib/gspawn.c:558
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Erreur inattendue dans waitpid() (%s)"
 
-#: glib/gspawn.c:1180 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Le processus fils s’est terminé avec le code %ld"
 
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Le processus fils a été tué par le signal %ld"
 
-#: glib/gspawn.c:1195
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Le processus fils a été arrêté par le signal %ld"
 
-#: glib/gspawn.c:1202
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "Le processus fils s’est terminé anormalement"
 
-#: glib/gspawn.c:2032 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "La lecture depuis un tube fils a échoué (%s)"
 
-#: glib/gspawn.c:2404
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "L’exécution du processus fils « %s » a échoué (%s)"
 
-#: glib/gspawn.c:2530
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Le clonage a échoué (%s)"
 
-#: glib/gspawn.c:2690 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "Le changement de répertoire « %s » a échoué (%s)"
 
-#: glib/gspawn.c:2700
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "L’exécution du processus fils « %s » a échoué (%s)"
 
-#: glib/gspawn.c:2710
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr ""
 "L’ouverture du fichier pour réallouer le descripteur de fichier a échoué (%s)"
 
-#: glib/gspawn.c:2718
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr ""
 "La duplication du descripteur de fichier pour le processus fils a échoué (%s)"
 
-#: glib/gspawn.c:2727
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Le clonage du processus fils a échoué (%s)"
 
-#: glib/gspawn.c:2735
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr ""
 "La fermeture du descripteur de fichier pour le processus fils a échoué (%s)"
 
-#: glib/gspawn.c:2743
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Erreur inconnue à l’exécution du processus fils « %s »"
 
-#: glib/gspawn.c:2767
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr ""
@@ -6204,78 +6407,78 @@ msgstr ""
 "Erreur inattendue dans g_io_channel_win32_poll() lors de la lecture des "
 "données depuis un processus fils"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "Une chaîne vide n’est pas un nombre"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "« %s » n’est pas un nom valide"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "Le nombre « %s » est hors limites [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "« %s » n’est pas un nombre non signé"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "%-encoding non valide dans l’URI"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Caractère interdit dans l’URI"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Caractère non-UTF-8 dans l’URI"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Adresse IPv6 invalide « %.*s » dans l’URI"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Adresse IP encodée interdite « %.*s » dans l’URI"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Nom d’hôte internationalisé interdit « %.*s » dans l’URI"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Impossible d’analyser le port « %.*s » dans l’URI"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "Le port « %.*s » de l’URI est en dehors de la plage"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "L’URI « %s » n’est pas une URI absolue"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "l’URI « %s » n’a pas de partie hôte"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "L’URI n’est pas absolue, et aucune URI de base n’a été fournie"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "Caractère « = » et paramètre manquants"
 
@@ -6356,65 +6559,65 @@ msgstr "Pio"
 msgid "EiB"
 msgstr "Eio"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "kb"
+msgid "kbit"
+msgstr "kbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "Mb"
+msgid "Mbit"
+msgstr "Mbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "Gb"
+msgid "Gbit"
+msgstr "Gbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "Tb"
+msgid "Tbit"
+msgstr "Tbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "Pb"
+msgid "Pbit"
+msgstr "Pbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "Eb"
+msgid "Ebit"
+msgstr "Ebit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "Kib"
+msgid "Kibit"
+msgstr "Kibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "Mib"
+msgid "Mibit"
+msgstr "Mibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "Gib"
+msgid "Gibit"
+msgstr "Gibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "Tib"
+msgid "Tibit"
+msgstr "Tibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "Pib"
+msgid "Pibit"
+msgstr "Pibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "Eib"
+msgid "Eibit"
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6519,6 +6722,53 @@ msgstr "%.1f Po"
 msgid "%.1f EB"
 msgstr "%.1f Eo"
 
+#~ msgid "Could not allocate %"
+#~ msgid_plural "Could not allocate %"
+#~ msgstr[0] "Impossible d’allouer %"
+#~ msgstr[1] "Impossible d’allouer %"
+
+#~ msgid ""
+#~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
+#~ msgstr ""
+#~ "Message de METHOD_RETURN : champ d’en-tête REPLY_SERIAL manquant ou non "
+#~ "valide"
+
+#~ msgid "kb"
+#~ msgstr "kb"
+
+#~ msgid "Mb"
+#~ msgstr "Mb"
+
+#~ msgid "Gb"
+#~ msgstr "Gb"
+
+#~ msgid "Tb"
+#~ msgstr "Tb"
+
+#~ msgid "Pb"
+#~ msgstr "Pb"
+
+#~ msgid "Eb"
+#~ msgstr "Eb"
+
+#~ msgid "Kib"
+#~ msgstr "Kib"
+
+#~ msgid "Mib"
+#~ msgstr "Mib"
+
+#~ msgid "Gib"
+#~ msgstr "Gib"
+
+#~ msgid "Tib"
+#~ msgstr "Tib"
+
+#~ msgid "Pib"
+#~ msgstr "Pib"
+
+#~ msgid "Eib"
+#~ msgstr "Eib"
+
 #~ msgid "GApplication options"
 #~ msgstr "Options GApplication"
 
index ee46f4a..c163f91 100644 (file)
--- a/po/gl.po
+++ b/po/gl.po
@@ -18,8 +18,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: glib.master\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
-"POT-Creation-Date: 2024-02-15 02:24+0000\n"
-"PO-Revision-Date: 2024-02-18 20:52+0100\n"
+"POT-Creation-Date: 2024-03-13 21:17+0000\n"
+"PO-Revision-Date: 2024-03-14 10:17+0100\n"
 "Last-Translator: Fran Dieguez <fran.dieguez@gnome.org>\n"
 "Language-Team: Galician <proxecto@trasno.gal>\n"
 "Language: gl\n"
@@ -147,7 +147,7 @@ msgid "APPID"
 msgstr "APPID"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:259
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "ORDE"
 
@@ -160,9 +160,13 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr ""
 "Identificador de aplicacións en formato D-Bus (p.ex.: org.exemplo.visor)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
 #: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "FICHEIRO"
 
@@ -1159,6 +1163,10 @@ msgstr "Conectar ao bus de sesión"
 msgid "Connect to given D-Bus address"
 msgstr "Conectar a un enderezo D-Bus fornecido"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ENDEREZO"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Opcións da conexión do extremo:"
@@ -1558,7 +1566,7 @@ msgstr "Non é posíbel copiar o ficheiro especial"
 msgid "Invalid symlink value given"
 msgstr "O valor da ligazón simbólica dada non é válido"
 
-#: gio/gfile.c:4342 glib/gfileutils.c:2399
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "As ligazóns simbólicas non se admiten"
 
@@ -2585,7 +2593,8 @@ msgstr ""
 "directorio actual)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "DIRECTORIO"
 
@@ -2637,6 +2646,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "O nome de identificador C usado para xerar o código fonte"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFICADOR"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr ""
@@ -4611,6 +4624,144 @@ msgstr "Executar servizo dbus"
 msgid "Wrong args\n"
 msgstr "Argumentos incorrectos\n"
 
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Produciuse un erro ao abrir «%s»: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Erro: Non foi posíbel escribir a saída completa: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Erro: Produciuse un erro ao renomear «%s» a «%s»: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Incluír directorios na ruta de busca de GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Ficheiro de saída"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Biblioteca compartida"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Mostrar os mensaxes de depuración"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Mostrar os mensaxes verbosos"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Mostrar o número de versión do programa e saír"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Produciuse un erro ao analizar os argumentos: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Especifique exactamente un ficheiro de entrada"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Produciuse un erro ao analizar o ficheiro «%s»: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Produciuse un fallo ao construír o typelib para o módulo «%s»"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Typelib non válido para o módulo «%s»: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Mostrar toda a información dispoñíbel"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Produciuse un fallo ao analizar: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Non hai ficheiros de entrada"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Produciuse un fallo ao ler «%s»: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Produciuse un fallo ao crear o typelib «%s»: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Produciuse un fallo ao cargar o typelib: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Aviso: %u módulos emitidos"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Versión de Typelib a inspeccionar"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSIÓN"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "LIsta as bibliotecas compartidas que require typelib"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Listra outros typelibs que require o typelib inspeccionado"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "O typelib a inspeccionar"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "ESPAZODENOMES"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Inspeccionar typelib GI"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Produciuse un fallo ao analizar as opcións de liña de ordes: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Especifique exactamente un espazo de nomes"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Especifique —print-shlibs, —print-typelibs ou ambas"
+
 #: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
@@ -5155,87 +5306,89 @@ msgstr "PM"
 msgid "Error opening directory “%s”: %s"
 msgstr "Produciuse un erro ao abrir o directorio «%s»: %s"
 
-#: glib/gfileutils.c:716 glib/gfileutils.c:820
-msgid "Could not allocate %"
-msgid_plural "Could not allocate %"
-msgstr[0] "Non foi posíbel reservar %"
-msgstr[1] "Non foi posíbel reservar %"
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
+#, c-format
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Non foi posíbel reservar %s para ler o ficheiro «%s»"
 
-#: glib/gfileutils.c:733
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Produciuse un erro ao ler o ficheiro «%s»: %s"
 
-#: glib/gfileutils.c:769 glib/gfileutils.c:803
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "O ficheiro «%s» é demasiado grande"
 
-#: glib/gfileutils.c:845
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Produciuse un erro ao ler desde o ficheiro «%s»: %s"
 
-#: glib/gfileutils.c:895 glib/gfileutils.c:970 glib/gfileutils.c:1477
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Produciuse un erro ao abrir o ficheiro «%s»: %s"
 
-#: glib/gfileutils.c:908
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr ""
 "Produciuse un erro ao obter os atributos do ficheiro «%s»: fstat() fallou: %s"
 
-#: glib/gfileutils.c:939
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Produciuse un erro ao abrir o ficheiro «%s»: fdopen() fallou: %s"
 
-#: glib/gfileutils.c:1040
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr ""
 "Produciuse un erro ao renomear o ficheiro «%s» como «%s»: g_rename() fallou: "
 "%s"
 
-#: glib/gfileutils.c:1139
+#: glib/gfileutils.c:1149
 #, c-format
 msgid "Failed to write file “%s”: ftruncate() failed: %s"
 msgstr "Produciuse un erro ao escribir o ficheiro «%s»: ftruncate() fallou: %s"
 
-#: glib/gfileutils.c:1184
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Produciuse un erro ao escribir o ficheiro «%s»: write() fallou: %s"
 
-#: glib/gfileutils.c:1205
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Produciuse un erro ao escribir o ficheiro «%s»: fsync() fallou: %s"
 
-#: glib/gfileutils.c:1366 glib/gfileutils.c:1783
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Produciuse un erro ao crear o ficheiro «%s»: %s"
 
-#: glib/gfileutils.c:1411
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr ""
 "Non foi posíbel retirar o ficheiro existente «%s»: g_unlink() fallou: %s"
 
-#: glib/gfileutils.c:1748
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "O modelo «%s» non é válido, non debería conter «%s»"
 
-#: glib/gfileutils.c:1761
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "O modelo «%s» non contén XXXXXX"
 
-#: glib/gfileutils.c:2355 glib/gfileutils.c:2384
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Produciuse un erro ao ler a ligazón simbólica «%s»: %s"
@@ -6460,18 +6613,17 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~ msgid "Could not allocate %"
+#~ msgid_plural "Could not allocate %"
+#~ msgstr[0] "Non foi posíbel reservar %"
+#~ msgstr[1] "Non foi posíbel reservar %"
+
 #~ msgid ""
 #~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
 #~ msgstr ""
 #~ "Mensaxe METHOD_RETURN: falta o campo da cabeceira REPLY_SERIAL ou non é "
 #~ "válido"
 
-#, c-format
-#~ msgid "Could not allocate %lu byte to read file “%s”"
-#~ msgid_plural "Could not allocate %lu bytes to read file “%s”"
-#~ msgstr[0] "Non foi posíbel asignar %lu byte para ler o ficheiro «%s»"
-#~ msgstr[1] "Non foi posíbel asignar %lu bytes para ler o ficheiro «%s»"
-
 #~ msgid "kb"
 #~ msgstr "kb"
 
index 78ec005..5f61b29 100644 (file)
--- a/po/id.po
+++ b/po/id.po
@@ -10,8 +10,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: glib main\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
-"POT-Creation-Date: 2024-02-14 09:23+0000\n"
-"PO-Revision-Date: 2024-02-25 13:40+0700\n"
+"POT-Creation-Date: 2024-03-27 18:59+0000\n"
+"PO-Revision-Date: 2024-04-22 18:01+0700\n"
 "Last-Translator: Andika Triwidada <andika@gmail.com>\n"
 "Language-Team: Indonesian <gnome@i15n.org>\n"
 "Language: id\n"
@@ -128,7 +128,7 @@ msgid "APPID"
 msgstr "APPID"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:259
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "PERINTAH"
 
@@ -140,9 +140,13 @@ msgstr "Perintah yang ingin dicetak bantuan terrincinya"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Identifier aplikasi dalam format D-Bus (mis: org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
 #: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "BERKAS"
 
@@ -1107,6 +1111,10 @@ msgstr "Menyambung ke bus sesi"
 msgid "Connect to given D-Bus address"
 msgstr "Menyambung ke alamat D-Bus yang diberikan"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ALAMAT"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Opsi Titik Ujung Sambungan:"
@@ -1503,7 +1511,7 @@ msgstr "Tak bisa menyalin berkas spesial"
 msgid "Invalid symlink value given"
 msgstr "Diberikan nilai link simbolik yang tak valid"
 
-#: gio/gfile.c:4342 glib/gfileutils.c:2399
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Taut simbolik tidak didukung"
 
@@ -2521,7 +2529,8 @@ msgstr ""
 "(bawaan: direktori saat ini)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "DIREKTORI"
 
@@ -2573,6 +2582,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Nama identifier C yang dipakai bagi kode sumber yang dibuat"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFIER"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Kompiler target C (bawaan: variabel lingkungan CC)"
@@ -4514,6 +4527,146 @@ msgstr "Jalankan layanan dbus"
 msgid "Wrong args\n"
 msgstr "Arg salah\n"
 
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Gagal membuka '%s': %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Galat: Tidak dapat menulis seluruh keluaran: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Galat: Gagal mengganti nama '%s' menjadi '%s': %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Sertakan direktori di path pencarian GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Berkas keluaran"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Pustaka bersama"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Tampilkan pesan awakutu"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Tampilkan pesan rinci"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Tampilkan versi program dan keluar"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Galat saat mengurai argumen: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Harap tentukan dengan tepat satu berkas masukan"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Galat saat mengurai berkas '%s': %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Gagal membangun typelib untuk modul '%s'"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Typelib tidak valid untuk modul '%s': %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Tampilkan semua informasi yang tersedia"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Gagal mengurai: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Tidak ada berkas masukan"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Gagal membaca '%s': %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Gagal membuat typelib '%s': %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Gagal memuat typelib: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Peringatan: %u modul diabaikan"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Versi Typelib untuk diperiksa"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSI"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Mencantumkan daftar pustaka bersama yang diperlukan typelib"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr ""
+"Mencantumkan daftar typelib lain yang diperlukan oleh typelib yang diperiksa"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "Typelib untuk diperiksa"
+
+#: girepository/inspector/inspector.c:75
+#| msgid "NAME"
+msgid "NAMESPACE"
+msgstr "NAMESPACE"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Periksa GI typelib"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Gagal mengurai opsi baris perintah: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Harap tentukan dengan tepat satu namespace"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Harap tentukan --print-shlibs, --print-typelibs atau keduanya"
+
 #: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
@@ -5054,82 +5207,85 @@ msgstr "PM"
 msgid "Error opening directory “%s”: %s"
 msgstr "Galat saat membuka direktori \"%s\": %s"
 
-#: glib/gfileutils.c:716 glib/gfileutils.c:820
-msgid "Could not allocate %"
-msgid_plural "Could not allocate %"
-msgstr[0] "Tak bisa mengalokasikan %"
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
+#, c-format
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Tidak dapat mengalokasikan %s untuk membaca berkas \"%s\""
 
-#: glib/gfileutils.c:733
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Galat saat membaca berkas \"%s\": %s"
 
-#: glib/gfileutils.c:769 glib/gfileutils.c:803
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Berkas \"%s\" terlalu besar"
 
-#: glib/gfileutils.c:845
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Gagal membaca dari berkas \"%s\": %s"
 
-#: glib/gfileutils.c:895 glib/gfileutils.c:970 glib/gfileutils.c:1477
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Gagal membuka berkas \"%s\": %s"
 
-#: glib/gfileutils.c:908
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "Gagal mendapat atribut berkas \"%s\": fstat() gagal: %s"
 
-#: glib/gfileutils.c:939
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Gagal membuka berkas \"%s\": fdopen() gagal: %s"
 
-#: glib/gfileutils.c:1040
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "Gagal mengubah nama berkas \"%s\" menjadi \"%s\": g_rename() gagal: %s"
 
-#: glib/gfileutils.c:1139
+#: glib/gfileutils.c:1149
 #, c-format
 msgid "Failed to write file “%s”: ftruncate() failed: %s"
 msgstr "Gagal menulis berkas \"%s\": ftruncate() gagal: %s"
 
-#: glib/gfileutils.c:1184
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Gagal menulis berkas \"%s\": write() gagal: %s"
 
-#: glib/gfileutils.c:1205
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Gagal menulis berkas \"%s\": fsync() gagal: %s"
 
-#: glib/gfileutils.c:1366 glib/gfileutils.c:1783
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Gagal membuat berkas \"%s\": %s"
 
-#: glib/gfileutils.c:1411
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "Berkas \"%s\" yang ada tidak dapat dibuang: g_unlink() gagal: %s"
 
-#: glib/gfileutils.c:1748
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Templat \"%s\" tidak valid, tidak boleh mengandung \"%s\""
 
-#: glib/gfileutils.c:1761
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Templat \"%s\" tidak memuat XXXXXX"
 
-#: glib/gfileutils.c:2355 glib/gfileutils.c:2384
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Gagal membaca taut simbolik \"%s\": %s"
index beefc85..11ec4d2 100644 (file)
--- a/po/it.po
+++ b/po/it.po
@@ -1,7 +1,7 @@
 # Italian translation for glib.
 # This file is distributed under the same license as glib package
 # Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc.
-# Copyright (C) 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Free Software Foundation, Inc.
+# Copyright (C) 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024 Free Software Foundation, Inc.
 # Christopher R. Gabriel <cgabriel@pluto.linux.it> 2002.
 #
 # Nota sull'uso delle virgolette:
 # Seek è tradotto posizionare
 # Polling - proviamo con controllo sistematico (MS lo lascia non tradotto)
 # Luca Ferretti <lferrett@gnome.org>, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012.
-# Milo Casagrande <milo@milo.name>, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023.
+# Milo Casagrande <milo@milo.name>, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-09-12 10:26+0000\n"
-"PO-Revision-Date: 2023-09-13 09:25+0200\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-03-01 12:22+0000\n"
+"PO-Revision-Date: 2024-03-08 14:37+0100\n"
 "Last-Translator: Milo Casagrande <milo@milo.name>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
 "Language: it\n"
@@ -27,7 +27,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n!=1);\n"
-"X-Generator: Poedit 3.1.1\n"
+"X-Generator: Poedit 3.4.1\n"
 
 #: gio/gappinfo.c:339
 msgid "Setting default applications not supported yet"
@@ -50,36 +50,40 @@ msgstr "Nessuna applicazione predefinita trovata per il tipo di contenuto «%s»
 msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr "Nessuna applicazione predefinita trovata per lo schema URI «%s»"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "Opzioni GApplication:"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Mostra opzioni GApplication"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr "Avvia modalità di servizio GApplication (da file di servizio D-Bus)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Soprascrive l'ID dell'applicazione"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Stampa la versione dell'applicazione"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Sostituisce l'istanza in esecuzione"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Stampa l'aiuto"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[COMANDO]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Stampa la versione"
 
@@ -133,7 +137,7 @@ msgid "APPID"
 msgstr "IDAPP"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "COMANDO"
 
@@ -145,9 +149,13 @@ msgstr "Il comando di cui stampare istruzioni dettagliate"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Identificatore dell'applicazione in formato D-Bus (org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "FILE"
 
@@ -172,7 +180,7 @@ msgstr "PARAMETERO"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Parametro opzioni per l'azione da invocare, in formato GVariant"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -186,12 +194,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Uso:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Argomenti:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[ARG…]"
 
@@ -286,78 +294,78 @@ msgstr ""
 "\n"
 
 # count (gssize) è un parametro delle funzione
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "Valore count troppo grande passato a %s"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Posizionamento non supportato sullo stream di base"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "Impossibile troncare GBufferedInputStream"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "Lo stream è già chiuso"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "Troncamento non supportato sullo stream di base"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "L'operazione è stata annullata"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Oggetto non valido, non inizializzato"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Sequenza multi-byte non valida in ingresso"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Spazio non sufficiente nella destinazione"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Sequenza di byte non valida nell'ingresso per la conversione"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Errore durante la conversione: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Inizializzazione annullabile non supportata"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "La conversione del set di caratteri da «%s» a «%s» non è supportata"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Impossibile aprire il convertitore da «%s» a «%s»"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "Tipo %s"
@@ -371,44 +379,44 @@ msgstr "Tipo sconosciuto"
 msgid "%s filetype"
 msgstr "Tipo di file %s"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials contiene data non validi"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials non è implementato su questo SO"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Non c'è alcun supporto a GCredentials per la piattaforma in uso"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr "GCredentials non contiene un ID di processo su questo SO"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr ""
 "La falsificazione delle identità non è consentita su questo sistema operativo"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "End-of-stream prematuro inatteso"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "La chiave «%s» non è valida nella voce indirizzo «%s»"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr ""
 "Combinazione coppia chiave/valore senza significato nella voce indirizzo «%s»"
 
 # Come chiarito in un messaggio seguente, path, tmpdir e abstract sono nomi chi chiavi (NdT)
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -417,29 +425,29 @@ msgstr ""
 "L'indirizzo «%s» non è valido (necessario esattamente una tra le chiavi "
 "path, tmpdir o abstract)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Errore nell'indirizzo «%s» — l'attributo «%s» non è valido"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Trasporto «%s» sconosciuto o non supportato per l'indirizzo «%s»"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "L'elemento indirizzo «%s» non contiene due punti (:)"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr ""
 "Il nome del trasporto nell'elemento indirizzo «%s» non deve essere vuoto"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -448,7 +456,7 @@ msgstr ""
 "La coppia chiave/valore %d, «%s», nell'elemento indirizzo «%s», non contiene "
 "un segno di uguale"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
@@ -456,7 +464,7 @@ msgstr ""
 "La coppia chiave/valore %d, «%s», nell'elemento indirizzo «%s», non deve "
 "avere una chiave vuota"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -465,7 +473,7 @@ msgstr ""
 "Errore nell'eseguire l'unescaping sulla chiave o sul valore nella coppia "
 "chiave/valore %d, «%s», nell'elemento di indirizzo «%s»"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -474,83 +482,83 @@ msgstr ""
 "Errore nell'indirizzo «%s» — il trasporto unix richiede espressamente "
 "l'impostazione di una tra le chiavi «path» o «abstract»"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr ""
 "Errore nell'indirizzo «%s» — manca l'attributo «host» oppure non è valido"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr ""
 "Errore nell'indirizzo «%s» — manca l'attributo «port» oppure non è valido"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Errore nell'indirizzo «%s» — manca l'attributo «noncefile» oppure non è "
 "valido"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "Errore nell'avvio automatico: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "Errore nell'aprire il file nonce «%s»: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Errore nel leggere dal file nonce «%s»: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr "Errore nel leggere dal file nonce «%s»: attesi 16 byte, ottenuti %d"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr "Errore nello scrivere i contenuti del file nonce «%s» sullo stream:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "L'indirizzo fornito è vuoto"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr ""
 "Impossibile eseguire lo spawn di un bus di messaggi quando AT_SECURE è "
 "impostato"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr ""
 "Impossibile eseguire lo spawn di un bus di messaggi senza un machine-id: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "Impossibile lanciare automaticamente D-Bus senza $DISPLAY X11"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Errore nell'eseguire lo spawn della riga di comando «%s»: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Impossibile determinare l'indirizzo del bus di sessione (non implementato "
 "per questo S.O.)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -559,7 +567,7 @@ msgstr ""
 "Impossibile determinare l'indirizzo del bus dalla variabile d'ambiente "
 "DBUS_STARTER_BUS_TYPE — valore «%s» sconosciuto"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -567,22 +575,22 @@ msgstr ""
 "Impossibile determinare l'indirizzo del bus poiché la variabile d'ambiente "
 "DBUS_STARTER_BUS_TYPE non è impostata"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Tipo di bus %d sconosciuto"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Assenza di contenuto inattesa nel tentativo di leggere una riga"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr ""
 "Assenza di contenuto inattesa nel tentativo di leggere (in modo sicuro) una "
 "riga"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -590,15 +598,15 @@ msgstr ""
 "Esauriti tutti i meccanismi di autenticazione disponibili (provati: %s) "
 "(disponibili: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Assenza di contenuto inattesa nel tentativo di leggere un byte"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr "Gli ID utente devono essere gli stessi per nodo e server"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Annullato attraverso GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -620,13 +628,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Errore nel creare la directory «%s»: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Operazione non supportata"
 
@@ -691,18 +699,18 @@ msgstr "Errore nell'aprire il portachiavi «%s» in scrittura: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(inoltre non è riuscito il rilascio del blocco per «%s»: %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "La connessione è chiusa"
 
 # Sarebbe anche "il tempo è scaduto", ma non so
 # se la forma in cui l'hanno messo ha un particolare
 # senso, per cui la mantengo assieme a timeout
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "È stato raggiunto il timeout"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
@@ -794,50 +802,66 @@ msgstr "Un sottoalbero per %s è già esportato"
 msgid "Object does not exist at path “%s”"
 msgstr "L'oggetto non esiste nel percorso «%s»"
 
-# suppongo INVALID sia parola chiave
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "il tipo è INVALID"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
 msgstr ""
-"messaggio METHOD_CALL: campo header PATH o MEMBER non valido o mancante"
+"messaggio %s: il campo header %s non è valido; atteso un valore di tipo «%s»"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr ""
-"messaggio METHOD_RETURN: campo header REPLY_SERIAL non valido o mancante"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "messaggio %s: campo header %s non valido o mancante"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr ""
-"messaggio ERROR: campo header REPLY_SERIAL o ERROR_NAME non valido o mancante"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "messaggio %s: fornito un campo header non valido"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
 msgstr ""
-"messaggio SIGNAL: campo header PATH, INTERFACE o MEMBER non valido o mancante"
+"messaggio %s: il campo header PATH sta usando il valore riservato /org/"
+"freedestkop/DBus/Local"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
 msgstr ""
-"messaggio SIGNAL: il campo header PATH sta usando il valore riservato /org/"
-"freedestkop/DBus/Local"
+"messaggio %s: il campo header INTERFACE non contiene un nome valido "
+"d'interfaccia"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
 msgstr ""
-"messaggio SIGNAL: il campo header INTERFACE sta usando il valore riservato "
-"org.freedestkop.DBus.Local"
+"messaggio %s: il campo header INTERFACE sta usando il valore riservato org."
+"freedestkop.DBus.Local"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr ""
+"messaggio %s: il campo header MEMBER non contiene un nome valido di membro"
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+"messaggio %s: il campo header RROR_NAME non contiene un nome valido di errore"
+
+# suppongo INVALID sia parola chiave
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "il tipo è INVALID"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -845,12 +869,12 @@ msgstr[0] "Si voleva leggere %lu byte, ma ne sono stati ottenuti %lu"
 msgstr[1] "Si volevano leggere %lu byte, ma ne sono stati ottenuti %lu"
 
 # FIXME? plurale?
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr "Atteso byte NUL dopo la stringa «%s», ma trovato %d byte"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -860,21 +884,21 @@ msgstr ""
 "(la lunghezza della stringa è %d). La stringa UTF-8 valida fino a quel punto "
 "era «%s»"
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Valori troppo annidati"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr "Il valore «%s» analizzato non è un percorso oggetto D-Bus valido"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "Il valore «%s» analizzato non è una firma D-Bus valida"
 
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -887,7 +911,7 @@ msgstr[1] ""
 "Incontrato un array lungo %u byte. La lunghezza massima è 2<<26 byte (64 "
 "MiB)."
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -896,19 +920,19 @@ msgstr ""
 "Incontrato un array di tipo «a%c» la cui lunghezza attesa era di %u byte, ma "
 "la lunghezza reale era di %u byte"
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Le strutture vuote (tuple) non sono ammesse in D-Bus"
 
 # VARIANT è uno dei container type di D-Bus
 # anche signature sono cose specifiche del protocollo
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr "Il valore «%s» analizzato per il variant non è una firma D-Bus valida"
 
 # eeeehh?????
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -916,7 +940,7 @@ msgstr ""
 "Errore nel deserializzare il GVariant con la stringa di tipo «%s» dal "
 "formato wire D-Bus"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -925,26 +949,26 @@ msgstr ""
 "Valore endianness non valido. Atteso 0x6c («l») o 0x42 («B»), trovato invece "
 "il valore 0x%02x"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr "Versione major del protocollo non valida. Atteso 1, ma trovato %d"
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "Trovato header firma, ma non è di tipo firma"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr "Trovato header firma con firma «%s», ma il corpo del messaggio è vuoto"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr "Il valore «%s» analizzato non è una firma D-Bus valida (per il corpo)"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
@@ -953,11 +977,11 @@ msgstr[0] ""
 msgstr[1] ""
 "Nessun signature header nel messaggio, ma il corpo del messaggio è di %u byte"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Impossibile deserializzare il messaggio: "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -965,7 +989,7 @@ msgstr ""
 "Errore nel serializzare il GVariant con la stringa di tipo «%s» al formato "
 "wire D-Bus"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
@@ -973,17 +997,17 @@ msgstr ""
 "Il numero di descrittori file nel messaggio (%d) è diverso da quello del "
 "campo header (%d)"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Impossibile serializzare il messaggio: "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr ""
 "Il corpo del messaggio presenta la firma «%s», ma non c'è alcun header firma"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -992,20 +1016,20 @@ msgstr ""
 "Il corpo del messaggio presenta la firma «%s», ma la firma nel campo header "
 "è «%s»"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr "Il corpo del messaggio è vuoto, ma la firma nel campo header è «(%s)»"
 
 # non mi convincono "di ritorno" e "corpo"
 # ma altrove corpo non ci stava male
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Errore di ritorno con corpo di tipo «%s»"
 
 # come sopra
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Errore di ritorno con corpo vuoto"
 
@@ -1025,22 +1049,22 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Impossibile ottenere profilo hardware: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "impossibile caricare %s o %s: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Errore nel chiamare StartServiceByName per %s: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Risposta %d inattesa dal metodo StartServiceByName(\"%s\")"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1050,26 +1074,26 @@ msgstr ""
 "un proprietario e il proxy è stato costruito con il flag "
 "G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "Spazio nome astratto non supportato"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr "Impossibile specificare il file nonce quando si crea un server"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "Errore nello scrivere il file nonce su «%s»: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "La stringa «%s» non è un GUID D-Bus valido"
 
 # anche transport sono cose specifiche di D-Bus
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "Impossibile ascoltare sul transport «%s» non supportato"
@@ -1132,6 +1156,10 @@ msgstr "Connette al bus di sessione"
 msgid "Connect to given D-Bus address"
 msgstr "Connette all'indirizzo D-Bus fornito"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "INDIRIZZO"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Opzioni endpoint connessione:"
@@ -1367,26 +1395,27 @@ msgid "Not authorized to change debug settings"
 msgstr "Non autorizzato a modificare le impostazioni di debug"
 
 # NdT: nome di applicazione (quando manca)
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Senza nome"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "Il file .desktop non specifica il campo Exec"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Impossibile trovare il terminale richiesto per l'applicazione"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Programma «%s» non trovato in $PATH"
 
 # NdT il primo %s è il percorso alla cartella .local/share/application
 # messo tra parentesi per scelta stilistica...
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr ""
@@ -1394,49 +1423,49 @@ msgstr ""
 
 # NdT il primo %s è il percorso alla cartella .local/share/application
 # messo tra parentesi per scelta stilistica...
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr "Impossibile creare la cartella utente di configurazione MIME (%s): %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "Manca un identificatore nelle informazioni dell'applicazione"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Impossibile creare il file .desktop utente %s"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Definizione personalizzata per %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "l'unità non implementa l'azione eject"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "l'unità non implementa l'azione eject o eject_with_operation"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "l'unità non implementa il controllo sistematico dei supporti"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "l'unità non implementa l'azione start"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "l'unità non implementa l'azione stop"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "il backend TLS non implementa il recupero del binding TLS"
 
@@ -1449,27 +1478,27 @@ msgstr "Non è disponibile il supporto a TLS"
 msgid "DTLS support is not available"
 msgstr "Non è disponibile il supporto a DTLS"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Impossibile gestire la versione %d della codifica GEmblem"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Numero di token non valido (%d) nella codifica GEmblem"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Impossibile gestire la versione %d della codifica GEmblemedIcon"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Numero di token non valido (%d) nella codifica GEmblemedIcon"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Atteso un GEmblem per GEmblemedIcon"
 
@@ -1477,133 +1506,138 @@ msgstr "Atteso un GEmblem per GEmblemedIcon"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "L'oggetto mount contenuto non esiste"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Impossibile copiare sopra la directory"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Impossibile copiare la directory sopra la directory"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Il file destinazione esiste"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Impossibile copiare la directory ricorsivamente"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "Copia intervallo file non supportata"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Errore nell'eseguire lo splice del file: %s"
 
 # see man splice(2)  :)
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "Splice non supportato"
 
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr "Copia (reflink/clone) tra oggetti mount non supportata"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "Copia (reflink/clone) non supportata o non valida"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "Copia (reflink/clone) non supportata o non ha funzionato"
 
-#: gio/gfile.c:3395
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Impossibile recuperare l'attributo %s"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Impossibile copiare il file speciale"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Fornito valore di collegamento simbolico non valido"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Collegamenti simbolici non supportati"
 
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "Cestino non supportato"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "I nomi di file non possono contenere «%c»"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr ""
 "Creazione di una directory temporanea per il modello «%s» non riuscita: %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "il volume non implementa l'azione mount"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Non risulta registrata alcuna applicazione per gestire questo file"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "L'enumeratore è chiuso"
 
 # una sola ????
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "L'enumeratore di file presenta un'operazione in sospeso"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "L'enumeratore di file è già chiuso"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Impossibile gestire la versione %d della codifica GFileIcon"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Dati di input malformati per GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Lo stream non supporta query_info"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Posizionamento non supportato sullo stream"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "Troncamento non consentito sullo stream di input"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "Troncamento non supportato sullo stream"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Nome host non valido"
 
@@ -1636,66 +1670,66 @@ msgstr "Risposta proxy HTTP troppo grande"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "Il server proxy HTTP ha chiuso la connessione in modo inatteso."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Numero di token errato (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Nessun tipo per il nome di classe %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "Il tipo %s non implementa l'interfaccia GIcon"
 
 # o non è classificato ?? ma credo classificato abbia una diversa valenza...
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "Il tipo %s non presenta una classe"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Numero di versione malformato: %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr "Il tipo %s non implementa from_tokens() sull'interfaccia GIcon"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Impossibile gestire la versione fornita della codifica di icona"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Nessun indirizzo specificato"
 
 # eh... miglorabile?
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "La lunghezza %u è troppo lunga per l'indirizzo"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "L'indirizzo presenta bit impostati oltre la lunghezza del prefisso"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "Impossibile analizzare «%s» come maschera di indirizzo IP"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Spazio non sufficiente per l'indirizzo del socket"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Indirizzo del socket non supportato"
 
@@ -1710,7 +1744,7 @@ msgstr "Lo stream di input non implementa la lettura"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "Lo stream presenta un'operazione in sospeso"
 
@@ -1726,7 +1760,7 @@ msgstr "Tieni assieme al file quando spostato"
 msgid "“version” takes no arguments"
 msgstr "«version» non accetta alcun argomento"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Uso:"
 
@@ -1734,79 +1768,79 @@ msgstr "Uso:"
 msgid "Print version information and exit."
 msgstr "Stampa informazioni di versione ed esce"
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Comandi:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Concatena i file sullo standard output"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Copia uno o più file"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Mostra informazioni riguardo alle posizioni"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Avvia un'applicazione da un file desktop"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Elenca il contenuto delle posizioni"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Ottiene o imposta il gestore per un tipo mime"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Crea directory"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Monitora le modifiche a file e directory"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Monta o smonta le posizioni"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Sposta uno o più file"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Apre i file con l'applicazione predefinita"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Rinomina un file"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Elimina uno o più file"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Legge dallo standard input e salva"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Imposta l'attributo di un file"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Sposta file o directory nel cestino"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Elenca il contenuto delle posizioni in un formato ad albero"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Comandi:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr ""
@@ -1818,7 +1852,7 @@ msgid "Error writing to stdout"
 msgstr "Errore nello scrivere sullo stdout"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1841,60 +1875,64 @@ msgstr ""
 "posizioni GIO al posto di file locali. È possibile, per esempio, usare\n"
 "smb://server/risorsa/file.txt come posizione."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Nessuna posizione fornita"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Nessuna directory destinazione"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Mostra avanzamento"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Chiede prima di sovrascrivere"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Preserva tutti gli attributi"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Backup dei file destinazione esistenti"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Non segue mai i collegamenti simbolici"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Usa permessi predefiniti per la destinazione"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr "Usa marcatura temporale di modifica predefinita per la destinazione"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "Trasferiti %s di %s (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "SORGENTE"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "DESTINAZIONE"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Copia uno o più file da SORGENTE a DESTINAZIONE"
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1904,12 +1942,12 @@ msgstr ""
 "posizioni GIO al posto di file locali. È possibile, per esempio, usare\n"
 "smb://server/risorsa/file.txt come posizione."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "La destinazione %s non è una directory"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: sovrascrivere «%s»? "
@@ -1950,52 +1988,52 @@ msgstr "nome visibile: %s\n"
 msgid "edit name: %s\n"
 msgstr "nome modificabile: %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "nome: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "tipo: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "dimensione: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "nascosto\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "uri: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "percorso locale: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "mount unix: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Attributi impostabili:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Namespace attributi scrivibili:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Mostra informazioni riguardo alle posizioni"
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2556,7 +2594,8 @@ msgstr ""
 "corrente)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "DIRECTORY"
 
@@ -2609,6 +2648,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Nome identificatore C usato per il codice sorgente generato"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFICATORE"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr ""
@@ -3132,61 +3175,61 @@ msgstr "Errore nell'ottenere informazioni sul file system per %s: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "L'oggetto mount contenuto per il file %s non esiste"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Impossibile rinominare la directory root"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Errore nel rinominare il file %s: %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Impossibile rinominare il file, il nome di file esiste già"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Nome di file non valido"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Errore nell'aprire il file %s: %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Errore nel rimuovere il file %s: %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Errore nel cestinare il file %s: %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Impossibile creare la directory cestino %s: %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr "Impossibile trovare la directory di livello superiore per cestinare %s"
 
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr ""
 "Lo spostamento nel cestino sui montaggi interni di sistema non è supportato"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr "Impossibile trovare o creare la directory cestino %s per rimuovere %s"
@@ -3194,68 +3237,68 @@ msgstr "Impossibile trovare o creare la directory cestino %s per rimuovere %s"
 # consultare la specifica del cestino di freedesktop.org
 # (in breve per ogni file cestinato viene creata una copia
 # del file e un file di informazioni - data, posizione originaria...)
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "Impossibile creare il file informazioni cestinamento per %s: %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr "Impossibile cestinare il file %s tra livelli di file system"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Impossibile cestinare il file %s: %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Impossibile cestinare il file %s"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Errore nel creare la directory %s: %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "Il file system non supporta i collegamenti simbolici"
 
 # FIXME: all other occurrences are "symlink"
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Errore nel creare il collegamento simbolico %s: %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Errore nello spostare il file %s: %s"
 
 # ma che senso ha???
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Impossibile spostare la directory sopra la directory"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "Creazione del file backup non riuscita"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Errore nel rimuovere il file destinazione: %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Spostamento tra oggetti mount non supportato"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Impossibile determinare l'utilizzo del disco di %s: %s"
@@ -3277,125 +3320,125 @@ msgstr "Nome di attributo esteso non valido"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Errore nell'impostare l'attributo esteso «%s»: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (codifica non valida)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Errore nel recuperare informazioni per il file «%s»: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "Errore nel recuperare informazioni per il descrittore di file: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Tipo di attributo non valido (atteso unit32)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Tipo di attributo non valido (atteso uint64)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Tipo di attributo non valido (attesa stringa di byte)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "Impossibile impostare i permessi sui collegamenti simbolici"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Errore nell'impostare i permessi: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Errore nell'impostare il proprietario: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "il collegamento simbolico deve essere non-NULL"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Errore nell'impostare il collegamento simbolico: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr ""
 "Errore nell'impostare il collegamento simbolico: il file non è un "
 "collegamento"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr ""
 "%d nanosecondi aggiuntivi per la marcatura temporale UNIX %lld sono negativi"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr ""
 "%d nanosecondi aggiuntivi per la marcatura temporale UNIX %lld raggiungono 1 "
 "secondo"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "La marcatura temporale UNIX %lld non può essere contenuta in 64-bit"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr ""
 "La marcatura temporale %lld è al di fuori dell'intervallo supportato da "
 "Windows"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "Impossibile convertire il nome file «%s» a UTF-16"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "Impossibile aprire il file «%s»: Errore Windows %lu"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr "Errore nell'impostare l'ora di modifica o accesso del file «%s»: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "Errore nell'impostare l'ora di modifica o accesso: %s"
 
 # lasciata minuscola come per precedente messaggio
 #   "symlink must be non-NULL"
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "il contesto SELinux deve essere non-NULL"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "SELinux non è abilitato su questo sistema"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Errore nell'impostare il contesto SELinux: %s"
 
 # %s è l'attributo
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "Impostazione dell'attributo %s non supportata"
@@ -3448,7 +3491,7 @@ msgid "Error truncating file: %s"
 msgstr "Errore nel troncare il file: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Errore nell'aprire il file «%s»: %s"
@@ -3470,28 +3513,28 @@ msgstr "Il file è stato modificato dall'esterno"
 msgid "Error removing old file: %s"
 msgstr "Errore nel rimuovere il vecchio file: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "Fornito GSeekType non valido"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Richiesta di posizionamento non valida"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "Impossibile troncare GMemoryInputStream"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Stream di output di memoria non ridimensionabile"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Ridimensionamento dello stream di output di memoria non riuscito"
 
 # spero sia write -> scrittura e non write -> write
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3499,32 +3542,32 @@ msgstr ""
 "La quantità di memoria necessaria per elaborare la scrittura è più grande "
 "dello spazio di indirizzamento disponibile"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Richiesto posizionamento prima dell'inizio dello stream"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Richiesto posizionamento oltre la fine dello stream"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "l'oggetto mount non implementa l'azione «unmount»"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "l'oggetto mount non implementa l'azione «eject»"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "l'oggetto mount non implementa l'azione «unmount» o «unmount_with_operation»"
@@ -3532,7 +3575,7 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr ""
 "l'oggetto mount non implementa l'azione «eject» o «eject_with_operation»"
@@ -3540,7 +3583,7 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "l'oggetto mount non implementa l'azione «remount»"
 
@@ -3548,7 +3591,7 @@ msgstr "l'oggetto mount non implementa l'azione «remount»"
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "l'oggetto mount non implementa la supposizione del tipo di contenuto"
 
@@ -3556,21 +3599,21 @@ msgstr "l'oggetto mount non implementa la supposizione del tipo di contenuto"
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr ""
 "l'oggetto mount non implementa la supposizione sincrona del tipo di contenuto"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Il nome host «%s» contiene «[» ma non «]»"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Rete irraggiungibile"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Host irraggiungibile"
 
@@ -3598,7 +3641,7 @@ msgstr "NetworkManager non è in esecuzione"
 msgid "NetworkManager version too old"
 msgstr "Version di NetworkManager troppo datata"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Lo stream di output non implementa la scrittura"
 
@@ -3611,38 +3654,38 @@ msgstr "Somma dei vettori troppo grande passata a %s"
 msgid "Source stream is already closed"
 msgstr "Lo stream sorgente è già chiuso"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Errore inattesa nella ricerca proxy"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Errore nel risolvere «%s»: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s non è implementata"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Dominio non valido"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "La risorsa presso «%s» non esiste"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "Decompressione della risorsa presso «%s» non riuscita"
@@ -3660,11 +3703,11 @@ msgstr "La risorsa presso «%s» non è una directory"
 msgid "Input stream doesn’t implement seek"
 msgstr "Lo stream di input non implementa il posizionamento"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Elenca le sezioni che contengono risorse in un FILE elf"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3674,15 +3717,15 @@ msgstr ""
 "Se è indicato SEZIONE, elenca solo le risorse in quella sezione\n"
 "Se è indicato PERCORSO, elenca solo le risorse che corrispondono"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "FILE [PERCORSO]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SEZIONE"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3694,15 +3737,15 @@ msgstr ""
 "Se è indicato PERCORSO, elenca solo le risorse che corrispondono\n"
 "I dettagli includono la sezione, la dimensione e la compressione"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Estrare un file risorsa su stdout"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "FILE PERCORSO"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3730,7 +3773,7 @@ msgstr ""
 "Usare «gresource help COMANDO» per ottenere un aiuto dettagliato.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3745,21 +3788,21 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SEZIONE   Un nome sezione elf (opzionale)\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr ""
 "  COMANDO   Il comando (opzionale) da spiegare\n"
 "\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr "  FILE      Un file elf (un binario o una libreria condivisa)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3767,19 +3810,19 @@ msgstr ""
 "  FILE      Un file elf (un binario o una libreria condivisa)\n"
 "            o un file risorsa compilato\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[PERCORSO]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr "  PERCORSO  Un (opzionale) percorso risorsa (può essere parziale)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "PERCORSO"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  PERCORSO  Un percorso risorsa\n"
 
@@ -4010,217 +4053,217 @@ msgstr "Fornito un nome di schema vuoto\n"
 msgid "No such key “%s”\n"
 msgstr "Chiave «%s» inesistente\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Socket non valido, non inizializzato"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Socket non valido, inizializzazione non riuscita a causa di: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "Il socket è già chiuso"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1445
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "I/O sul socket scaduto"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "creazione di GSocket da FD: %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Impossibile creare il socket: %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "È stata specificata una famiglia sconosciuta"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "È stato specificato un protocollo sconosciuto"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr "Impossibile utilizzare operazioni datagram su un socket non-datagram."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr ""
 "Impossibile utilizzare operazioni datagram su un socket con impostato un "
 "timeout."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "impossibile ottenere l'indirizzo locale: %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "impossibile ottenere l'indirizzo remoto: %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "impossibile restare in ascolto: %s"
 
 # oppure "nell'eseguire il binding" ??
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Errore nell'eseguire il bind all'indirizzo %s: %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Errore nel fare il join al gruppo multicast: %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Errore nel lasciare il gruppo multicast: %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Nessun supporto per multicast source-specific"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Famiglia socket non supportato"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "source-specific non è un indirizzo IPv4"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Nome interfaccia troppo lungo"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Interfaccia non trovata: %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Nessun supporto per multicast IPv4 source-specific"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Nessun supporto per multicast IPv6 source-specific"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Errore nell'accettare la connessione: %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Connessione in corso"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Impossibile ottenere l'errore in sospeso: "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Errore nel ricevere i dati: %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Errore nell'inviare i dati: %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Impossibile arrestare il socket: %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Errore nel chiudere il socket: %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "In attesa della condizione del socket: %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Impossibile inviare un messaggio: %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Vettori di messaggi troppo grandi"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Errore nell'inviare il messaggio: %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "GSocketControlMessage non supportato su Windows"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Errore nel ricevere il messaggio: %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Impossibile reggere le credenziali del socket: %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr "g_socket_get_credentials non implementata per questo SO"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Impossibile connettersi al server proxy %s: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Impossibile connettersi a %s: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Impossibile connettersi: "
 
 # FIXME: il tentativo o la connessione?
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "L'esecuzione del proxy su una connessione non-TCP non è supportato."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "Il protocollo proxy «%s» non è supportato."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "Il listener è già chiuso"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "Il socket aggiunto è chiuso"
 
@@ -4315,95 +4358,95 @@ msgid "Unknown SOCKSv5 proxy error."
 msgstr "Errore sconosciuto del proxy SOCKSv5."
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr ""
 "Creazione della pipe per comunicare con il processo figlio non riuscita (%s)"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Le pipe non sono supportate su questa piattaforma"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Impossibile gestire la versione %d della codifica GThemedIcon"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Non è stato trovato alcun indirizzo valido"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Errore nella risoluzione inversa di «%s»: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr "Errore nell'analizzare il record DNS %s: pacchetto DNS non valido"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Nessun record DNS del tipo richiesto per «%s»"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "Momentaneamente impossibile risolvere «%s»"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Errore nel risolvere «%s»"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Pacchetto DNS non valido"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Analisi della risposta DNS per «%s» non riuscita: "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Non è stato trovata alcuna chiave privata codificata con PEM"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "Impossibile decifrare la chiave privata codificata con PEM"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "Impossibile analizzare la chiave privata codificata con PEM"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Non è stato trovato alcun certificato codificato con PEM"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "Impossibile analizzare il certificato codificato con PEM"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "L'attuale sistema TLS non supporta PKCS #12"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr "Questo GTlsBackend non supporta la creazione di certificati PKCS #11"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4413,7 +4456,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4421,141 +4464,153 @@ msgstr ""
 "Sono state inserite diverse password non corrette: altri errori e l'accesso "
 "verrà bloccato."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "La password inserita non è corretta."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "L'invio di FD non è supportato"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "Atteso 1 messaggio di controllo, ottenuto %d"
 msgstr[1] "Atteso 1 messaggio di controllo, ottenuti %d"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Tipo di dati ausiliari inatteso"
 
 # tolto il "but" per omogeneità con l'altro simile
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "Atteso un FD, ottenuto %d\n"
 msgstr[1] "Atteso un FD, ottenuti %d\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Ricevuto FD non valido"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "La ricezione di FD non è supportata"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Errore nell'inviare le credenziali: "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr "Errore nel verificare se SO_PASSCRED è abilitato per il socket: %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Errore nell'abilitare SO_PASSCRED: %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Attesa la lettura di un singolo byte per la ricezione delle credenziali, ma "
 "sono stati letti zero byte"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Messaggio di controllo inatteso, ottenuti %d"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Errore durante la disabilitazione di SO_PASSCRED: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Errore nel leggere dal descrittore di file: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Errore nel chiudere il descrittore di file: %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "File system radice"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Errore nello scrivere sul descrittore di file: %s"
 
 # a chi è riferito abstract??
 # a addresses o a domain?
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr ""
 "Indirizzi di socket di dominio UNIX astratto non supportati su questo sistema"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "il volume non implementa l'azione eject"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "il volume non implementa l'azione eject o eject_with_operation"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr "L'app «%s» nell'oggetto applicazione non ha alcun verbo"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+"L'app «%s» e il gestore «%s» nell'oggetto applicazione non hanno alcun verbo"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Errore nel leggere dall'handle: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Errore nel chiudere l'handle: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Errore nello scrivere sull'handle: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Memoria non sufficiente"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Errore interno: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Necessario ulteriore input"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Dati compressi non validi"
 
@@ -4583,62 +4638,200 @@ msgstr "Esegue un servizio dbus"
 msgid "Wrong args\n"
 msgstr "Argomenti errati\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Apertura di «%s» non riuscita: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Errore: impossibile scrivere tutto l'output: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Errore: cambio di nome del file «%s» in «%s» non riuscito: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Include le directory nei percorsi di ricerca GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "File di output"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Libreria condivisa"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Mostra i messaggi di debug"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Mostra messaggi prolissi"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Mostra la versione del programma ed esce"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Errore nell'analizzare i parametri: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Specificare esattamente un file di input"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Errore nell'analizzare il file «%s»: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Generazione della typelib per il module «%s» non riuscita"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Typelib non valida per il modulo «%s»: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Mostra tutte le informazioni disponibili"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Analisi non riuscita: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Nessun file di input"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Lettura di «%s» non riuscita: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Creazione della typelib «%s» non riuscita: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Impossibile caricare typelib: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Attenzione: moduli %u non considerati"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Versione di typelib da ispezionare"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSIONE"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Elenca le librerie condivise richieste da typelib"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Elenca altre typelib richieste dalla typelib ispezionata"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "La typelib da ispezionare"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "NAMESPACE"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Ispezione typelib GI"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Lettura delle opzioni a riga di comando non riuscita: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Specificare esattamente un namespace"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Specificare --print-shlibs, --print-typelibs o entrambi"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Attributo «%s» inatteso per l'elemento «%s»"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "Attributo «%s» dell'elemento «%s» non trovato"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Tag «%s» inatteso, atteso il tag «%s»"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Tag «%s» inatteso all'interno di «%s»"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Data/Ora «%s» non valida nel file di segnalibro"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr ""
 "Non è stato trovato alcun file di segnalibri valido nelle directory dei dati"
 
 # usate le «» perché forse questa compare nella UI
 #
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Esiste già un segnalibro per l'URI «%s»"
 
 # vedi sopra per «»
 #
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Non è stato trovato alcun segnalibro per l'URI «%s»"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Non risulta definito alcun tipo MIME nel segnalibro per l'URI «%s»"
@@ -4646,94 +4839,94 @@ msgstr "Non risulta definito alcun tipo MIME nel segnalibro per l'URI «%s»"
 # o private è il nome della flag (che quindi diventa opzione)?
 # cercare nel codice... -Luca
 #
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "Non è stata definita alcuna flag privata nel segnalibro per l'URI «%s»"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "Non risulta impostato alcun gruppo nel segnalibro per l'URI «%s»"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr "Nessuna applicazione di nome «%s» ha registrato un segnalibro per «%s»"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr "Espansione della riga exec «%s» con l'URI «%s» non riuscita"
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Carattere non rappresentabile nell'ingresso per la conversione"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Sequenza di caratteri parziale al termine dei dati in ingresso"
 
 # il primo %s è una 'fallback string' come recita il commento nel codice
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr "Impossibile convertire «%s» nel set di caratteri «%s»"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Byte NUL integrato nell'ingresso per la conversione"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Byte NUL integrato nell'uscita per la conversione"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr "L'URI «%s» non è un URI assoluto che utilizza lo schema «file»"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "L'URI «%s» non è valido"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "Il nome dell'host nell'URI «%s» non è valido"
 
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "L'URI «%s» contiene sequenze di escape non valide"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "Il nome di percorso «%s» non è un percorso assoluto"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %e %b %Y %H:%M:%S"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%d/%m/%y"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%I:%M:%S %P"
@@ -4754,62 +4947,62 @@ msgstr "%I:%M:%S %P"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "Gennaio"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "Febbraio"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "Marzo"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "Aprile"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "Maggio"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "Giugno"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "Luglio"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "Agosto"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "Settembre"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "Ottobre"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "Novembre"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "Dicembre"
@@ -4831,132 +5024,132 @@ msgstr "Dicembre"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "Gen"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "Feb"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "Mar"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "Apr"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "Mag"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "Giu"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "Lug"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "Ago"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "Set"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "Ott"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "Nov"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "Dic"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "Lunedì"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "Martedì"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "Mercoledì"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "Giovedì"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "Venerdì"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "Sabato"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "Domenica"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "Lun"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "Mar"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "Mer"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "Gio"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "Ven"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "Sab"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "Dom"
@@ -4978,62 +5171,62 @@ msgstr "Dom"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "gennaio"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "febbraio"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "marzo"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "aprile"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "maggio"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "giugno"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "luglio"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "agosto"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "settembre"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "ottobre"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "novembre"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "dicembre"
@@ -5055,144 +5248,150 @@ msgstr "dicembre"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "gen"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "feb"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "apr"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "mag"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "giu"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "lug"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "ago"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "set"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "ott"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "nov"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "dic"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "am"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "pm"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Errore nell'aprire la directory «%s»: %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "Impossibile allocare %lu byte per leggere il file «%s»"
-msgstr[1] "Impossibile allocare %lu byte per leggere il file «%s»"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Impossibile allocare %s per leggere il file «%s»"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Errore nel leggere il file «%s»: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Il file «%s» è troppo grande"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Lettura dal file «%s» non riuscita: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Apertura del file «%s» non riuscita: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr ""
 "Lettura degli attributi del file «%s» non riuscita: fstat() non riuscita: %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Apertura del file «%s» non riuscita: fdopen() non riuscita: %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr ""
 "Cambio di nome del file «%s» in «%s» non riuscito: g_rename() non riuscita: "
 "%s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "Scrittura del file «%s» non riuscita: ftruncate() non riuscita: %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Scrittura del file «%s» non riuscita: write() non riuscita: %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Scrittura del file «%s» non riuscita: fsync() non riuscita: %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Creazione del file «%s» non riuscita: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr ""
@@ -5205,54 +5404,54 @@ msgstr ""
 #    c[1] = dir_separator;
 #    c[2] = '\0';
 #
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Il modello «%s» non è valido, non dovrebbe contenere un «%s»"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Il modello «%s» non contiene XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Lettura del collegamento simbolico «%s» non riuscita: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "Impossibile aprire il convertitore da «%s» a «%s»: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr "Impossibile leggere i dati grezzi in g_io_channel_read_line_string"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "Sono rimasti dei dati non convertiti nel buffer di lettura"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "Il canale termina in un carattere parziale"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Impossibile eseguire una lettura grezza in g_io_channel_read_to_end"
 
 # key files sono, per glib, file di impostazioni in stile Windows INI
 #
 # Ad esempio i file .themes per i temi del desktop e delle icone.
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr "Impossibile trovare un file chiavi valido nelle directory di ricerca"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "Non è un file normale"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5260,44 +5459,44 @@ msgstr ""
 "Il file chiavi contiene la riga «%s» che non è una coppia chiave/valore, un "
 "gruppo o un commento valido"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Nome gruppo non valido: %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Il file chiavi non inizia con un gruppo"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Nome chiave non valido: %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "Il file chiavi contiene la codifica non supportata «%s»"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Il file chiavi non presenta il gruppo «%s»"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Il file chiavi non presenta alcuna chiave «%s» nel gruppo «%s»"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr ""
 "Il file chiavi contiene la chiave «%s» con il valore «%s» che non è UTF-8"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
@@ -5305,7 +5504,7 @@ msgstr ""
 "Il file chiavi contiene la chiave «%s» che presenta un valore che non può "
 "essere interpretato."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5314,37 +5513,37 @@ msgstr ""
 "Il file chiavi contiene la chiave «%s» nel gruppo «%s» che presenta un "
 "valore che non può essere interpretato."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr ""
 "La chiave «%s» nel gruppo «%s» presenta il valore «%s» mentre era atteso %s"
 
-#: glib/gkeyfile.c:4357
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Il file chiavi contiene un carattere di escape alla fine della riga"
 
-#: glib/gkeyfile.c:4394
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr "Il file chiavi contiene la sequenza di escape non valida «%s»"
 
-#: glib/gkeyfile.c:4545
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "Impossibile interpretare il valore «%s» come un numero."
 
-#: glib/gkeyfile.c:4559
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "Il valore intero «%s» è fuori dall'intervallo"
 
-#: glib/gkeyfile.c:4592
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "Impossibile interpretare il valore «%s» come un numero float."
 
-#: glib/gkeyfile.c:4631
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "Impossibile interpretare il valore «%s» come un booleano."
@@ -5366,32 +5565,32 @@ msgstr "Mappatura del file «%s%s%s%s» non riuscita: mmap() non riuscita: %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "Apertura del file «%s» non riuscita: open() non riuscita: %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Errore alla riga %d carattere %d: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "Testo in codifica UTF-8 non valido nel nome — «%s» non valido"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "«%s» non è un nome valido"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "«%s» non è un nome valido: «%c»"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Errore alla riga %d: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5401,7 +5600,7 @@ msgstr ""
 "di un riferimento a carattere (es. &#234;) — probabilmente il numero è "
 "troppo grande"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5411,23 +5610,23 @@ msgstr ""
 "si è utilizzato un carattere \"e commerciale\" senza l'intenzione di "
 "iniziare una nuova entità — usare &amp;"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "Il riferimento a carattere «%-.*s» non codifica un carattere permesso"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Rilevata entità vuota «&;» (entità valide: &amp; &quot; &lt; &gt; &apos;)"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "Il nome di entità «%-.*s» è sconosciuto"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5436,11 +5635,11 @@ msgstr ""
 "utilizzata una \"e commerciale\" senza l'intento di iniziare una entità — "
 "usare &amp;"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Il documento deve iniziare con un elemento (es. <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5449,7 +5648,7 @@ msgstr ""
 "«%s» non è un carattere valido dopo un carattere «<»; non può dare inizio a "
 "un nome di elemento"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5458,12 +5657,12 @@ msgstr ""
 "Carattere «%s» spaiato, era atteso un carattere «>» per terminare il tag "
 "dell'elemento-vuoto «%s»"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "Troppi attributi nell'elemento «%s»"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5471,7 +5670,7 @@ msgstr ""
 "Carattere «%s» spaiato, era atteso un carattere «=» dopo il nome "
 "dell'attributo «%s» dell'elemento «%s»"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5482,7 +5681,7 @@ msgstr ""
 "il tag di partenza dell'elemento «%s», oppure opzionalmente un attributo. "
 "Probabilmente è stato usato un carattere non valido in un nome di attributo"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5492,7 +5691,7 @@ msgstr ""
 "segno di uguale per attribuire un valore all'attributo «%s» dell'elemento "
 "«%s»"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5501,7 +5700,7 @@ msgstr ""
 "«%s» non è un carattere valido dopo i caratteri «</»; «%s» non può dare "
 "inizio a un nome di elemento"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5510,29 +5709,29 @@ msgstr ""
 "«%s» non è un carattere valido dopo la chiusura del nome dell'elemento «%s»; "
 "il carattere permesso è «>»"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr ""
 "È stato chiuso l'elemento «%s», nessun elemento risulta correntemente aperto"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr ""
 "È stato chiuso l'elemento «%s», ma l'elemento correntemente aperto è «%s»"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Il documento era vuoto oppure conteneva unicamente spazi"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr ""
 "Il documento è terminato in modo inatteso subito dopo una parentesi angolare "
 "d'apertura «<»"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5541,7 +5740,7 @@ msgstr ""
 "Il documento è terminato in modo inatteso con elementi ancora aperti — «%s» "
 "era l'ultimo elemento aperto"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5550,23 +5749,23 @@ msgstr ""
 "Il documento è terminato in modo inatteso, mancando la parentesi angolare di "
 "chiusura per il tag <%s/>"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr ""
 "Il documento è terminato in modo inatteso all'interno di un nome di elemento"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr ""
 "Il documento è terminato in modo inatteso all'interno di un nome di attributo"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr ""
 "Il documento è terminato in modo inatteso all'interno di un tag di apertura "
 "elemento."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5574,20 +5773,20 @@ msgstr ""
 "Il documento è terminato in modo inatteso dopo il segno di uguale che segue "
 "un nome di attributo; nessun valore per l'attributo"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr ""
 "Il documento è terminato in modo inatteso all'interno di un valore di "
 "attributo"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr ""
 "Il documento è terminato in modo inatteso all'interno del tag di chiusura "
 "per l'elemento «%s»"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
@@ -5595,255 +5794,255 @@ msgstr ""
 "per un elemento non aperto"
 
 # di elaborazione? in elaborazione ?
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Il documento è terminato in modo inatteso all'interno di un commento o "
 "istruzione di elaborazione"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[OPZIONE…]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Opzioni di aiuto:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Mostra le opzioni di aiuto"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Mostra tutte le opzioni di aiuto"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Opzioni dell'applicazione:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Opzioni:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "Impossibile analizzare il valore intero «%s» per %s"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "Il valore intero «%s» per %s è fuori dall'intervallo"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "Impossibile analizzare il valore double «%s» per %s"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "Il valore double «%s» per %s è fuori dall'intervallo"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Errore nell'analizzare l'opzione %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Argomento mancante per %s"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Opzione %s sconosciuta"
 
 # corrotto sembrava brutto, cfr revisione su TP
-#: glib/gregex.c:480
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "oggetto non attendibile"
 
-#: glib/gregex.c:482
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "memoria esaurita"
 
-#: glib/gregex.c:497
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "errore interno"
 
-#: glib/gregex.c:499
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr ""
 "il modello contiene elementi non supportati per la corrispondenza parziale"
 
-#: glib/gregex.c:501
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "per la corrispondenza parziale non sono supportati i riferimenti "
 "all'indietro come condizioni"
 
-#: glib/gregex.c:507
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "raggiunto limite di ricorsione"
 
-#: glib/gregex.c:509
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "offset errato"
 
-#: glib/gregex.c:511
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "ciclo ricorsivo"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:514
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr "richiesta modalità corrispondente che non è compilata per JIT"
 
-#: glib/gregex.c:535 glib/gregex.c:1851
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "errore sconosciuto"
 
-#: glib/gregex.c:556
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ alla fine del modello"
 
-#: glib/gregex.c:560
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c alla fine del modello"
 
 # che differenza c'è tra "follows" e gli "after" qualche messaggio dopo?
-#: glib/gregex.c:565
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "carattere non riconosciuto dopo \\"
 
 # quantificatore: esiste come termine per log. mat. e gramm.
-#: glib/gregex.c:569
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "numeri fuori ordine nel quantificatore {}"
 
-#: glib/gregex.c:573
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "numero troppo grande nel quantificatore {}"
 
-#: glib/gregex.c:577
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "] terminante mancante per classe di caratteri"
 
-#: glib/gregex.c:581
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "sequenza di escape non valida nella classe di caratteri"
 
 # to put out of order --> guastare, mettere in disordine
-#: glib/gregex.c:585
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "intervallo disordinato nella classe di caratteri"
 
-#: glib/gregex.c:590
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "nulla da ripetere"
 
-#: glib/gregex.c:594
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "carattere non riconosciuto dopo (? o (?-"
 
 # classi nominate??
-#: glib/gregex.c:598
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr ""
 "le classi POSIX nominate sono supportate solo all'interno di una classe"
 
-#: glib/gregex.c:602
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "gli elementi di collazione POSIX non sono supportati"
 
-#: glib/gregex.c:608
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr ") terminante mancante"
 
-#: glib/gregex.c:612
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "riferimento a sotto-modello non esistente"
 
-#: glib/gregex.c:616
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr ") mancante dopo il commento"
 
-#: glib/gregex.c:620
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "l'espressione regolare è troppo grande"
 
 # malformato si riferisce a entrambi????
-#: glib/gregex.c:624
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "numero o nome malformato dopo (?("
 
-#: glib/gregex.c:628
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "l'asserzione lookbehind non ha lunghezza fissata"
 
-#: glib/gregex.c:632
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "il gruppo condizionale contiene più di due diramazioni"
 
-#: glib/gregex.c:636
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "asserzione attesa dopo (?("
 
-#: glib/gregex.c:640
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "un riferimento numerato deve essere diverso da zero"
 
-#: glib/gregex.c:644
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "nome di classe POSIX sconosciuto"
 
-#: glib/gregex.c:649
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "il valore del carattere nella sequenza \\x{...} è troppo grande"
 
-#: glib/gregex.c:653
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C non consentito in asserzione lookbehind"
 
-#: glib/gregex.c:657
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "terminatore mancante nel nome di sotto-modello"
 
-#: glib/gregex.c:661
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "due sotto-modelli nominati presentano lo stesso nome"
 
-#: glib/gregex.c:665
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "sequenza \\P o \\p malformata"
 
-#: glib/gregex.c:669
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "nome di proprietà sconosciuto dopo \\P o \\p"
 
-#: glib/gregex.c:673
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "il nome di sotto-modello è troppo lungo (massimo 32 caratteri)"
 
-#: glib/gregex.c:677
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "troppi sotto-modelli nominati (massimo 10.000)"
 
-#: glib/gregex.c:681
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "il valore ottale è maggiore di \\377"
 
-#: glib/gregex.c:685
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "il gruppo DEFINE contiene più di una diramazione"
 
-#: glib/gregex.c:689
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "opzioni NEWLINE incoerenti"
 
-#: glib/gregex.c:693
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5851,112 +6050,112 @@ msgstr ""
 "\\g non è seguito da un nome o un numero tra parentesi, parentesi angolari, "
 "tra virgolette o da un numero semplice"
 
-#: glib/gregex.c:698
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "non è consentito un argomento per (*ACCEPT), (*FAIL) o (*COMMIT)"
 
-#: glib/gregex.c:702
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB) non riconosciuto"
 
-#: glib/gregex.c:706
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "il numero è troppo grande"
 
-#: glib/gregex.c:710
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "nome di sotto-modello mancante dopo (?&"
 
-#: glib/gregex.c:714
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr "non sono ammessi diversi nomi per sotto-modelli dello stesso numero"
 
-#: glib/gregex.c:718
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) deve avere un argomento"
 
-#: glib/gregex.c:722
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "\\c deve essere seguito da un carattere ASCII"
 
-#: glib/gregex.c:726
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "\\g non è seguito da un nome tra parentesi, parentesi angolari o virgolette"
 
-#: glib/gregex.c:730
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N non è supportato in una classe"
 
-#: glib/gregex.c:734
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "nome troppo lungo in (*MARK), (*PRUNE), (*SKIP) o (*THEN)"
 
 # secondo garzantilinguistica.it eccedenza (di dati) è la
 # traduzione di overflow secondo IBM. La traduzione generica
 # per ambito infomatico è superamento di capacità
-#: glib/gregex.c:738 glib/gregex.c:874
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "eccedenza di codice"
 
-#: glib/gregex.c:742
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "carattere non riconosciuto dopo (?P"
 
-#: glib/gregex.c:746
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "sconfinamento compilando l'area di lavoro"
 
-#: glib/gregex.c:750
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "sotto-modello referenziato precedentemente controllato non trovato"
 
-#: glib/gregex.c:873 glib/gregex.c:1135 glib/gregex.c:2457
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr ""
 "Errore durante la ricerca di corrispondenza per l'espressione regolare %s: %s"
 
-#: glib/gregex.c:1735
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "La libreria PCRE è compilata senza supporto per UTF-8"
 
-#: glib/gregex.c:1743
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "La libreria PCRE è compilata con opzioni incompatibili"
 
-#: glib/gregex.c:1860
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr ""
 "Errore durante la compilazione dell'espressione regolare «%s» al carattere "
 "%s: %s"
 
-#: glib/gregex.c:2900
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "attesa cifra esadecimale o «}»"
 
-#: glib/gregex.c:2916
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "attesa cifra esadecimale"
 
-#: glib/gregex.c:2956
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "«<» mancante nel riferimento simbolico"
 
-#: glib/gregex.c:2965
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "riferimento simbolico non terminato"
 
-#: glib/gregex.c:2972
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "riferimento simbolico di lunghezza zero"
 
-#: glib/gregex.c:2983
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "attesa cifra"
 
-#: glib/gregex.c:3001
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "riferimento simbolico non lecito"
 
@@ -5964,145 +6163,145 @@ msgstr "riferimento simbolico non lecito"
 # carattere successivo che manca
 #
 # Quindi "isolato" o "staccato" o al limite "accindetale", "casuale"
-#: glib/gregex.c:3064
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "«\\» finale isolato"
 
-#: glib/gregex.c:3068
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "sequenza di escape sconosciuta"
 
 # da sostituire crea confusione...
-#: glib/gregex.c:3078
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr ""
 "Errore durante l'analisi del testo di sostituzione «%s» al carattere %lu: %s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Il testo citato non inizia con un carattere di citazione"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr ""
 "Carattere di quoting non accoppiato nella riga di comando o nel testo con "
 "quoting di shell"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr "Il testo è finito subito dopo un carattere «\\» (il testo era «%s»)."
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Il testo è finito prima di trovare il carattere di citazione corrispondente "
 "per %c (il testo era «%s»)."
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Il testo era vuoto (oppure conteneva unicamente spazi bianchi)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:320
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "Lettura dei dati dal processo figlio non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:473
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr "Errore inatteso nel leggere i dati da un processo figlio (%s)"
 
-#: glib/gspawn.c:558
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Errore inatteso in waitpid() (%s)"
 
-#: glib/gspawn.c:1180 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Processo figlio uscito con codice %ld"
 
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Processo figlio ucciso dal segnale %ld"
 
-#: glib/gspawn.c:1195
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Processo figlio fermato dal segnale %ld"
 
-#: glib/gspawn.c:1202
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "Il processo figlio è uscito in modo anomalo"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2032 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "Lettura dalla pipe figlia non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2404
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "Esecuzione del processo figlio «%s» non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2530
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Esecuzione di fork non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2690 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "Cambio della directory in «%s» non riuscito (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2700
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "Esecuzione del processo figlio «%s» non riuscita (%s)"
 
-#: glib/gspawn.c:2710
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr "Apertura del file per rimappare il descrittore file non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2718
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr ""
 "Duplicazione del descrittore file per il processo figlio non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2727
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Esecuzione del fork per processo figlio non riuscita (%s)"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2735
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr "Chiusura del descrittore file per il processo figlio non riuscita (%s)"
 
-#: glib/gspawn.c:2743
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Errore sconosciuto nell'eseguire il processo figlio «%s»"
 
 # (%s) è in fondo perché risolto in g_strerror (gint)
-#: glib/gspawn.c:2767
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr ""
@@ -6164,78 +6363,78 @@ msgstr ""
 "Errore inatteso in g_io_channel_win32_poll() nel leggere i dati da un "
 "processo figlio"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "La stringa vuota non è un numero"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "«%s» non è un numero con segno"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "Numero «%s» oltre i limiti [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "«%s» non è un numero senza segno"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "%-encoding non valido nell'URI"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Carattere non valido nell'URI"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Caratteri non UTF-8 nell'URI"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Indirizzo IPv6 «%.*s» non valido nell'URI"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Codifica indirizzo IP «%.*s» non valida nell'URI"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Nome host internazionalizzato non valido «%.*s» nell'URI"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Impossibile analizzare la porta «%.*s» nell'URI"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "La porta «%.*s» nell'URI fuori dall'intervallo"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "L'URI «%s» non è un URI assoluto"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "L'URI «%s» non ha un componente host"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "L'URI non è assoluto e non è stato fornito un URI di base"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "Manca il simbolo «=» e il valore"
 
@@ -6316,65 +6515,65 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "kb"
+msgid "kbit"
+msgstr "kbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "Mb"
+msgid "Mbit"
+msgstr "Mbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "Gb"
+msgid "Gbit"
+msgstr "Gbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "Tb"
+msgid "Tbit"
+msgstr "Tbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "Pb"
+msgid "Pbit"
+msgstr "Pbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "Eb"
+msgid "Ebit"
+msgstr "Ebit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "Kib"
+msgid "Kibit"
+msgstr "Kibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "Mib"
+msgid "Mibit"
+msgstr "Mibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "Gib"
+msgid "Gibit"
+msgstr "Gibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "Tib"
+msgid "Tibit"
+msgstr "Tibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "Pib"
+msgid "Pibit"
+msgstr "Pibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "Eib"
+msgid "Eibit"
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6478,3 +6677,8 @@ msgstr "%.1f PB"
 #, c-format
 msgid "%.1f EB"
 msgstr "%.1f EB"
+
+#~ msgid "Could not allocate %"
+#~ msgid_plural "Could not allocate %"
+#~ msgstr[0] "Impossibile allocare %"
+#~ msgstr[1] "Impossibile allocare %"
index 5837ff0..893f447 100644 (file)
--- a/po/ka.po
+++ b/po/ka.po
@@ -7,8 +7,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
-"POT-Creation-Date: 2024-02-27 09:41+0000\n"
-"PO-Revision-Date: 2024-02-27 18:18+0100\n"
+"POT-Creation-Date: 2024-03-01 12:22+0000\n"
+"PO-Revision-Date: 2024-03-11 22:00+0100\n"
 "Last-Translator: Ekaterine Papava <papava.e@gtu.ge>\n"
 "Language-Team: Georgian <(nothing)>\n"
 "Language: ka\n"
@@ -127,7 +127,7 @@ msgid "APPID"
 msgstr "აპისID"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:259
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "ბრძანება"
 
@@ -139,11 +139,13 @@ msgstr "ბრძანება დეტალური დახმარე
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "აპლიკაციის იდენტიფიკატორი D-Bus-ის ფორმატში (მაგ: org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
 #: gio/gresource-tool.c:504 gio/gresource-tool.c:570
 #: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
-#: girepository/decompiler/decompiler.c:51
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "PROFILEID"
 
@@ -1124,6 +1126,10 @@ msgstr "სესიის მატარებელთან მიერთ
 msgid "Connect to given D-Bus address"
 msgstr "მითითებულ D-Bus-ს მისამართზე მიერთება"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "მისამართი"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "მიერთების ბოლოწერტილის პარამეტრები:"
@@ -1520,7 +1526,7 @@ msgstr "სპეციალური ფაილის კოპირებ
 msgid "Invalid symlink value given"
 msgstr "სიმბმბულის მითითებული მნიშვნელობა არასწორია"
 
-#: gio/gfile.c:4342 glib/gfileutils.c:2404
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "სიმბოლური ბმების გამოყენება არაა რეალიზებული"
 
@@ -1884,6 +1890,9 @@ msgid ""
 "locations instead of local files: for example, you can use something\n"
 "like smb://server/resource/file.txt as location."
 msgstr ""
+"gio copy ჩვეულებრივი cp ბრძანების მსგავსია, მაგრამ ლოკალური ფაილების\n"
+"მაგიერ GIO-ის მდებარეობებს იყენებს: მაგალითად, შეგიძლიათ გამოიყენოთ\n"
+"smb://server/resource/file.txt."
 
 #: gio/gio-tool-copy.c:153
 #, c-format
@@ -1984,6 +1993,12 @@ msgid ""
 "be specified with their GIO name, e.g. standard::icon, or just by\n"
 "namespace, e.g. unix, or by “*”, which matches all attributes"
 msgstr ""
+"gio info ჩვეულებრივი ls ბრძანების მსგავსია, მაგრამ ლოკალური ფაილების მაგიერ\n"
+"GIO მდებარეობებს იყენებს. მაგალითად, მდებარეობად შეგიძლიათ გამოიყენოთ\n"
+"smb://server/resource/file.txt. ფაილის ატრიბუტები მათი GIO სახელებთან ერთად "
+"შეგიძლიათ, გამოიყენოთ\n"
+"მაგ: standard::icon ან, უბრალოდ, სახელების სივრცით. მაგ: unix ან \"*\", "
+"რომელიც ყველა ატრიბუტს ნიშნავს"
 
 #. Translators: commandline placeholder
 #: gio/gio-tool-launch.c:56
@@ -1995,6 +2010,8 @@ msgid ""
 "Launch an application from a desktop file, passing optional filename "
 "arguments to it."
 msgstr ""
+"აპლიკაციის გაშვება სამუშაო მაგიდის ფაილიდან, არასავალდებულო ფაილის სახელის "
+"გადაცემით."
 
 #: gio/gio-tool-launch.c:79
 msgid "No desktop file given"
@@ -2046,6 +2063,10 @@ msgid ""
 "like smb://server/resource/file.txt as location. File attributes can\n"
 "be specified with their GIO name, e.g. standard::icon"
 msgstr ""
+"gio list ჩვეულებრივი ls ბრძანების მსგავსია, მაგრამ ლოკალური ფაილების\n"
+"ნაცვლად GIO მდებარეობებს იყენებს. შეგიძლიათ გამოიყენოთ, მაგ:\n"
+"smb://server/resource/file.txt. ფაილის ატრიბუტები მათი GIO სახელით\n"
+"შეგიძლიათ, მიუთითოთ. მაგ: standard::icon"
 
 #. Translators: commandline placeholder
 #: gio/gio-tool-mime.c:73
@@ -2066,6 +2087,10 @@ msgid ""
 "for the mimetype. If a handler is given, it is set as the default\n"
 "handler for the mimetype."
 msgstr ""
+"თუ დამმუშავებელი მითითებული არაა, ნაჩვენები იქნება რეგისტრირებული და "
+"რეკომენდებული აპლიკაციების\n"
+"სია ამ mime ტიპისთვის. თუ დამმუშავებელი მითითებულია, ის ამ mime ტიპისთვის\n"
+"ნაგულისხმევ დამმუშავებლად იქნება დაყენებული."
 
 #: gio/gio-tool-mime.c:102
 msgid "Must specify a single mimetype, and maybe a handler"
@@ -2122,6 +2147,9 @@ msgid ""
 "locations instead of local files: for example, you can use something\n"
 "like smb://server/resource/mydir as location."
 msgstr ""
+"gio mkidr ჩვეულებრივი mkdir ბრძანების მსგავსია, მაგრამ ლოკალური\n"
+"ფაილები მაგიერ GIO მდებარეობებს იყენებს. მაგ; შეგიძლიათ გამოიყენოთ\n"
+"smb://server/resource/mydir."
 
 #: gio/gio-tool-monitor.c:39
 msgid "Monitor a directory (default: depends on type)"
@@ -2133,7 +2161,7 @@ msgstr "ფაილის მონიტორინგი (ნაგული
 
 #: gio/gio-tool-monitor.c:43
 msgid "Monitor a file directly (notices changes made via hardlinks)"
-msgstr ""
+msgstr "ფაილის პირდაპირი თვალთვალი (ამჩნევს მყარი ბმულების ცვლილებებს)"
 
 #: gio/gio-tool-monitor.c:45
 msgid "Monitors a file directly, but doesn’t report changes"
@@ -2142,6 +2170,8 @@ msgstr "ფაილის პირდაპირი მონიტორი
 #: gio/gio-tool-monitor.c:47
 msgid "Report moves and renames as simple deleted/created events"
 msgstr ""
+"გადატანების და სახელის გადარქმევის ოპერაციების ერთ წაშლა/შექმნის მოვლენებად "
+"გამოტანა"
 
 #: gio/gio-tool-monitor.c:49
 msgid "Watch for mount events"
@@ -2189,7 +2219,7 @@ msgstr "სქემა"
 
 #: gio/gio-tool-mount.c:71
 msgid "Ignore outstanding file operations when unmounting or ejecting"
-msgstr ""
+msgstr "დაუსრულებელი ფაილის ოპერაციების გამოტოვება მოხსნისას ან გამოღებისას"
 
 #: gio/gio-tool-mount.c:72
 msgid "Use an anonymous user when authenticating"
@@ -2242,7 +2272,7 @@ msgstr "მდებარეობების მიმაგრება ა
 
 #: gio/gio-tool-move.c:44
 msgid "Don’t use copy and delete fallback"
-msgstr ""
+msgstr "მარქაფი არ გამოიყენება და წაიშლება"
 
 #: gio/gio-tool-move.c:101
 msgid "Move one or more files from SOURCE to DEST."
@@ -2254,6 +2284,9 @@ msgid ""
 "locations instead of local files: for example, you can use something\n"
 "like smb://server/resource/file.txt as location"
 msgstr ""
+"gio move ჩვეულებრივი mv ბრძანების მსგავსია, მაგრამ ლოკალური ფაილების\n"
+"მაგიერ GIO-ის მდებარეობებს იყენებს: მაგალითად, შეგიძლიათ გამოიყენოთ\n"
+"smb://server/resource/file.txt"
 
 #: gio/gio-tool-move.c:145
 #, c-format
@@ -2265,6 +2298,8 @@ msgid ""
 "Open files with the default application that\n"
 "is registered to handle files of this type."
 msgstr ""
+"ფაილების გახსნა ნაგულისხმევი აპლიკაციით,\n"
+"რომელიც დარეგისტრირებულია, ამ ტიპის ფაილები გახსნას."
 
 #: gio/gio-tool-remove.c:33 gio/gio-tool-trash.c:35
 msgid "Ignore nonexistent files, never prompt"
@@ -2398,6 +2433,8 @@ msgid ""
 "Restore a file from trash to its original location (possibly recreating the "
 "directory)"
 msgstr ""
+"ფაილის აღდგენა ნაგვის ყუთიდან საწყის მდებარეობაზე (შეიძლება, საქაღალდეები "
+"თავიდან შეიქმნას)"
 
 #: gio/gio-tool-trash.c:108
 msgid "Unable to find original path"
@@ -2420,6 +2457,9 @@ msgid ""
 "Note: for --restore switch, if the original location of the trashed file \n"
 "already exists, it will not be overwritten unless --force is set."
 msgstr ""
+"შენიშვნა: პარამეტრისთვის --restore, თუ ნაგვის ყუთში არსებული ფაილის საწყისი "
+"მდებარეობა უკვე არსებობს,\n"
+"მას თავზე არ გადავაწერთ, თუ არ მიუთითებთ პარამეტრს --force."
 
 #: gio/gio-tool-trash.c:260
 msgid "Location given doesn't start with trash:///"
@@ -2503,9 +2543,12 @@ msgid ""
 "The directories to load files referenced in FILE from (default: current "
 "directory)"
 msgstr ""
+"საქაღალდეები, საიდანაც ფაილში მითითებული ფაილები ჩაიტვირთება (ნაგულისხმევი: "
+"მიმდინარე საქაღალდე)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "DIRECTORY"
 
@@ -2513,6 +2556,8 @@ msgstr "DIRECTORY"
 msgid ""
 "Generate output in the format selected for by the target filename extension"
 msgstr ""
+"გამოტანის გენერაცია ფორმატში, რომელიც სამიზნე ფაილის სახელის გაფართოების "
+"მიხედვითაა არჩეული"
 
 #: gio/glib-compile-resources.c:825
 msgid "Generate source header"
@@ -2521,6 +2566,8 @@ msgstr "წყაროს თავსართის გენერაცი
 #: gio/glib-compile-resources.c:826
 msgid "Generate source code used to link in the resource file into your code"
 msgstr ""
+"კოდის ფაილის შექმნა, რომელიც რესურსის ფაილის თქვენ კოდთან მისაბმელად "
+"გამოიყენება"
 
 #: gio/glib-compile-resources.c:827
 msgid "Generate dependency list"
@@ -2532,7 +2579,7 @@ msgstr "დასაგენერირებელი დამოკიდ
 
 #: gio/glib-compile-resources.c:829
 msgid "Include phony targets in the generated dependency file"
-msgstr ""
+msgstr "ფიქტიური სამიზნეების ჩასმა შექმნილ დამოკიდებულების ფაილში"
 
 #: gio/glib-compile-resources.c:830
 msgid "Don’t automatically create and register resource"
@@ -2553,6 +2600,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "C იდენტიფიკატორი, რომელიც გენერირებული წყაროს კოდისთვის გამოიყენება"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "იდენტიფიკატორი"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "სამიზნე C კომპილატორი (ნაგულისხმევი: გარემოს ცვლადი CC)"
@@ -2563,6 +2614,9 @@ msgid ""
 "Resource specification files have the extension .gresource.xml,\n"
 "and the resource file have the extension called .gresource."
 msgstr ""
+"რესურსის აღწერის კომპილაცია რესურსის ფაილში.\n"
+"რესურსის სპეციფიკაციის ფაილებს .gresource.xml გაფართოება აქვთ,\n"
+"რესურსის ფაილებს კი .gresource."
 
 #: gio/glib-compile-resources.c:893
 msgid "You should give exactly one file name\n"
@@ -2643,17 +2697,18 @@ msgstr "l10n მოთხოვნილია, მაგრამ gettext-ი
 
 #: gio/glib-compile-schemas.c:455
 msgid "translation context given for value without l10n enabled"
-msgstr ""
+msgstr "მითითებულია თარგმანის კონტექსტი l10n-ის ჩართვის გარეშე"
 
 #: gio/glib-compile-schemas.c:477
 #, c-format
 msgid "Failed to parse <default> value of type “%s”: "
-msgstr ""
+msgstr "ჩავარდა დამუშავება <default> მნიშვნელობისა ტიპით “%s”: "
 
 #: gio/glib-compile-schemas.c:494
 msgid ""
 "<choices> cannot be specified for keys tagged as having an enumerated type"
 msgstr ""
+"<choices> მითითებული ვერ იქნება გასაღებებისთვის, რომლებიც ჩამონათვლის ტიპისაა"
 
 #: gio/glib-compile-schemas.c:503
 msgid "<choices> already specified for this key"
@@ -2662,7 +2717,7 @@ msgstr "<choices> ამ გასაღებისთვის უკვე 
 #: gio/glib-compile-schemas.c:515
 #, c-format
 msgid "<choices> not allowed for keys of type “%s”"
-msgstr ""
+msgstr "<choices> დაუშვებელია გასაღებებისთვის ტიპით “%s”"
 
 #: gio/glib-compile-schemas.c:531
 #, c-format
@@ -2672,7 +2727,7 @@ msgstr "<choice value='%s'/> უკვე გადაცემულია"
 #: gio/glib-compile-schemas.c:546
 #, c-format
 msgid "<choices> must contain at least one <choice>"
-msgstr ""
+msgstr "<choices> უნდა შეიცავდეს სულ ცოტა ერთ <choice>"
 
 #: gio/glib-compile-schemas.c:560
 msgid "<aliases> already specified for this key"
@@ -2683,18 +2738,21 @@ msgid ""
 "<aliases> can only be specified for keys with enumerated or flags types or "
 "after <choices>"
 msgstr ""
+"<aliases> შეიძლება, მხოლოდ, ჩამონათვლის ან ალმების ტიპის გასაღებებისთვის, ან "
+"შემდეგ შეიძლება მითითებული იყოს <choices>"
 
 #: gio/glib-compile-schemas.c:583
 #, c-format
 msgid ""
 "<alias value='%s'/> given when “%s” is already a member of the enumerated "
 "type"
-msgstr ""
+msgstr "<alias value='%s'/> მოცემულია, როცა “%s” უკვე ჩამონათვლის ტიპის წევრია"
 
 #: gio/glib-compile-schemas.c:589
 #, c-format
 msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
 msgstr ""
+"მითითებულია <alias value='%s'/>, როცა <choice value='%s'/> უკვე მითითებულია"
 
 #: gio/glib-compile-schemas.c:597
 #, c-format
@@ -2714,7 +2772,7 @@ msgstr "ფსევდონიმის სამიზნე “%s” სი
 #: gio/glib-compile-schemas.c:623
 #, c-format
 msgid "<aliases> must contain at least one <alias>"
-msgstr ""
+msgstr "<aliases> სულ ცოტა ერთ <alias>-ს უნდა შეიცავდეს"
 
 #: gio/glib-compile-schemas.c:797
 msgid "Empty names are not permitted"
@@ -2732,16 +2790,18 @@ msgid ""
 "Invalid name “%s”: invalid character “%c”; only lowercase letters, numbers "
 "and hyphen (“-”) are permitted"
 msgstr ""
+"არასწორი სახელი \"%s\": არასწორი სიმბოლო \"%c\": დაშვებულია, მხოლოდ პატარა "
+"ასოები, ციფრები და ტირე (\"-\")"
 
 #: gio/glib-compile-schemas.c:828
 #, c-format
 msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
-msgstr ""
+msgstr "არასწორი სახელი “%s”: ორი ტირე ზედიზედ (“--”) დაშვებული არაა"
 
 #: gio/glib-compile-schemas.c:837
 #, c-format
 msgid "Invalid name “%s”: the last character may not be a hyphen (“-”)"
-msgstr ""
+msgstr "არასწორი სახელი “%s”: ბოლო სიმბოლო ტირე (“-”) ვერ იქნება"
 
 #: gio/glib-compile-schemas.c:845
 #, c-format
@@ -2755,7 +2815,7 @@ msgstr "<child name='%s'> უკვე მითითებულია"
 
 #: gio/glib-compile-schemas.c:943
 msgid "Cannot add keys to a “list-of” schema"
-msgstr ""
+msgstr "ვერ დავამატე გასაღებების სქემას \"list-of\""
 
 #: gio/glib-compile-schemas.c:954
 #, c-format
@@ -2768,6 +2828,8 @@ msgid ""
 "<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
 "to modify value"
 msgstr ""
+"<key name='%s'> ჩრდილავს <key name='%s'> <schema id='%s'>-ში. მნიშვნელობის "
+"შესაცვლელად გამოიყენეთ <override>"
 
 #: gio/glib-compile-schemas.c:983
 #, c-format
@@ -2775,6 +2837,8 @@ msgid ""
 "Exactly one of “type”, “enum” or “flags” must be specified as an attribute "
 "to <key>"
 msgstr ""
+"აუცილებელია ერთ-ერთის, “type”, “enum” ან “flags” მითითება ატრიბუტად "
+"გასაღებისთვის <key>"
 
 #: gio/glib-compile-schemas.c:1002
 #, c-format
@@ -2788,7 +2852,7 @@ msgstr "არასწორი GVariant ტიპის სტრიქონ
 
 #: gio/glib-compile-schemas.c:1047
 msgid "<override> given but schema isn’t extending anything"
-msgstr ""
+msgstr "<override> მითითებულია, მაგრამ სქემა არაფერს აფართოებს"
 
 #: gio/glib-compile-schemas.c:1060
 #, c-format
@@ -2857,6 +2921,8 @@ msgid ""
 "Warning: Schema “%s” has path “%s”.  Paths starting with “/apps/”, “/"
 "desktop/” or “/system/” are deprecated."
 msgstr ""
+"გაფრთხილება: სქემას “%s” აქვს ბილიკი “%s”.  ბილიკები, რომლებიც იწყება “/"
+"apps/”, “/desktop/” ან “/system/” მოძველებულია."
 
 #: gio/glib-compile-schemas.c:1270
 #, c-format
@@ -2866,7 +2932,7 @@ msgstr "<%s id='%s'> უკვე მითითებულია"
 #: gio/glib-compile-schemas.c:1420 gio/glib-compile-schemas.c:1436
 #, c-format
 msgid "Only one <%s> element allowed inside <%s>"
-msgstr ""
+msgstr "დაშვებულია, მხოლოდ, ერთი <%s> ელემენტი <%s>-ის შიგნით"
 
 #: gio/glib-compile-schemas.c:1518
 #, c-format
@@ -2875,7 +2941,7 @@ msgstr "ელემენტი <%s> დაუშვებელია უმ
 
 #: gio/glib-compile-schemas.c:1536
 msgid "Element <default> is required in <key>"
-msgstr ""
+msgstr "ელემენტი <default> აუცილებელია გასაღებში <key>"
 
 #: gio/glib-compile-schemas.c:1626
 #, c-format
@@ -2885,7 +2951,7 @@ msgstr "<%s>-ის შიგნით შეუძლებელია, ტე
 #: gio/glib-compile-schemas.c:1694
 #, c-format
 msgid "Warning: undefined reference to <schema id='%s'/>"
-msgstr ""
+msgstr "გაფრთხილება: აღუწერელი მიმართვა სქემაზე <schema id='%s'/>"
 
 #. Translators: Do not translate "--strict".
 #: gio/glib-compile-schemas.c:1833 gio/glib-compile-schemas.c:1912
@@ -2906,6 +2972,8 @@ msgid ""
 "No such key “%s” in schema “%s” as specified in override file “%s”; ignoring "
 "override for this key."
 msgstr ""
+"არ არსებობს გასაღები \"%s\" სქემაში \"%s\", როგორც ეს მითითებულია გადაფარვის "
+"ფაილში \"%s\". გადაფარვა ამ გასაღებისთვის გამოტოვებული იქნება."
 
 #: gio/glib-compile-schemas.c:1971
 #, c-format
@@ -2913,6 +2981,8 @@ msgid ""
 "No such key “%s” in schema “%s” as specified in override file “%s” and --"
 "strict was specified; exiting."
 msgstr ""
+"არ არსებობს გასაღები \"%s\" სქემაში \"%s\", როგორც ეს მითითებულია გადაფარვის "
+"ფაილში \"%s\" და მითითებულია პარამეტრი --strict. გასვლა."
 
 #: gio/glib-compile-schemas.c:1993
 #, c-format
@@ -2920,6 +2990,9 @@ msgid ""
 "Cannot provide per-desktop overrides for localized key “%s” in schema "
 "“%s” (override file “%s”); ignoring override for this key."
 msgstr ""
+"შეუძლებელია თითოეული სამუშაო მაგიდის ფაილის გადაფარვების წარმოდგენა "
+"ლოკალიზებული პარამეტრისთვის \"%s\" სქემაში \"%s\" (გადაფარვის ფაილი \"%s\"). "
+"ამ პარამეტრისთვის გადაფარვა გამოტოვებული იქნება."
 
 #: gio/glib-compile-schemas.c:2002
 #, c-format
@@ -2927,6 +3000,9 @@ msgid ""
 "Cannot provide per-desktop overrides for localized key “%s” in schema "
 "“%s” (override file “%s”) and --strict was specified; exiting."
 msgstr ""
+"შეუძლებელია თითოეული სამუშაო მაგიდის ფაილის გადაფარვების წარმოდგენა "
+"ლოკალიზებული პარამეტრისთვის \"%s\" სქემაში \"%s\" (გადაფარვის ფაილი \"%s\") "
+"და მითითებულია პარამეტრი --strict. გასვლა."
 
 #: gio/glib-compile-schemas.c:2026
 #, c-format
@@ -2934,6 +3010,9 @@ msgid ""
 "Error parsing key “%s” in schema “%s” as specified in override file “%s”: "
 "%s. Ignoring override for this key."
 msgstr ""
+"დამუშავების შეცდომა პარამეტრისთვის \"%s\" სქემაში \"%s\", როგორც ეს "
+"მითითებულია გადაფარვის ფაილში \"%s\": %s. ამ პარამეტრისთვის გადაფარვა "
+"გამოტოვებული იქნება."
 
 #: gio/glib-compile-schemas.c:2038
 #, c-format
@@ -2941,6 +3020,9 @@ msgid ""
 "Error parsing key “%s” in schema “%s” as specified in override file “%s”: "
 "%s. --strict was specified; exiting."
 msgstr ""
+"დამუშავების შეცდომა პარამეტრისთვის \"%s\" სქემაში \"%s\", როგორც ეს "
+"მითითებულია გადაფარვის ფაილში \"%s\": %s. ასევე მითითებულია პარამეტრი --"
+"strict. გასვლა."
 
 #: gio/glib-compile-schemas.c:2065
 #, c-format
@@ -2948,6 +3030,9 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is outside the "
 "range given in the schema; ignoring override for this key."
 msgstr ""
+"გადაფარვა პარამეტრისთვის \"%s\" სქემაში \"%s\" გადაფარვის ფაილში \"%s\" "
+"სქემაში მითითებულ შუალედს გარეთაა. ამ პარამეტრის გადაფარვა გამოტოვებული "
+"იქნება."
 
 #: gio/glib-compile-schemas.c:2075
 #, c-format
@@ -2955,6 +3040,8 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is outside the "
 "range given in the schema and --strict was specified; exiting."
 msgstr ""
+"გადაფარვა პარამეტრისთვის \"%s\" სქემაში \"%s\" გადაფარვის ფაილში \"%s\" "
+"სქემაში მითითებულ შუალედს გარეთაა და მითითებულია პარამეტრი --strict. გასვლა."
 
 #: gio/glib-compile-schemas.c:2101
 #, c-format
@@ -2962,6 +3049,9 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is not in the "
 "list of valid choices; ignoring override for this key."
 msgstr ""
+"გადაფარვა პარამეტრისთვის \"%s\" სქემაში \"%s\" გადაფარვის ფაილში \"%s\" "
+"სქემაში სწორი არჩევნების სიაში არაა. ამ პარამეტრის გადაფარვა გამოტოვებული "
+"იქნება."
 
 #: gio/glib-compile-schemas.c:2111
 #, c-format
@@ -2969,6 +3059,9 @@ msgid ""
 "Override for key “%s” in schema “%s” in override file “%s” is not in the "
 "list of valid choices and --strict was specified; exiting."
 msgstr ""
+"გადაფარვა პარამეტრისთვის \"%s\" სქემაში \"%s\" გადაფარვის ფაილში \"%s\" "
+"სქემაში სწორი არჩევნების სიაში არაა და მითითებულია პარამეტრი --strict. "
+"გასვლა."
 
 #: gio/glib-compile-schemas.c:2173
 msgid "Where to store the gschemas.compiled file"
@@ -2992,6 +3085,9 @@ msgid ""
 "Schema files are required to have the extension .gschema.xml,\n"
 "and the cache file is called gschemas.compiled."
 msgstr ""
+"ყველა GSettings-ის სქემა ფაილის კომპილაცია სქემის კეშში.\n"
+"სქემის ფაილებს, აუცილებლად, უნდა ჰქონდეთ გაფართოება .gschema.xml\n"
+"და კეშის ფაილს ჰქვია gschemas.compiled."
 
 #: gio/glib-compile-schemas.c:2238
 msgid "You should give exactly one directory name"
@@ -3218,12 +3314,12 @@ msgstr "სიმბმულის დაყენების შეცდო
 #: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
-msgstr ""
+msgstr "დამატებითი ნანოწამები %d UNIX დროის შტამპისთვის %lld უარყოფითებია"
 
 #: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
-msgstr ""
+msgstr "დამატებითი ნანოწამები %d UNIX დროის შტამპისთვის %lld 1 წამს აღწევს"
 
 #: gio/glocalfileinfo.c:2622
 #, c-format
@@ -3544,6 +3640,9 @@ msgid ""
 "If SECTION is given, only list resources in this section\n"
 "If PATH is given, only list matching resources"
 msgstr ""
+"რესურსების სია\n"
+"თუ მითითებულია სექცია, ჩამოთვლილი იქნება მხოლოდ ამ სექციის რესურსები\n"
+"თუ მითითებულია ბილიკი, ჩამოთვლილი იქნება მხოლოდ შესაბამისი რესურსები"
 
 #: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
@@ -3560,6 +3659,11 @@ msgid ""
 "If PATH is given, only list matching resources\n"
 "Details include the section, size and compression"
 msgstr ""
+"რესურსების ჩამოთვლა დეტალებით\n"
+"თუ მითითებულია სექცია, ჩამოთვლილი იქნება, მხოლოდ, ამ სექციაში არსებული "
+"რესურსები\n"
+"თუ მითითებულია ბილიკი, ჩამოთვლილი იქნება, მხოლოდ, შესაბამისი რესურსები\n"
+"დეტალები შეიცავს სექციას, ზომას და შეკუმშვას"
 
 #: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
@@ -3584,6 +3688,18 @@ msgid ""
 "Use “gresource help COMMAND” to get detailed help.\n"
 "\n"
 msgstr ""
+"გამოყენება:\n"
+"  gresource [--section სექცია] ბრძანება [არგუმენტები…]\n"
+"\n"
+"ბრძანებები:\n"
+"  help                      ამ ინფორმაციის ჩვენება\n"
+"  sections                  რესურსის სექციების ჩვენება\n"
+"  list                      რესურსების სია\n"
+"  details                   რესურსების სია დეტალების ჩათვლით\n"
+"  extract                   რესურსის გამოღება\n"
+"\n"
+"მეტი ინფორმაციისთვის გამოიყენეთ ბრძანება “gresource help ბრძანება”.\n"
+"\n"
 
 #: gio/gresource-tool.c:557
 #, c-format
@@ -3627,6 +3743,7 @@ msgstr "[ბილიკი]"
 #: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr ""
+"  ბილიკი      (არასავალდებულო) რესურსის ბილიკი (შეიძლება იყოს ნაწილობრივი)\n"
 
 #: gio/gresource-tool.c:584
 msgid "PATH"
@@ -3700,6 +3817,8 @@ msgid ""
 "List keys and values, recursively\n"
 "If no SCHEMA is given, list all keys\n"
 msgstr ""
+"გასაღებების და მნიშვნელობების რეკურსიული ჩამონათვალი\n"
+"თუ სქემა მითითებული არაა, გამოჩნდება ყველა გასაღები\n"
 
 #: gio/gsettings-tool.c:624
 msgid "[SCHEMA[:PATH]]"
@@ -3716,7 +3835,7 @@ msgstr "სქემა[:ბილიკი] გასაღები"
 
 #: gio/gsettings-tool.c:635
 msgid "Query the range of valid values for KEY"
-msgstr ""
+msgstr "მითითებული გასაღებისთვის სწორი მნიშვნელობის შუალედების გამოთხოვა"
 
 #: gio/gsettings-tool.c:641
 msgid "Query the description for KEY"
@@ -3748,6 +3867,10 @@ msgid ""
 "If no KEY is specified, monitor all keys in SCHEMA.\n"
 "Use ^C to stop monitoring.\n"
 msgstr ""
+"მითითებული გასაღების თვალყური ცვლილებებზე.\n"
+"თუ გასაღები მითითებული არაა, თვალყური მიდევნებული იქნება სქემაში არსებულ "
+"ყველა გასაღებზე.\n"
+"გასაჩერებლად გამოიყენეთ ^C.\n"
 
 #: gio/gsettings-tool.c:674
 msgid "SCHEMA[:PATH] [KEY]"
@@ -3778,6 +3901,30 @@ msgid ""
 "Use “gsettings help COMMAND” to get detailed help.\n"
 "\n"
 msgstr ""
+"გამოყენება:\n"
+"  gsettings --version\n"
+"  gsettings [--schemadir SCHEMADIR] COMMAND [ARGS…]\n"
+"\n"
+"ბრძანებები:\n"
+"  help                      ამ ინფორმაციის ჩვენება\n"
+"  list-schemas              დაყენებული სქემების სია\n"
+"  list-relocatable-schemas  გადატანადი სქემების ჩამოთვლა\n"
+"  list-keys                 სქემაში პარამეტრების ჩამოთვლა\n"
+"  list-children             სქემის შვილების ჩამოთვლა\n"
+"  list-recursively          პარამეტრიების და მნიშვნელობების ჩამოთვლა, "
+"რეკურსიულად\n"
+"  range                     პარამეტრის შუალედის გამოთხოვა\n"
+"  describe                  პარამეტრის აღწერის გამოთხოვა\n"
+"  get                       პარამეტრის მნიშვნელობის მიღება\n"
+"  set                       პარამეტრის მნიშვნელობის დაყენება\n"
+"  reset                     პარამეტრის მნიშვნელობის ჩამოყრა\n"
+"  reset-recursively         მითითებულ სქემაში ყველა მნიშვნელობის ჩამოყრა\n"
+"  writable                  შემოწმება, არის თუ არა პარამეტრი ჩაწერადი\n"
+"  monitor                   ცვლილებების თვალყურის დევნება\n"
+"\n"
+"დეტალური დახმარების მისაღებად გამოიყენეთ ბრძანება “gsettings help "
+"ბრძანება”.\n"
+"\n"
 
 #: gio/gsettings-tool.c:710
 #, c-format
@@ -3788,16 +3935,23 @@ msgid ""
 "%s\n"
 "\n"
 msgstr ""
+"გამოყენება:\n"
+"  gsettings [--schemadir SCHEMADIR] %s %s\n"
+"\n"
+"%s\n"
+"\n"
 
 #: gio/gsettings-tool.c:716
 msgid "  SCHEMADIR A directory to search for additional schemas\n"
-msgstr ""
+msgstr "  SCHEMADIR საქაღალდე დამატებითი სქემების მოსაძებნად\n"
 
 #: gio/gsettings-tool.c:724
 msgid ""
 "  SCHEMA    The name of the schema\n"
 "  PATH      The path, for relocatable schemas\n"
 msgstr ""
+"  SCHEMA    სქემის სახელი\n"
+"  PATH      ბილიკი გადატანადი სქემებისთვის\n"
 
 #: gio/gsettings-tool.c:729
 msgid "  KEY       The (optional) key within the schema\n"
@@ -4271,7 +4425,7 @@ msgstr "შეცდომა ავტორიზაციის დეტა
 #: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
-msgstr ""
+msgstr "შემოწმების შეცდომა, ჩართულია თუ არა SO_PASSCRED სოკეტისთვის: %s"
 
 #: gio/gunixconnection.c:547
 #, c-format
@@ -4282,6 +4436,8 @@ msgstr "შეცდომა SO_PASSCRED-ის ჩართვისას: %s
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
+"მოველოდი ერთი ბაიტის წაკითხვას შესვლის დეტალების მისაღებად, მაგრამ წავიკითხე "
+"ნული ბაიტი"
 
 #: gio/gunixconnection.c:617
 #, c-format
@@ -4317,7 +4473,7 @@ msgstr "შეცდომა ფაილის დესკრიპტორ
 
 #: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
-msgstr ""
+msgstr "აბსტრაქტული UNIX სოკეტის მისამართები ამ სისტემაზე მხარდაჭერილი არაა"
 
 #: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
@@ -4328,18 +4484,18 @@ msgstr "ტომს გამოღების ფუნქცია არ 
 #. * don't implement any of eject or eject_with_operation.
 #: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
-msgstr ""
+msgstr "ტომს eject ან eject_with_operaton ბრძანებების მხარდაჭერა არ გააჩნია"
 
 #: gio/gwin32appinfo.c:5216
 #, c-format
 msgid "The app ‘%s’ in the application object has no verbs"
-msgstr ""
+msgstr "აპს '%s' აპლიკაციის ობიექტში ზმნები არ გააჩნია"
 
 #: gio/gwin32appinfo.c:5220
 #, c-format
 msgid ""
 "The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
-msgstr ""
+msgstr "აპს '%s' და დამმუშავებელს '%s' აპლიკაციის ობიექტში ზმნები არ გააჩნიათ"
 
 #: gio/gwin32inputstream.c:184
 #, c-format
@@ -4399,7 +4555,6 @@ msgstr "არასწორი არგუმენტები\n"
 
 #: girepository/compiler/compiler.c:93
 #, c-format
-#| msgid "Failed to open file “%s”: %s"
 msgid "Failed to open ‘%s’: %s"
 msgstr "'%s'-ის გახსნა ჩავარდა: %s"
 
@@ -4413,11 +4568,11 @@ msgstr "შეცდომა: გამოტანილი ინფორმ
 msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
 msgstr "შეცდომა: ჩავარდა სახელის გადარქმევა '%s'-დან '%s'-მდე: %s"
 
-#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:52
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
 msgid "Include directories in GIR search path"
 msgstr "საქაღალდეების ჩასმა GIR-ის ძებნის ბილიკში"
 
-#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:51
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
 msgid "Output file"
 msgstr "გამოტანის ფაილი"
 
@@ -4433,65 +4588,64 @@ msgstr "გამართვის შეტყობინებების 
 msgid "Show verbose messages"
 msgstr "დამატებითი შეტყობინებების ჩვენება"
 
-#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:54
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
 msgid "Show program’s version number and exit"
 msgstr "პროგრამის ვერსიის ნომრის ჩვენება და გასვლა"
 
-#: girepository/compiler/compiler.c:174
+#: girepository/compiler/compiler.c:175
 #, c-format
 msgid "Error parsing arguments: %s"
 msgstr "არგუმენტის დამუშავების შეცდომა: %s"
 
-#: girepository/compiler/compiler.c:201
+#: girepository/compiler/compiler.c:202
 msgid "Please specify exactly one input file"
 msgstr "მიუთითეთ ზუსტად ერთი შეყვანის ფაილი"
 
-#: girepository/compiler/compiler.c:217
+#: girepository/compiler/compiler.c:218
 #, c-format
 msgid "Error parsing file ‘%s’: %s"
 msgstr "ფაილის ('%s') დამუშავების შეცდომა: %s"
 
-#: girepository/compiler/compiler.c:242
+#: girepository/compiler/compiler.c:243
 #, c-format
 msgid "Failed to build typelib for module ‘%s’"
 msgstr "Typelib-ის აგება ჩავარდა მოდულისთვის '%s'"
 
-#: girepository/compiler/compiler.c:244
+#: girepository/compiler/compiler.c:245
 #, c-format
 msgid "Invalid typelib for module ‘%s’: %s"
 msgstr "არასწორი typelib მოდულისთვის '%s': %s"
 
-#: girepository/decompiler/decompiler.c:53
+#: girepository/decompiler/decompiler.c:54
 msgid "Show all available information"
 msgstr "ხელმისაწვდომი ინფორმაციის სრულად ჩვენება"
 
-#: girepository/decompiler/decompiler.c:67
+#: girepository/decompiler/decompiler.c:71
 #, c-format
 msgid "Failed to parse: %s"
 msgstr "დამუშავება ჩავარდა: %s"
 
-#: girepository/decompiler/decompiler.c:83
+#: girepository/decompiler/decompiler.c:87
 msgid "No input files"
 msgstr "შეყვანის ფაილების გარეშე"
 
-#: girepository/decompiler/decompiler.c:109
+#: girepository/decompiler/decompiler.c:113
 #, c-format
 msgid "Failed to read ‘%s’: %s"
 msgstr "'%s'-ის წაკითხვის შეცდომა: %s"
 
-#: girepository/decompiler/decompiler.c:121
+#: girepository/decompiler/decompiler.c:125
 #, c-format
-#| msgid "Failed to create file “%s”: %s"
 msgid "Failed to create typelib ‘%s’: %s"
 msgstr "ვერ შევქმენი typelib '%s': %s"
 
-#: girepository/decompiler/decompiler.c:125
+#: girepository/decompiler/decompiler.c:129
 #: girepository/inspector/inspector.c:113
 #, c-format
 msgid "Failed to load typelib: %s"
 msgstr "ჩავარდა ჩატვირთვა typelib-სთვის: %s"
 
-#: girepository/decompiler/decompiler.c:132
+#: girepository/decompiler/decompiler.c:136
 #, c-format
 msgid "Warning: %u modules omitted"
 msgstr "გაფრთხილება: %u მოდული ამოღებულია"
@@ -4610,11 +4764,11 @@ msgstr "პროგრამას სახელით \"%s\" სანიშ
 #: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
-msgstr ""
+msgstr "ვერ დავასრულე შესრულების ხაზი \"%s\" URI-ით \"%s\""
 
 #: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
-msgstr ""
+msgstr "გადაყვანის შეტანაზე აღმოჩენილია არაჩვენებადი სიმბოლო"
 
 #: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
@@ -5081,10 +5235,8 @@ msgstr "ვერ გავხსენი საქაღალდე \"%s\": %
 #. Translators: the first %s contains the file size
 #. * (already formatted with units), and the second %s
 #. * contains the file name
-#: glib/gfileutils.c:720
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-#| msgid "Could not allocate %lu byte to read file “%s”"
-#| msgid_plural "Could not allocate %lu bytes to read file “%s”"
 msgid "Could not allocate %s to read file “%s”"
 msgstr "ვერ გამოვყავი %s, რომ წავიკითხო ფაილი \"%s\""
 
@@ -5098,72 +5250,67 @@ msgstr "ფაილის \"%s\" წაკითხვის შეცდომ
 msgid "File “%s” is too large"
 msgstr "%s: ფაილი ძალიან დიდია"
 
-#: glib/gfileutils.c:825
-msgid "Could not allocate %"
-msgid_plural "Could not allocate %"
-msgstr[0] "გამოყოფის შეცდომა %s-სთვის"
-
-#: glib/gfileutils.c:850
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "ფაილიდან \"%s\" წაკითხვის შეცდომა: %s"
 
-#: glib/gfileutils.c:900 glib/gfileutils.c:975 glib/gfileutils.c:1482
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "ფაილის (%s) გახსნა შეუძლებელია: %s"
 
-#: glib/gfileutils.c:913
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "ფაილის \"%s\" ატრიბუტების წაკითხვის შეცდომა: fstat() ჩავარდა: %s"
 
-#: glib/gfileutils.c:944
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "ფაილის \"%s\" გახსნის შეცდომა: fdopen() ჩავარდა: %s"
 
-#: glib/gfileutils.c:1045
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "ვერ მოხერხდა '%s' ფაილის გადარქმევა - '%s': g_rename() ვერ შედგა: %s"
 
-#: glib/gfileutils.c:1144
+#: glib/gfileutils.c:1149
 #, c-format
 msgid "Failed to write file “%s”: ftruncate() failed: %s"
 msgstr "ვერ ვწერ '%s' ფაილს: ftruncate() ჩავარდა: %s"
 
-#: glib/gfileutils.c:1189
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "ვერ ვწერ '%s' ფაილს: fwrite() ვერ შედგა: %s"
 
-#: glib/gfileutils.c:1210
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "ვერ ვწერ '%s' ფაილს: fsync() ვერ შედგა: %s"
 
-#: glib/gfileutils.c:1371 glib/gfileutils.c:1788
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "ვერ ვქმნი '%s' ფაილს: %s"
 
-#: glib/gfileutils.c:1416
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "არსებული '%s' ფაილი ვერ ამოიშლება: g_unlink() ვერ შედგა: %s"
 
-#: glib/gfileutils.c:1753
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "შაბლონი '%s' მცდარია და '%s'-ს არ უნდა შეიცავდეს"
 
-#: glib/gfileutils.c:1766
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "შაბლონი '%s' არ შეიცავს XXXXXX"
 
-#: glib/gfileutils.c:2360 glib/gfileutils.c:2389
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "სიმბოლური ბმის \"%s\" წაკითხვის შეცდომა: %s"
@@ -5259,7 +5406,7 @@ msgstr ""
 #: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
-msgstr ""
+msgstr "გასაღებს “%s” ჯგუფში “%s” აქვს მნიშვნელობა “%s” სადაც მოველოდი %s"
 
 #: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
@@ -5293,7 +5440,7 @@ msgstr "მნიშვნელობა '%s' ვერ აღიქმებ
 #: glib/gmappedfile.c:135
 #, c-format
 msgid "Failed to get attributes of file “%s%s%s%s”: fstat() failed: %s"
-msgstr ""
+msgstr "ჩავარდა ატრიბუტების მიღება ფაილისთვის “%s%s%s%s”: fstat() failed: %s"
 
 #: glib/gmappedfile.c:201
 #, c-format
@@ -5345,11 +5492,13 @@ msgid ""
 "ampersand character without intending to start an entity — escape ampersand "
 "as &amp;"
 msgstr ""
+"სიმბოლოს მიმართვა წერტილმძიმით არ სრულდება. როგორც ჩანს, გამოიყენეთ "
+"ამპერსანდის სიმბოლო სახელის დაწყების გარეშე. ჩაანაცვლეთ ის სტრიქონით — &amp;"
 
 #: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
-msgstr ""
+msgstr "კოდი “%-.*s” დაშვებულ სიმბოლოს არ შეიცავს"
 
 #: glib/gmarkup.c:712
 msgid ""
@@ -5611,7 +5760,7 @@ msgstr "რეკურსიის მარყუჟი"
 #. should not happen in GRegex since we check modes before each match
 #: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
-msgstr ""
+msgstr "მოთხოვნილია დამთხვევის რეჟიმი, რომელიც JIT-სთვის დაკომპილებული არაა"
 
 #: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
@@ -5743,7 +5892,7 @@ msgstr "რვაობითი მნიშვნელობა მეტი
 
 #: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
-msgstr ""
+msgstr "ჯგუფი DEFINE ერთზე მეტ ჯგუფს შეიცავს"
 
 #: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
@@ -5754,10 +5903,13 @@ msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
 msgstr ""
+"\\g-ს არ მოსდევს ფრჩხილი, ერთი ბრჭყალი, ორმაგი ბრჭყალი ან რიცხვი ან უბრალოდ "
+"რიცხვი"
 
 #: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr ""
+"ბრძანებებისთვის (*ACCEPT), (*FAIL), ან (*COMMIT) არგუმენტი დაშვებული არაა"
 
 #: glib/gregex.c:708
 msgid "(*VERB) not recognized"
@@ -5773,7 +5925,7 @@ msgstr "აკლია ქვეშაბლონის სახელი (?&
 
 #: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
-msgstr ""
+msgstr "იგივე ნომრის მქონე ქვენიმუშებისთვის სხვადასხვა სახელები დაშვებული არაა"
 
 #: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
@@ -5781,11 +5933,13 @@ msgstr "(*MARK) არგუმენტის ქონა აუცილე
 
 #: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
-msgstr ""
+msgstr "\\c-ს ASCII სიმბოლო უნდა მოჰყვებოდეს"
 
 #: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
+"\\k-ის შემდეგი ტექსტი არაა ჩასმული არც ფრჩხილებში, არც ბრჭყალებში, არც ორმაგ "
+"ბრჭყალებში"
 
 #: glib/gregex.c:736
 msgid "\\N is not supported in a class"
@@ -5809,7 +5963,7 @@ msgstr "კომპილაციის სამუშაო სივრც
 
 #: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
-msgstr ""
+msgstr "ადრე შემოწმებული მიმართული ქვენიმუში ვერ ვიპოვე"
 
 #: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
@@ -6346,6 +6500,10 @@ msgstr "%.1f პბ"
 msgid "%.1f EB"
 msgstr "%.1f ებ"
 
+#~ msgid "Could not allocate %"
+#~ msgid_plural "Could not allocate %"
+#~ msgstr[0] "გამოყოფის შეცდომა %s-სთვის"
+
 #~ msgid ""
 #~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
 #~ msgstr ""
diff --git a/po/kab.po b/po/kab.po
new file mode 100644 (file)
index 0000000..4c3b386
--- /dev/null
+++ b/po/kab.po
@@ -0,0 +1,6189 @@
+# Kabyle translation for glib.
+# Copyright (C) 2024 glib's COPYRIGHT HOLDER
+# This file is distributed under the same license as the glib package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+# ButterflyOfFire <ButterflyOfFire@protonmail.com>, 2024.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: glib glib-2-80\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-04-02 00:18+0000\n"
+"PO-Revision-Date: 2024-04-30 22:43+0200\n"
+"Last-Translator: sa\n"
+"Language-Team: Kabyle <>\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-DL-Team: kab\n"
+"X-DL-Module: glib\n"
+"X-DL-Branch: glib-2-80\n"
+"X-DL-Domain: po\n"
+"X-DL-State: Translating\n"
+"X-Generator: Poedit 3.4.2\n"
+
+#: gio/gappinfo.c:339
+msgid "Setting default applications not supported yet"
+msgstr "Asbadu n yisnasen s wudem amezwer mazal ur yettusefrak ara"
+
+#: gio/gappinfo.c:372
+msgid "Setting application as last used for type not supported yet"
+msgstr ""
+"Asbadu n usnas ama uneggaru i yettwasqedcen i wanaw mazal ur yettusefrak ara"
+
+#: gio/gappinfo.c:814
+#, c-format
+msgid "Failed to find default application for content type ‘%s’"
+msgstr "Ur teddi ara tifin n usnas amezwer i wanaw n ugbur '%s’"
+
+#: gio/gappinfo.c:874
+#, c-format
+msgid "Failed to find default application for URI Scheme ‘%s’"
+msgstr "Ur teddi ara tifin n usnas amezwer i uzenziɣ n URI ‘%s’"
+
+#: gio/gapplication.c:507
+msgid "GApplication Options:"
+msgstr "Tixtiṛiyin n GApplication:"
+
+#: gio/gapplication.c:507
+msgid "Show GApplication options"
+msgstr "Sken tixtiṛiyin n GApplication"
+
+#: gio/gapplication.c:552
+msgid "Enter GApplication service mode (use from D-Bus service files)"
+msgstr ""
+"Sekcem askar n uqeddac n GApplication (seqdec seg yifuyla n useqdac D-Bus)"
+
+#: gio/gapplication.c:564
+msgid "Override the application’s ID"
+msgstr ""
+
+#: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Siggez lqem n usnas"
+
+#: gio/gapplication.c:587
+msgid "Replace the running instance"
+msgstr "Semselsi tummant yettwaselkaman"
+
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
+msgid "Print help"
+msgstr "Siggez tallelt"
+
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
+msgid "[COMMAND]"
+msgstr "[TALADNA]"
+
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
+msgid "Print version"
+msgstr "Sken lqem"
+
+#: gio/gapplication-tool.c:52 gio/gsettings-tool.c:592
+msgid "Print version information and exit"
+msgstr "Siggez talɣut n lqem syen ffeɣ"
+
+#: gio/gapplication-tool.c:55
+msgid "List applications"
+msgstr "Tabdart n yisnasen"
+
+#: gio/gapplication-tool.c:56
+msgid "List the installed D-Bus activatable applications (by .desktop files)"
+msgstr ""
+
+#: gio/gapplication-tool.c:59
+msgid "Launch an application"
+msgstr ""
+
+#: gio/gapplication-tool.c:60
+msgid "Launch the application (with optional files to open)"
+msgstr ""
+
+#: gio/gapplication-tool.c:61
+msgid "APPID [FILE…]"
+msgstr "APPID [AFAYLU…]"
+
+#: gio/gapplication-tool.c:63
+msgid "Activate an action"
+msgstr "Rmed tigawt"
+
+#: gio/gapplication-tool.c:64
+msgid "Invoke an action on the application"
+msgstr ""
+
+#: gio/gapplication-tool.c:65
+msgid "APPID ACTION [PARAMETER]"
+msgstr ""
+
+#: gio/gapplication-tool.c:67
+msgid "List available actions"
+msgstr ""
+
+#: gio/gapplication-tool.c:68
+msgid "List static actions for an application (from .desktop file)"
+msgstr ""
+
+#: gio/gapplication-tool.c:69 gio/gapplication-tool.c:75
+msgid "APPID"
+msgstr "APPID"
+
+#: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
+msgid "COMMAND"
+msgstr "COMMAND"
+
+#: gio/gapplication-tool.c:74
+msgid "The command to print detailed help for"
+msgstr ""
+
+#: gio/gapplication-tool.c:75
+msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
+#: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
+msgid "FILE"
+msgstr "AFAYLU"
+
+#: gio/gapplication-tool.c:76
+msgid "Optional relative or absolute filenames, or URIs to open"
+msgstr ""
+
+#: gio/gapplication-tool.c:77
+msgid "ACTION"
+msgstr "TIGAWT"
+
+#: gio/gapplication-tool.c:77
+msgid "The action name to invoke"
+msgstr ""
+
+#: gio/gapplication-tool.c:78
+msgid "PARAMETER"
+msgstr "AΓEWWAR"
+
+#: gio/gapplication-tool.c:78
+msgid "Optional parameter to the action invocation, in GVariant format"
+msgstr ""
+
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
+#: gio/gsettings-tool.c:678
+#, c-format
+msgid ""
+"Unknown command %s\n"
+"\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:105
+msgid "Usage:\n"
+msgstr "Aseqdec:\n"
+
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
+#: gio/gsettings-tool.c:713
+msgid "Arguments:\n"
+msgstr "Ifukal\n"
+
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
+msgid "[ARGS…]"
+msgstr "[ARGS…]"
+
+#: gio/gapplication-tool.c:138
+#, c-format
+msgid "Commands:\n"
+msgstr "Tiludna:\n"
+
+#. Translators: do not translate 'help', but please translate 'COMMAND'.
+#: gio/gapplication-tool.c:150
+#, c-format
+msgid ""
+"Use “%s help COMMAND” to get detailed help.\n"
+"\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:169
+#, c-format
+msgid ""
+"%s command requires an application id to directly follow\n"
+"\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:175
+#, c-format
+msgid "invalid application id: “%s”\n"
+msgstr ""
+
+#. Translators: %s is replaced with a command name like 'list-actions'
+#: gio/gapplication-tool.c:186
+#, c-format
+msgid ""
+"“%s” takes no arguments\n"
+"\n"
+msgstr ""
+"\"%s\" ur iteṭṭef ulad yiwen ufakul\n"
+"\n"
+
+#: gio/gapplication-tool.c:270
+#, c-format
+msgid "unable to connect to D-Bus: %s\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:290
+#, c-format
+msgid "error sending %s message to application: %s\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:324
+msgid "action name must be given after application id\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:332
+#, c-format
+msgid ""
+"invalid action name: “%s”\n"
+"action names must consist of only alphanumerics, “-” and “.”\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:351
+#, c-format
+msgid "error parsing action parameter: %s\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:363
+msgid "actions accept a maximum of one parameter\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:418
+msgid "list-actions command takes only the application id"
+msgstr ""
+
+#: gio/gapplication-tool.c:428
+#, c-format
+msgid "unable to find desktop file for application %s\n"
+msgstr ""
+
+#: gio/gapplication-tool.c:473
+#, c-format
+msgid ""
+"unrecognised command: %s\n"
+"\n"
+msgstr ""
+
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
+#: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
+#, c-format
+msgid "Too large count value passed to %s"
+msgstr ""
+
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
+msgid "Seek not supported on base stream"
+msgstr ""
+
+#: gio/gbufferedinputstream.c:939
+msgid "Cannot truncate GBufferedInputStream"
+msgstr ""
+
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
+#: gio/goutputstream.c:2208
+msgid "Stream is already closed"
+msgstr ""
+
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
+msgid "Truncate not supported on base stream"
+msgstr ""
+
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
+#, c-format
+msgid "Operation was cancelled"
+msgstr "Tamhelt tettwasefsex"
+
+#: gio/gcharsetconverter.c:272
+msgid "Invalid object, not initialized"
+msgstr "Taɣawsa d tarameɣtut, ur ittwannez ara"
+
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
+msgid "Incomplete multibyte sequence in input"
+msgstr ""
+
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
+msgid "Not enough space in destination"
+msgstr ""
+
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
+#: glib/gutf8.c:958 glib/gutf8.c:1412
+msgid "Invalid byte sequence in conversion input"
+msgstr "Tigezmi n yibiten d tarameɣtut deg unekcum n udiwenni"
+
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
+#, c-format
+msgid "Error during conversion: %s"
+msgstr "Tella-d tuccḍa deg  udiwenni: %s"
+
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
+msgid "Cancellable initialization not supported"
+msgstr ""
+
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
+#, c-format
+msgid "Conversion from character set “%s” to “%s” is not supported"
+msgstr ""
+
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
+#, c-format
+msgid "Could not open converter from “%s” to “%s”"
+msgstr ""
+
+#: gio/gcontenttype.c:470
+#, c-format
+msgid "%s type"
+msgstr "%s wanaw"
+
+#: gio/gcontenttype-win32.c:198
+msgid "Unknown type"
+msgstr "Anaw arussin"
+
+#: gio/gcontenttype-win32.c:200
+#, c-format
+msgid "%s filetype"
+msgstr "%s wanaw n ufaylu"
+
+#: gio/gcredentials.c:327
+msgid "GCredentials contains invalid data"
+msgstr "GCcredentilas ulac deg-s isefka irimeɣta"
+
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
+msgid "GCredentials is not implemented on this OS"
+msgstr ""
+
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
+msgid "There is no GCredentials support for your platform"
+msgstr ""
+
+#: gio/gcredentials.c:618
+msgid "GCredentials does not contain a process ID on this OS"
+msgstr ""
+
+#: gio/gcredentials.c:672
+msgid "Credentials spoofing is not possible on this OS"
+msgstr ""
+
+#: gio/gdatainputstream.c:298
+msgid "Unexpected early end-of-stream"
+msgstr ""
+
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
+#, c-format
+msgid "Unsupported key “%s” in address entry “%s”"
+msgstr ""
+
+#: gio/gdbusaddress.c:178
+#, c-format
+msgid "Meaningless key/value pair combination in address entry “%s”"
+msgstr ""
+
+#: gio/gdbusaddress.c:187
+#, c-format
+msgid ""
+"Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
+"keys)"
+msgstr ""
+
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
+#, c-format
+msgid "Error in address “%s” — the “%s” attribute is malformed"
+msgstr ""
+
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
+#, c-format
+msgid "Unknown or unsupported transport “%s” for address “%s”"
+msgstr ""
+
+#: gio/gdbusaddress.c:464
+#, c-format
+msgid "Address element “%s” does not contain a colon (:)"
+msgstr ""
+
+#: gio/gdbusaddress.c:473
+#, c-format
+msgid "Transport name in address element “%s” must not be empty"
+msgstr ""
+
+#: gio/gdbusaddress.c:494
+#, c-format
+msgid ""
+"Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
+"sign"
+msgstr ""
+
+#: gio/gdbusaddress.c:505
+#, c-format
+msgid ""
+"Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
+msgstr ""
+
+#: gio/gdbusaddress.c:519
+#, c-format
+msgid ""
+"Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
+"“%s”"
+msgstr ""
+
+#: gio/gdbusaddress.c:587
+#, c-format
+msgid ""
+"Error in address “%s” — the unix transport requires exactly one of the keys "
+"“path” or “abstract” to be set"
+msgstr ""
+
+#: gio/gdbusaddress.c:622
+#, c-format
+msgid "Error in address “%s” — the host attribute is missing or malformed"
+msgstr ""
+
+#: gio/gdbusaddress.c:636
+#, c-format
+msgid "Error in address “%s” — the port attribute is missing or malformed"
+msgstr ""
+
+#: gio/gdbusaddress.c:650
+#, c-format
+msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
+msgstr ""
+
+#: gio/gdbusaddress.c:671
+msgid "Error auto-launching: "
+msgstr ""
+
+#: gio/gdbusaddress.c:724
+#, c-format
+msgid "Error opening nonce file “%s”: %s"
+msgstr "Tuccḍa deg ulday n ufaylu nonce \"%s\": %s"
+
+#: gio/gdbusaddress.c:743
+#, c-format
+msgid "Error reading from nonce file “%s”: %s"
+msgstr "Tuccḍa deg tɣuri n ufaylu nonce \"%s\": %s"
+
+#: gio/gdbusaddress.c:752
+#, c-format
+msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
+msgstr "Tuccḍa deg tɣuri n ufaylu \"%s\"; 16 ibiten ttwarǧan, yewwi-d %d"
+
+#: gio/gdbusaddress.c:770
+#, c-format
+msgid "Error writing contents of nonce file “%s” to stream:"
+msgstr ""
+
+#: gio/gdbusaddress.c:985
+msgid "The given address is empty"
+msgstr "Tansa i d-yettwamudden d tilemt"
+
+#: gio/gdbusaddress.c:1098
+#, c-format
+msgid "Cannot spawn a message bus when AT_SECURE is set"
+msgstr ""
+
+#: gio/gdbusaddress.c:1105
+msgid "Cannot spawn a message bus without a machine-id: "
+msgstr ""
+
+#: gio/gdbusaddress.c:1112
+#, c-format
+msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
+msgstr ""
+
+#: gio/gdbusaddress.c:1154
+#, c-format
+msgid "Error spawning command line “%s”: "
+msgstr ""
+
+#: gio/gdbusaddress.c:1223
+#, c-format
+msgid "Cannot determine session bus address (not implemented for this OS)"
+msgstr ""
+
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
+#, c-format
+msgid ""
+"Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
+"— unknown value “%s”"
+msgstr ""
+
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
+msgid ""
+"Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
+"variable is not set"
+msgstr ""
+
+#: gio/gdbusaddress.c:1396
+#, c-format
+msgid "Unknown bus type %d"
+msgstr "Anaw n uzrug %d d arussin"
+
+#: gio/gdbusauth.c:292
+msgid "Unexpected lack of content trying to read a line"
+msgstr ""
+
+#: gio/gdbusauth.c:336
+msgid "Unexpected lack of content trying to (safely) read a line"
+msgstr ""
+
+#: gio/gdbusauth.c:480
+#, c-format
+msgid ""
+"Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
+msgstr ""
+
+#: gio/gdbusauth.c:1043
+msgid "Unexpected lack of content trying to read a byte"
+msgstr ""
+
+#: gio/gdbusauth.c:1193
+msgid "User IDs must be the same for peer and server"
+msgstr ""
+
+#: gio/gdbusauth.c:1205
+msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:307
+#, c-format
+msgid "Error when getting information for directory “%s”: %s"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:322
+#, c-format
+msgid ""
+"Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:355 gio/gdbusauthmechanismsha1.c:366
+#, c-format
+msgid "Error creating directory “%s”: %s"
+msgstr "Tuccḍa deg tɣri n ukaram \"%s\": %s"
+
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
+msgid "Operation not supported"
+msgstr "Tamhelt ur tettusefrak ara"
+
+#: gio/gdbusauthmechanismsha1.c:411
+#, c-format
+msgid "Error opening keyring “%s” for reading: "
+msgstr "Tuccḍa deg ulday n keyring \"%s\" i tɣuri: "
+
+#: gio/gdbusauthmechanismsha1.c:434 gio/gdbusauthmechanismsha1.c:775
+#, c-format
+msgid "Line %d of the keyring at “%s” with content “%s” is malformed"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:448 gio/gdbusauthmechanismsha1.c:789
+#, c-format
+msgid ""
+"First token of line %d of the keyring at “%s” with content “%s” is malformed"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:462 gio/gdbusauthmechanismsha1.c:803
+#, c-format
+msgid ""
+"Second token of line %d of the keyring at “%s” with content “%s” is malformed"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:486
+#, c-format
+msgid "Didn’t find cookie with id %d in the keyring at “%s”"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:543
+#, c-format
+msgid "Error creating lock file “%s”: %s"
+msgstr "Tecceḍ tmerna n ufaylu n usekkeṛ \"%s\": %s"
+
+#: gio/gdbusauthmechanismsha1.c:616
+#, c-format
+msgid "Error deleting stale lock file “%s”: %s"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:655
+#, c-format
+msgid "Error closing (unlinked) lock file “%s”: %s"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:666
+#, c-format
+msgid "Error unlinking lock file “%s”: %s"
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:742
+#, c-format
+msgid "Error opening keyring “%s” for writing: "
+msgstr ""
+
+#: gio/gdbusauthmechanismsha1.c:936
+#, c-format
+msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
+msgstr ""
+
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
+msgid "The connection is closed"
+msgstr "Tuqqna temdel"
+
+#: gio/gdbusconnection.c:1876
+msgid "Timeout was reached"
+msgstr "Yewweḍ wakud"
+
+#: gio/gdbusconnection.c:2515
+msgid ""
+"Unsupported flags encountered when constructing a client-side connection"
+msgstr ""
+
+#: gio/gdbusconnection.c:4277 gio/gdbusconnection.c:4631
+#, c-format
+msgid ""
+"No such interface “org.freedesktop.DBus.Properties” on object at path %s"
+msgstr ""
+
+#: gio/gdbusconnection.c:4422
+#, c-format
+msgid "No such property “%s”"
+msgstr "Ulad yiwen warra seg wanaw \"%s\""
+
+#: gio/gdbusconnection.c:4434
+#, c-format
+msgid "Property “%s” is not readable"
+msgstr ""
+
+#: gio/gdbusconnection.c:4445
+#, c-format
+msgid "Property “%s” is not writable"
+msgstr ""
+
+#: gio/gdbusconnection.c:4465
+#, c-format
+msgid "Error setting property “%s”: Expected type “%s” but got “%s”"
+msgstr ""
+
+#: gio/gdbusconnection.c:4570 gio/gdbusconnection.c:4785
+#: gio/gdbusconnection.c:6762
+#, c-format
+msgid "No such interface “%s”"
+msgstr "Ulad yiwen ugrudem seg wanaw \"%s\""
+
+#: gio/gdbusconnection.c:5001 gio/gdbusconnection.c:7279
+#, c-format
+msgid "No such interface “%s” on object at path %s"
+msgstr ""
+
+#: gio/gdbusconnection.c:5102
+#, c-format
+msgid "No such method “%s”"
+msgstr "Ulad tiwen tarrayt seg wanaw \"%s\""
+
+#: gio/gdbusconnection.c:5133
+#, c-format
+msgid "Type of message, “%s”, does not match expected type “%s”"
+msgstr ""
+
+#: gio/gdbusconnection.c:5336
+#, c-format
+msgid "An object is already exported for the interface %s at %s"
+msgstr ""
+
+#: gio/gdbusconnection.c:5563
+#, c-format
+msgid "Unable to retrieve property %s.%s"
+msgstr ""
+
+#: gio/gdbusconnection.c:5619
+#, c-format
+msgid "Unable to set property %s.%s"
+msgstr "D awezɣi usbadu n warra %s, %s"
+
+#: gio/gdbusconnection.c:5798
+#, c-format
+msgid "Method “%s” returned type “%s”, but expected “%s”"
+msgstr ""
+
+#: gio/gdbusconnection.c:6874
+#, c-format
+msgid "Method “%s” on interface “%s” with signature “%s” does not exist"
+msgstr ""
+
+#: gio/gdbusconnection.c:6995
+#, c-format
+msgid "A subtree is already exported for %s"
+msgstr ""
+
+#: gio/gdbusconnection.c:7287
+#, c-format
+msgid "Object does not exist at path “%s”"
+msgstr "Taɣawsa ulac-itt deg ubrid \"%s\""
+
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
+msgstr ""
+
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr ""
+
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr ""
+
+#: gio/gdbusmessage.c:1424
+#, c-format
+msgid ""
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
+msgstr ""
+
+#: gio/gdbusmessage.c:1437
+#, c-format
+msgid ""
+"%s message: INTERFACE header field does not contain a valid interface name"
+msgstr ""
+
+#: gio/gdbusmessage.c:1446
+#, c-format
+msgid ""
+"%s message: INTERFACE header field is using the reserved value org."
+"freedesktop.DBus.Local"
+msgstr ""
+
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr ""
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "anaw d ARAMEΓTU"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
+#, c-format
+msgid "Wanted to read %lu byte but only got %lu"
+msgid_plural "Wanted to read %lu bytes but only got %lu"
+msgstr[0] ""
+msgstr[1] ""
+
+#: gio/gdbusmessage.c:1595
+#, c-format
+msgid "Expected NUL byte after the string “%s” but found byte %d"
+msgstr ""
+
+#: gio/gdbusmessage.c:1614
+#, c-format
+msgid ""
+"Expected valid UTF-8 string but found invalid bytes at byte offset %d "
+"(length of string is %d). The valid UTF-8 string up until that point was “%s”"
+msgstr ""
+
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
+msgid "Value nested too deeply"
+msgstr ""
+
+#: gio/gdbusmessage.c:1846
+#, c-format
+msgid "Parsed value “%s” is not a valid D-Bus object path"
+msgstr ""
+
+#: gio/gdbusmessage.c:1870
+#, c-format
+msgid "Parsed value “%s” is not a valid D-Bus signature"
+msgstr ""
+
+#: gio/gdbusmessage.c:1921
+#, c-format
+msgid ""
+"Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
+msgid_plural ""
+"Encountered array of length %u bytes. Maximum length is 2<<26 bytes (64 MiB)."
+msgstr[0] ""
+msgstr[1] ""
+
+#: gio/gdbusmessage.c:1941
+#, c-format
+msgid ""
+"Encountered array of type “a%c”, expected to have a length a multiple of %u "
+"bytes, but found to be %u bytes in length"
+msgstr ""
+
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
+msgid "Empty structures (tuples) are not allowed in D-Bus"
+msgstr ""
+
+#: gio/gdbusmessage.c:2149
+#, c-format
+msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
+msgstr ""
+
+#: gio/gdbusmessage.c:2190
+#, c-format
+msgid ""
+"Error deserializing GVariant with type string “%s” from the D-Bus wire format"
+msgstr ""
+
+#: gio/gdbusmessage.c:2375
+#, c-format
+msgid ""
+"Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
+"0x%02x"
+msgstr ""
+
+#: gio/gdbusmessage.c:2394
+#, c-format
+msgid "Invalid major protocol version. Expected 1 but found %d"
+msgstr ""
+
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
+msgid "Signature header found but is not of type signature"
+msgstr ""
+
+#: gio/gdbusmessage.c:2464
+#, c-format
+msgid "Signature header with signature “%s” found but message body is empty"
+msgstr ""
+
+#: gio/gdbusmessage.c:2479
+#, c-format
+msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
+msgstr ""
+
+#: gio/gdbusmessage.c:2519
+#, c-format
+msgid "No signature header in message but the message body is %u byte"
+msgid_plural "No signature header in message but the message body is %u bytes"
+msgstr[0] ""
+msgstr[1] ""
+
+#: gio/gdbusmessage.c:2529
+msgid "Cannot deserialize message: "
+msgstr ""
+
+#: gio/gdbusmessage.c:2875
+#, c-format
+msgid ""
+"Error serializing GVariant with type string “%s” to the D-Bus wire format"
+msgstr ""
+
+#: gio/gdbusmessage.c:3012
+#, c-format
+msgid ""
+"Number of file descriptors in message (%d) differs from header field (%d)"
+msgstr ""
+
+#: gio/gdbusmessage.c:3020
+msgid "Cannot serialize message: "
+msgstr ""
+
+#: gio/gdbusmessage.c:3073
+#, c-format
+msgid "Message body has signature “%s” but there is no signature header"
+msgstr ""
+
+#: gio/gdbusmessage.c:3083
+#, c-format
+msgid ""
+"Message body has type signature “%s” but signature in the header field is "
+"“%s”"
+msgstr ""
+
+#: gio/gdbusmessage.c:3099
+#, c-format
+msgid "Message body is empty but signature in the header field is “(%s)”"
+msgstr ""
+
+#: gio/gdbusmessage.c:3673
+#, c-format
+msgid "Error return with body of type “%s”"
+msgstr ""
+
+#: gio/gdbusmessage.c:3681
+msgid "Error return with empty body"
+msgstr "Tettuɣal-d tuccḍa s tfekka tilemt"
+
+#: gio/gdbusprivate.c:2201
+#, c-format
+msgid "(Type any character to close this window)\n"
+msgstr ""
+
+#: gio/gdbusprivate.c:2387
+#, c-format
+msgid "Session dbus not running, and autolaunch failed"
+msgstr ""
+
+#: gio/gdbusprivate.c:2410
+#, c-format
+msgid "Unable to get Hardware profile: %s"
+msgstr ""
+
+#. Translators: Both placeholders are file paths
+#: gio/gdbusprivate.c:2466
+#, c-format
+msgid "Unable to load %s or %s: "
+msgstr "D awezɣi asali n %s neɣ %s: "
+
+#: gio/gdbusproxy.c:1552
+#, c-format
+msgid "Error calling StartServiceByName for %s: "
+msgstr ""
+
+#: gio/gdbusproxy.c:1575
+#, c-format
+msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
+msgstr ""
+
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
+#, c-format
+msgid ""
+"Cannot invoke method; proxy is for the well-known name %s without an owner, "
+"and proxy was constructed with the G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START flag"
+msgstr ""
+
+#: gio/gdbusserver.c:739
+msgid "Abstract namespace not supported"
+msgstr ""
+
+#: gio/gdbusserver.c:831
+msgid "Cannot specify nonce file when creating a server"
+msgstr ""
+
+#: gio/gdbusserver.c:913
+#, c-format
+msgid "Error writing nonce file at “%s”: %s"
+msgstr ""
+
+#: gio/gdbusserver.c:1088
+#, c-format
+msgid "The string “%s” is not a valid D-Bus GUID"
+msgstr ""
+
+#: gio/gdbusserver.c:1126
+#, c-format
+msgid "Cannot listen on unsupported transport “%s”"
+msgstr ""
+
+#: gio/gdbus-tool.c:113
+#, c-format
+msgid ""
+"Commands:\n"
+"  help         Shows this information\n"
+"  introspect   Introspect a remote object\n"
+"  monitor      Monitor a remote object\n"
+"  call         Invoke a method on a remote object\n"
+"  emit         Emit a signal\n"
+"  wait         Wait for a bus name to appear\n"
+"\n"
+"Use “%s COMMAND --help” to get help on each command.\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:204 gio/gdbus-tool.c:276 gio/gdbus-tool.c:347
+#: gio/gdbus-tool.c:371 gio/gdbus-tool.c:861 gio/gdbus-tool.c:1246
+#: gio/gdbus-tool.c:1733
+#, c-format
+msgid "Error: %s\n"
+msgstr "Tuccḍa: %s\n"
+
+#: gio/gdbus-tool.c:215 gio/gdbus-tool.c:289 gio/gdbus-tool.c:1749
+#, c-format
+msgid "Error parsing introspection XML: %s\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:253
+#, c-format
+msgid "Error: %s is not a valid name\n"
+msgstr "Tuccḍa: %s mačči d isem ameɣtu\n"
+
+#: gio/gdbus-tool.c:258 gio/gdbus-tool.c:747 gio/gdbus-tool.c:1065
+#: gio/gdbus-tool.c:1899 gio/gdbus-tool.c:2139
+#, c-format
+msgid "Error: %s is not a valid object path\n"
+msgstr "Tuccḍa: %s mačči d abrid n tɣawsa ameɣtu\n"
+
+#: gio/gdbus-tool.c:405
+msgid "Connect to the system bus"
+msgstr "Qqen ɣer uzrug n unagraw"
+
+#: gio/gdbus-tool.c:406
+msgid "Connect to the session bus"
+msgstr "Qqen ɣer uzrug n tɣimit"
+
+#: gio/gdbus-tool.c:407
+msgid "Connect to given D-Bus address"
+msgstr "Qqen ɣer tansa D-Bus i d-yettwamudden"
+
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "TANSA"
+
+#: gio/gdbus-tool.c:417
+msgid "Connection Endpoint Options:"
+msgstr ""
+
+#: gio/gdbus-tool.c:418
+msgid "Options specifying the connection endpoint"
+msgstr ""
+
+#: gio/gdbus-tool.c:441
+#, c-format
+msgid "No connection endpoint specified"
+msgstr ""
+
+#: gio/gdbus-tool.c:451
+#, c-format
+msgid "Multiple connection endpoints specified"
+msgstr ""
+
+#: gio/gdbus-tool.c:524
+#, c-format
+msgid ""
+"Warning: According to introspection data, interface “%s” does not exist\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:533
+#, c-format
+msgid ""
+"Warning: According to introspection data, method “%s” does not exist on "
+"interface “%s”\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:595
+msgid "Optional destination for signal (unique name)"
+msgstr ""
+
+#: gio/gdbus-tool.c:596
+msgid "Object path to emit signal on"
+msgstr ""
+
+#: gio/gdbus-tool.c:597
+msgid "Signal and interface name"
+msgstr ""
+
+#: gio/gdbus-tool.c:630
+msgid "Emit a signal."
+msgstr ""
+
+#: gio/gdbus-tool.c:685 gio/gdbus-tool.c:1002 gio/gdbus-tool.c:1836
+#: gio/gdbus-tool.c:2068 gio/gdbus-tool.c:2288
+#, c-format
+msgid "Error connecting: %s\n"
+msgstr "Tuccḍa n tuqqna: %s\n"
+
+#: gio/gdbus-tool.c:705
+#, c-format
+msgid "Error: %s is not a valid unique bus name.\n"
+msgstr "Tuccḍa: %s mačči d isem n uzrug asuf ameɣtu.\n"
+
+#: gio/gdbus-tool.c:724 gio/gdbus-tool.c:1045 gio/gdbus-tool.c:1879
+msgid "Error: Object path is not specified\n"
+msgstr "Tuccḍa: Abrid n tɣawsa ur yettwafren ara\n"
+
+#: gio/gdbus-tool.c:767
+msgid "Error: Signal name is not specified\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:781
+#, c-format
+msgid "Error: Signal name “%s” is invalid\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:793
+#, c-format
+msgid "Error: %s is not a valid interface name\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:799
+#, c-format
+msgid "Error: %s is not a valid member name\n"
+msgstr ""
+
+#. Use the original non-"parse-me-harder" error
+#: gio/gdbus-tool.c:836 gio/gdbus-tool.c:1177
+#, c-format
+msgid "Error parsing parameter %d: %s\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:868
+#, c-format
+msgid "Error flushing connection: %s\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:896
+msgid "Destination name to invoke method on"
+msgstr ""
+
+#: gio/gdbus-tool.c:897
+msgid "Object path to invoke method on"
+msgstr ""
+
+#: gio/gdbus-tool.c:898
+msgid "Method and interface name"
+msgstr ""
+
+#: gio/gdbus-tool.c:899
+msgid "Timeout in seconds"
+msgstr ""
+
+#: gio/gdbus-tool.c:900
+msgid "Allow interactive authorization"
+msgstr ""
+
+#: gio/gdbus-tool.c:947
+msgid "Invoke a method on a remote object."
+msgstr ""
+
+#: gio/gdbus-tool.c:1019 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
+msgid "Error: Destination is not specified\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:1030 gio/gdbus-tool.c:1870 gio/gdbus-tool.c:2104
+#, c-format
+msgid "Error: %s is not a valid bus name\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:1080
+msgid "Error: Method name is not specified\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:1091
+#, c-format
+msgid "Error: Method name “%s” is invalid\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:1169
+#, c-format
+msgid "Error parsing parameter %d of type “%s”: %s\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:1195
+#, c-format
+msgid "Error adding handle %d: %s\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:1695
+msgid "Destination name to introspect"
+msgstr ""
+
+#: gio/gdbus-tool.c:1696
+msgid "Object path to introspect"
+msgstr ""
+
+#: gio/gdbus-tool.c:1697
+msgid "Print XML"
+msgstr ""
+
+#: gio/gdbus-tool.c:1698
+msgid "Introspect children"
+msgstr ""
+
+#: gio/gdbus-tool.c:1699
+msgid "Only print properties"
+msgstr ""
+
+#: gio/gdbus-tool.c:1788
+msgid "Introspect a remote object."
+msgstr ""
+
+#: gio/gdbus-tool.c:1994
+msgid "Destination name to monitor"
+msgstr "Isem n tnila ɣer usefrak"
+
+#: gio/gdbus-tool.c:1995
+msgid "Object path to monitor"
+msgstr "Abrid n tɣawsa ɣer usefrak"
+
+#: gio/gdbus-tool.c:2020
+msgid "Monitor a remote object."
+msgstr ""
+
+#: gio/gdbus-tool.c:2078
+msgid "Error: can’t monitor a non-message-bus connection\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:2202
+msgid "Service to activate before waiting for the other one (well-known name)"
+msgstr ""
+
+#: gio/gdbus-tool.c:2205
+msgid ""
+"Timeout to wait for before exiting with an error (seconds); 0 for no timeout "
+"(default)"
+msgstr ""
+
+#: gio/gdbus-tool.c:2253
+msgid "[OPTION…] BUS-NAME"
+msgstr ""
+
+#: gio/gdbus-tool.c:2254
+msgid "Wait for a bus name to appear."
+msgstr ""
+
+#: gio/gdbus-tool.c:2330
+msgid "Error: A service to activate for must be specified.\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:2335
+msgid "Error: A service to wait for must be specified.\n"
+msgstr ""
+
+#: gio/gdbus-tool.c:2340
+msgid "Error: Too many arguments.\n"
+msgstr "Tuccḍa: Aṭas n yifukal.\n"
+
+#: gio/gdbus-tool.c:2348 gio/gdbus-tool.c:2355
+#, c-format
+msgid "Error: %s is not a valid well-known bus name.\n"
+msgstr ""
+
+#: gio/gdebugcontrollerdbus.c:361
+#, c-format
+msgid "Not authorized to change debug settings"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
+msgid "Unnamed"
+msgstr "Warisem"
+
+#: gio/gdesktopappinfo.c:2645
+msgid "Desktop file didn’t specify Exec field"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:2935
+msgid "Unable to find terminal required for application"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:2995
+#, c-format
+msgid "Program ‘%s’ not found in $PATH"
+msgstr "Ahil '%s' ur yettwaf ara deg UBRID"
+
+#: gio/gdesktopappinfo.c:3731
+#, c-format
+msgid "Can’t create user application configuration folder %s: %s"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:3735
+#, c-format
+msgid "Can’t create user MIME configuration folder %s: %s"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
+msgid "Application information lacks an identifier"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:4237
+#, c-format
+msgid "Can’t create user desktop file %s"
+msgstr ""
+
+#: gio/gdesktopappinfo.c:4373
+#, c-format
+msgid "Custom definition for %s"
+msgstr ""
+
+#: gio/gdrive.c:417
+msgid "drive doesn’t implement eject"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for drive objects that
+#. * don't implement any of eject or eject_with_operation.
+#: gio/gdrive.c:495
+msgid "drive doesn’t implement eject or eject_with_operation"
+msgstr ""
+
+#: gio/gdrive.c:571
+msgid "drive doesn’t implement polling for media"
+msgstr ""
+
+#: gio/gdrive.c:778
+msgid "drive doesn’t implement start"
+msgstr ""
+
+#: gio/gdrive.c:880
+msgid "drive doesn’t implement stop"
+msgstr ""
+
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
+msgid "TLS backend does not implement TLS binding retrieval"
+msgstr ""
+
+#: gio/gdummytlsbackend.c:197 gio/gdummytlsbackend.c:323
+#: gio/gdummytlsbackend.c:515
+msgid "TLS support is not available"
+msgstr ""
+
+#: gio/gdummytlsbackend.c:425
+msgid "DTLS support is not available"
+msgstr ""
+
+#: gio/gemblem.c:332
+#, c-format
+msgid "Can’t handle version %d of GEmblem encoding"
+msgstr ""
+
+#: gio/gemblem.c:342
+#, c-format
+msgid "Malformed number of tokens (%d) in GEmblem encoding"
+msgstr ""
+
+#: gio/gemblemedicon.c:366
+#, c-format
+msgid "Can’t handle version %d of GEmblemedIcon encoding"
+msgstr ""
+
+#: gio/gemblemedicon.c:376
+#, c-format
+msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
+msgstr ""
+
+#: gio/gemblemedicon.c:399
+msgid "Expected a GEmblem for GEmblemedIcon"
+msgstr ""
+
+#. Translators: This is an error message when
+#. * trying to find the enclosing (user visible)
+#. * mount of a file, but none exists.
+#.
+#: gio/gfile.c:1604
+msgid "Containing mount does not exist"
+msgstr ""
+
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
+msgid "Can’t copy over directory"
+msgstr ""
+
+#: gio/gfile.c:2710
+msgid "Can’t copy directory over directory"
+msgstr ""
+
+#: gio/gfile.c:2718
+msgid "Target file exists"
+msgstr "Afaylu asaḍas yella"
+
+#: gio/gfile.c:2737
+msgid "Can’t recursively copy directory"
+msgstr ""
+
+#: gio/gfile.c:3050 gio/gfile.c:3098
+#, c-format
+msgid "Copy file range not supported"
+msgstr ""
+
+#: gio/gfile.c:3056 gio/gfile.c:3167
+#, c-format
+msgid "Error splicing file: %s"
+msgstr ""
+
+#: gio/gfile.c:3163
+msgid "Splice not supported"
+msgstr ""
+
+#: gio/gfile.c:3327
+msgid "Copy (reflink/clone) between mounts is not supported"
+msgstr ""
+
+#: gio/gfile.c:3331
+msgid "Copy (reflink/clone) is not supported or invalid"
+msgstr ""
+
+#: gio/gfile.c:3336
+msgid "Copy (reflink/clone) is not supported or didn’t work"
+msgstr ""
+
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr ""
+
+#: gio/gfile.c:3415
+msgid "Can’t copy special file"
+msgstr ""
+
+#: gio/gfile.c:4332
+msgid "Invalid symlink value given"
+msgstr ""
+
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
+msgid "Symbolic links not supported"
+msgstr ""
+
+#: gio/gfile.c:4623
+msgid "Trash not supported"
+msgstr ""
+
+#: gio/gfile.c:4733
+#, c-format
+msgid "File names cannot contain “%c”"
+msgstr ""
+
+#: gio/gfile.c:7159 gio/gfile.c:7285
+#, c-format
+msgid "Failed to create a temporary directory for template “%s”: %s"
+msgstr ""
+
+#: gio/gfile.c:7603 gio/gvolume.c:362
+msgid "volume doesn’t implement mount"
+msgstr ""
+
+#: gio/gfile.c:7717 gio/gfile.c:7794
+msgid "No application is registered as handling this file"
+msgstr ""
+
+#: gio/gfileenumerator.c:216
+msgid "Enumerator is closed"
+msgstr ""
+
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
+msgid "File enumerator has outstanding operation"
+msgstr ""
+
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
+msgid "File enumerator is already closed"
+msgstr ""
+
+#: gio/gfileicon.c:248
+#, c-format
+msgid "Can’t handle version %d of GFileIcon encoding"
+msgstr ""
+
+#: gio/gfileicon.c:258
+msgid "Malformed input data for GFileIcon"
+msgstr ""
+
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
+msgid "Stream doesn’t support query_info"
+msgstr ""
+
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
+msgid "Seek not supported on stream"
+msgstr "Anadi ur yetttwasefrak ara ɣef usuddem"
+
+#: gio/gfileinputstream.c:369
+msgid "Truncate not allowed on input stream"
+msgstr ""
+
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
+msgid "Truncate not supported on stream"
+msgstr "Anegzum ur yettwasefrak ara ɣef usuddem"
+
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
+msgid "Invalid hostname"
+msgstr "Isem asenneftaɣ d arameɣtu"
+
+#: gio/ghttpproxy.c:145
+msgid "Bad HTTP proxy reply"
+msgstr ""
+
+#: gio/ghttpproxy.c:161
+msgid "HTTP proxy connection not allowed"
+msgstr ""
+
+#: gio/ghttpproxy.c:166
+msgid "HTTP proxy authentication failed"
+msgstr ""
+
+#: gio/ghttpproxy.c:169
+msgid "HTTP proxy authentication required"
+msgstr ""
+
+#: gio/ghttpproxy.c:173
+#, c-format
+msgid "HTTP proxy connection failed: %i"
+msgstr ""
+
+#: gio/ghttpproxy.c:268
+msgid "HTTP proxy response too big"
+msgstr ""
+
+#: gio/ghttpproxy.c:285
+msgid "HTTP proxy server closed connection unexpectedly."
+msgstr ""
+
+#: gio/gicon.c:298
+#, c-format
+msgid "Wrong number of tokens (%d)"
+msgstr ""
+
+#: gio/gicon.c:318
+#, c-format
+msgid "No type for class name %s"
+msgstr ""
+
+#: gio/gicon.c:328
+#, c-format
+msgid "Type %s does not implement the GIcon interface"
+msgstr ""
+
+#: gio/gicon.c:339
+#, c-format
+msgid "Type %s is not classed"
+msgstr ""
+
+#: gio/gicon.c:353
+#, c-format
+msgid "Malformed version number: %s"
+msgstr ""
+
+#: gio/gicon.c:367
+#, c-format
+msgid "Type %s does not implement from_tokens() on the GIcon interface"
+msgstr ""
+
+#: gio/gicon.c:469
+msgid "Can’t handle the supplied version of the icon encoding"
+msgstr ""
+
+#: gio/ginetaddressmask.c:192
+msgid "No address specified"
+msgstr "Ulac tansa i yettwafernen"
+
+#: gio/ginetaddressmask.c:200
+#, c-format
+msgid "Length %u is too long for address"
+msgstr ""
+
+#: gio/ginetaddressmask.c:233
+msgid "Address has bits set beyond prefix length"
+msgstr ""
+
+#: gio/ginetaddressmask.c:310
+#, c-format
+msgid "Could not parse “%s” as IP address mask"
+msgstr ""
+
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
+msgid "Not enough space for socket address"
+msgstr ""
+
+#: gio/ginetsocketaddress.c:231
+msgid "Unsupported socket address"
+msgstr ""
+
+#: gio/ginputstream.c:190
+msgid "Input stream doesn’t implement read"
+msgstr ""
+
+#. Translators: This is an error you get if there is already an
+#. * operation running against this stream when you try to start
+#. * one
+#. Translators: This is an error you get if there is
+#. * already an operation running against this stream when
+#. * you try to start one
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
+msgid "Stream has outstanding operation"
+msgstr ""
+
+#: gio/gio-tool.c:162
+msgid "Copy with file"
+msgstr "Nɣel s ufaylu"
+
+#: gio/gio-tool.c:166
+msgid "Keep with file when moved"
+msgstr ""
+
+#: gio/gio-tool.c:207
+msgid "“version” takes no arguments"
+msgstr "\"lqem\" ur yeṭṭif ara ifukal"
+
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
+msgid "Usage:"
+msgstr "Aseqdec:"
+
+#: gio/gio-tool.c:212
+msgid "Print version information and exit."
+msgstr "Siggez talɣut n lqem syen ffeɣ."
+
+#: gio/gio-tool.c:232
+msgid "Concatenate files to standard output"
+msgstr ""
+
+#: gio/gio-tool.c:233
+msgid "Copy one or more files"
+msgstr ""
+
+#: gio/gio-tool.c:234
+msgid "Show information about locations"
+msgstr ""
+
+#: gio/gio-tool.c:235
+msgid "Launch an application from a desktop file"
+msgstr ""
+
+#: gio/gio-tool.c:236
+msgid "List the contents of locations"
+msgstr ""
+
+#: gio/gio-tool.c:237
+msgid "Get or set the handler for a mimetype"
+msgstr ""
+
+#: gio/gio-tool.c:238
+msgid "Create directories"
+msgstr "Rnu ikaramen"
+
+#: gio/gio-tool.c:239
+msgid "Monitor files and directories for changes"
+msgstr ""
+
+#: gio/gio-tool.c:240
+msgid "Mount or unmount the locations"
+msgstr ""
+
+#: gio/gio-tool.c:241
+msgid "Move one or more files"
+msgstr "Senkez yiwen neɣ ugar n yifuyla"
+
+#: gio/gio-tool.c:242
+msgid "Open files with the default application"
+msgstr ""
+
+#: gio/gio-tool.c:243
+msgid "Rename a file"
+msgstr "Ales isem n ufaylu"
+
+#: gio/gio-tool.c:244
+msgid "Delete one or more files"
+msgstr "Kkes yiwen neɣ ugar n yifuyla"
+
+#: gio/gio-tool.c:245
+msgid "Read from standard input and save"
+msgstr ""
+
+#: gio/gio-tool.c:246
+msgid "Set a file attribute"
+msgstr "Sbadu amyerr n ufaylu"
+
+#: gio/gio-tool.c:247
+msgid "Move files or directories to the trash"
+msgstr ""
+
+#: gio/gio-tool.c:248
+msgid "Lists the contents of locations in a tree"
+msgstr ""
+
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Tiludna:"
+
+#: gio/gio-tool.c:275
+#, c-format
+msgid "Use %s to get detailed help.\n"
+msgstr ""
+
+#: gio/gio-tool-cat.c:89
+msgid "Error writing to stdout"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
+#: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
+#: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
+#: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
+#: gio/gio-tool-remove.c:50 gio/gio-tool-rename.c:47 gio/gio-tool-set.c:95
+#: gio/gio-tool-trash.c:222 gio/gio-tool-tree.c:246
+msgid "LOCATION"
+msgstr "ADIG"
+
+#: gio/gio-tool-cat.c:140
+msgid "Concatenate files and print to standard output."
+msgstr ""
+
+#: gio/gio-tool-cat.c:142
+msgid ""
+"gio cat works just like the traditional cat utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
+#: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
+msgid "No locations given"
+msgstr ""
+
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
+msgid "No target directory"
+msgstr ""
+
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
+msgid "Show progress"
+msgstr "Sken akala"
+
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
+msgid "Prompt before overwrite"
+msgstr ""
+
+#: gio/gio-tool-copy.c:49
+msgid "Preserve all attributes"
+msgstr ""
+
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+msgid "Backup existing destination files"
+msgstr ""
+
+#: gio/gio-tool-copy.c:51
+msgid "Never follow symbolic links"
+msgstr ""
+
+#: gio/gio-tool-copy.c:52
+msgid "Use default permissions for the destination"
+msgstr ""
+
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr ""
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
+#, c-format
+msgid "Transferred %s out of %s (%s/s)"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
+msgid "SOURCE"
+msgstr "AΓBALU"
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+msgid "DESTINATION"
+msgstr "TANILA"
+
+#: gio/gio-tool-copy.c:109
+msgid "Copy one or more files from SOURCE to DESTINATION."
+msgstr ""
+
+#: gio/gio-tool-copy.c:111
+msgid ""
+"gio copy is similar to the traditional cp utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location."
+msgstr ""
+
+#: gio/gio-tool-copy.c:153
+#, c-format
+msgid "Destination %s is not a directory"
+msgstr ""
+
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
+#, c-format
+msgid "%s: overwrite “%s”? "
+msgstr ""
+
+#: gio/gio-tool-info.c:39
+msgid "List writable attributes"
+msgstr ""
+
+#: gio/gio-tool-info.c:40
+msgid "Get file system info"
+msgstr "Awi talɣut n unagraw n ufaylu"
+
+#: gio/gio-tool-info.c:41 gio/gio-tool-list.c:37
+msgid "The attributes to get"
+msgstr "Imyarren ara tawiḍ"
+
+#: gio/gio-tool-info.c:41 gio/gio-tool-list.c:37
+msgid "ATTRIBUTES"
+msgstr "IMYARREN"
+
+#: gio/gio-tool-info.c:42 gio/gio-tool-list.c:40 gio/gio-tool-set.c:37
+msgid "Don’t follow symbolic links"
+msgstr "Ur ṭṭfar ara iseɣwan izamalen"
+
+#: gio/gio-tool-info.c:105
+msgid "attributes:\n"
+msgstr "imyarren:\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:166
+#, c-format
+msgid "display name: %s\n"
+msgstr "sken isem:%s\n"
+
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:176
+#, c-format
+msgid "edit name: %s\n"
+msgstr "ẓreg isem:%s\n"
+
+#: gio/gio-tool-info.c:185
+#, c-format
+msgid "name: %s\n"
+msgstr "isem: %s\n"
+
+#: gio/gio-tool-info.c:192
+#, c-format
+msgid "type: %s\n"
+msgstr "anaw: %s\n"
+
+#: gio/gio-tool-info.c:198
+msgid "size: "
+msgstr "teɣzi: "
+
+#: gio/gio-tool-info.c:204
+msgid "hidden\n"
+msgstr "yeffer\n"
+
+#: gio/gio-tool-info.c:207
+#, c-format
+msgid "uri: %s\n"
+msgstr "uri: %s\n"
+
+#: gio/gio-tool-info.c:214
+#, c-format
+msgid "local path: %s\n"
+msgstr "abrid adigan: %s\n"
+
+#: gio/gio-tool-info.c:248
+#, c-format
+msgid "unix mount: %s%s %s %s %s\n"
+msgstr ""
+
+#: gio/gio-tool-info.c:329
+msgid "Settable attributes:\n"
+msgstr ""
+
+#: gio/gio-tool-info.c:353
+msgid "Writable attribute namespaces:\n"
+msgstr ""
+
+#: gio/gio-tool-info.c:388
+msgid "Show information about locations."
+msgstr ""
+
+#: gio/gio-tool-info.c:390
+msgid ""
+"gio info is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon, or just by\n"
+"namespace, e.g. unix, or by “*”, which matches all attributes"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-launch.c:56
+msgid "DESKTOP-FILE [FILE-ARG …]"
+msgstr ""
+
+#: gio/gio-tool-launch.c:59
+msgid ""
+"Launch an application from a desktop file, passing optional filename "
+"arguments to it."
+msgstr ""
+
+#: gio/gio-tool-launch.c:79
+msgid "No desktop file given"
+msgstr ""
+
+#: gio/gio-tool-launch.c:87
+msgid "The launch command is not currently supported on this platform"
+msgstr ""
+
+#: gio/gio-tool-launch.c:100
+#, c-format
+msgid "Unable to load ‘%s‘: %s"
+msgstr ""
+
+#: gio/gio-tool-launch.c:109
+#, c-format
+msgid "Unable to load application information for ‘%s‘"
+msgstr ""
+
+#: gio/gio-tool-launch.c:121
+#, c-format
+msgid "Unable to launch application ‘%s’: %s"
+msgstr ""
+
+#: gio/gio-tool-list.c:38 gio/gio-tool-tree.c:34
+msgid "Show hidden files"
+msgstr "Sken ifuyla yeffren"
+
+#: gio/gio-tool-list.c:39
+msgid "Use a long listing format"
+msgstr ""
+
+#: gio/gio-tool-list.c:41
+msgid "Print display names"
+msgstr ""
+
+#: gio/gio-tool-list.c:42
+msgid "Print full URIs"
+msgstr ""
+
+#: gio/gio-tool-list.c:181
+msgid "List the contents of the locations."
+msgstr ""
+
+#: gio/gio-tool-list.c:183
+msgid ""
+"gio list is similar to the traditional ls utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location. File attributes can\n"
+"be specified with their GIO name, e.g. standard::icon"
+msgstr ""
+
+#. Translators: commandline placeholder
+#: gio/gio-tool-mime.c:73
+msgid "MIMETYPE"
+msgstr ""
+
+#: gio/gio-tool-mime.c:73
+msgid "HANDLER"
+msgstr ""
+
+#: gio/gio-tool-mime.c:78
+msgid "Get or set the handler for a mimetype."
+msgstr ""
+
+#: gio/gio-tool-mime.c:80
+msgid ""
+"If no handler is given, lists registered and recommended applications\n"
+"for the mimetype. If a handler is given, it is set as the default\n"
+"handler for the mimetype."
+msgstr ""
+
+#: gio/gio-tool-mime.c:102
+msgid "Must specify a single mimetype, and maybe a handler"
+msgstr ""
+
+#: gio/gio-tool-mime.c:118
+#, c-format
+msgid "No default applications for “%s”\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:124
+#, c-format
+msgid "Default application for “%s”: %s\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:129
+msgid "Registered applications:\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:131
+msgid "No registered applications\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:142
+msgid "Recommended applications:\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:144
+msgid "No recommended applications\n"
+msgstr ""
+
+#: gio/gio-tool-mime.c:164
+#, c-format
+msgid "Failed to load info for handler “%s”"
+msgstr ""
+
+#: gio/gio-tool-mime.c:170
+#, c-format
+msgid "Failed to set “%s” as the default handler for “%s”: %s\n"
+msgstr ""
+
+#: gio/gio-tool-mkdir.c:33
+msgid "Create parent directories"
+msgstr ""
+
+#: gio/gio-tool-mkdir.c:54
+msgid "Create directories."
+msgstr "Rnu ikaramen."
+
+#: gio/gio-tool-mkdir.c:56
+msgid ""
+"gio mkdir is similar to the traditional mkdir utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/mydir as location."
+msgstr ""
+
+#: gio/gio-tool-monitor.c:39
+msgid "Monitor a directory (default: depends on type)"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:41
+msgid "Monitor a file (default: depends on type)"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:43
+msgid "Monitor a file directly (notices changes made via hardlinks)"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:45
+msgid "Monitors a file directly, but doesn’t report changes"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:47
+msgid "Report moves and renames as simple deleted/created events"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:49
+msgid "Watch for mount events"
+msgstr ""
+
+#: gio/gio-tool-monitor.c:211
+msgid "Monitor files or directories for changes."
+msgstr ""
+
+#: gio/gio-tool-mount.c:65
+msgid "Mount as mountable"
+msgstr ""
+
+#: gio/gio-tool-mount.c:66
+msgid "Mount volume with device file, or other identifier"
+msgstr ""
+
+#: gio/gio-tool-mount.c:66
+msgid "ID"
+msgstr "Asulay"
+
+#: gio/gio-tool-mount.c:67
+msgid "Unmount"
+msgstr "Kkes aserkeb"
+
+#: gio/gio-tool-mount.c:68
+msgid "Eject"
+msgstr "Ḍeqqer-d"
+
+#: gio/gio-tool-mount.c:69
+msgid "Stop drive with device file"
+msgstr ""
+
+#: gio/gio-tool-mount.c:69
+msgid "DEVICE"
+msgstr "IBENK"
+
+#: gio/gio-tool-mount.c:70
+msgid "Unmount all mounts with the given scheme"
+msgstr ""
+
+#: gio/gio-tool-mount.c:70
+msgid "SCHEME"
+msgstr "AZENZIΓ"
+
+#: gio/gio-tool-mount.c:71
+msgid "Ignore outstanding file operations when unmounting or ejecting"
+msgstr ""
+
+#: gio/gio-tool-mount.c:72
+msgid "Use an anonymous user when authenticating"
+msgstr ""
+
+#. Translator: List here is a verb as in 'List all mounts'
+#: gio/gio-tool-mount.c:74
+msgid "List"
+msgstr "Tabdart"
+
+#: gio/gio-tool-mount.c:75
+msgid "Monitor events"
+msgstr "Tidyanin n usefrak"
+
+#: gio/gio-tool-mount.c:76
+msgid "Show extra information"
+msgstr "Sken talɣut tafellayt"
+
+#: gio/gio-tool-mount.c:77
+msgid "The numeric PIM when unlocking a VeraCrypt volume"
+msgstr ""
+
+#: gio/gio-tool-mount.c:77
+msgid "PIM"
+msgstr "PIM"
+
+#: gio/gio-tool-mount.c:78
+msgid "Mount a TCRYPT hidden volume"
+msgstr ""
+
+#: gio/gio-tool-mount.c:79
+msgid "Mount a TCRYPT system volume"
+msgstr ""
+
+#: gio/gio-tool-mount.c:276 gio/gio-tool-mount.c:308
+msgid "Anonymous access denied"
+msgstr ""
+
+#: gio/gio-tool-mount.c:559
+msgid "No drive for device file"
+msgstr "Ulac anuḍaf i ufaylu n yibenk"
+
+#: gio/gio-tool-mount.c:1051
+msgid "No volume for given ID"
+msgstr "Ulac ableɣ i usulay i d-yettwamudden"
+
+#: gio/gio-tool-mount.c:1240
+msgid "Mount or unmount the locations."
+msgstr ""
+
+#: gio/gio-tool-move.c:44
+msgid "Don’t use copy and delete fallback"
+msgstr ""
+
+#: gio/gio-tool-move.c:101
+msgid "Move one or more files from SOURCE to DEST."
+msgstr ""
+
+#: gio/gio-tool-move.c:103
+msgid ""
+"gio move is similar to the traditional mv utility, but using GIO\n"
+"locations instead of local files: for example, you can use something\n"
+"like smb://server/resource/file.txt as location"
+msgstr ""
+
+#: gio/gio-tool-move.c:145
+#, c-format
+msgid "Target %s is not a directory"
+msgstr ""
+
+#: gio/gio-tool-open.c:77
+msgid ""
+"Open files with the default application that\n"
+"is registered to handle files of this type."
+msgstr ""
+
+#: gio/gio-tool-remove.c:33 gio/gio-tool-trash.c:35
+msgid "Ignore nonexistent files, never prompt"
+msgstr ""
+
+#: gio/gio-tool-remove.c:54
+msgid "Delete the given files."
+msgstr "Kkes ifuyla i d-yettwamudden."
+
+#: gio/gio-tool-rename.c:47
+msgid "NAME"
+msgstr "ISEM"
+
+#: gio/gio-tool-rename.c:52
+msgid "Rename a file."
+msgstr ""
+
+#: gio/gio-tool-rename.c:72
+msgid "Missing argument"
+msgstr ""
+
+#: gio/gio-tool-rename.c:78 gio/gio-tool-save.c:192 gio/gio-tool-set.c:150
+msgid "Too many arguments"
+msgstr ""
+
+#: gio/gio-tool-rename.c:97
+#, c-format
+msgid "Rename successful. New uri: %s\n"
+msgstr ""
+
+#: gio/gio-tool-save.c:52
+msgid "Only create if not existing"
+msgstr ""
+
+#: gio/gio-tool-save.c:53
+msgid "Append to end of file"
+msgstr ""
+
+#: gio/gio-tool-save.c:54
+msgid "When creating, restrict access to the current user"
+msgstr ""
+
+#: gio/gio-tool-save.c:55
+msgid "When replacing, replace as if the destination did not exist"
+msgstr ""
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:57
+msgid "Print new etag at end"
+msgstr ""
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:59
+msgid "The etag of the file being overwritten"
+msgstr ""
+
+#: gio/gio-tool-save.c:59
+msgid "ETAG"
+msgstr ""
+
+#: gio/gio-tool-save.c:115
+msgid "Error reading from standard input"
+msgstr ""
+
+#. Translators: The "etag" is a token allowing to verify whether a file has been modified
+#: gio/gio-tool-save.c:141
+msgid "Etag not available\n"
+msgstr ""
+
+#: gio/gio-tool-save.c:165
+msgid "Read from standard input and save to DEST."
+msgstr ""
+
+#: gio/gio-tool-save.c:185
+msgid "No destination given"
+msgstr "Ulac tanila i d-yettwamudden"
+
+#: gio/gio-tool-set.c:36
+msgid "Type of the attribute"
+msgstr "Anaw n umyerr"
+
+#: gio/gio-tool-set.c:36
+msgid "TYPE"
+msgstr "ANAW"
+
+#: gio/gio-tool-set.c:38
+msgid "Unset given attribute"
+msgstr "Kkes asbadu n umyerr i d-yettwamudden"
+
+#: gio/gio-tool-set.c:95
+msgid "ATTRIBUTE"
+msgstr "IMYERR"
+
+#: gio/gio-tool-set.c:95
+msgid "VALUE"
+msgstr "AZAL"
+
+#: gio/gio-tool-set.c:99
+msgid "Set a file attribute of LOCATION."
+msgstr "Sbadu imyerr n ufaylu n WADIG."
+
+#: gio/gio-tool-set.c:119
+msgid "Location not specified"
+msgstr "Adig ur yettwafran ara"
+
+#: gio/gio-tool-set.c:126
+msgid "Attribute not specified"
+msgstr ""
+
+#: gio/gio-tool-set.c:143
+msgid "Value not specified"
+msgstr ""
+
+#: gio/gio-tool-set.c:193
+#, c-format
+msgid "Invalid attribute type “%s”"
+msgstr ""
+
+#: gio/gio-tool-trash.c:36
+msgid "Empty the trash"
+msgstr "Silem taqecwalt"
+
+#: gio/gio-tool-trash.c:37
+msgid "List files in the trash with their original locations"
+msgstr ""
+
+#: gio/gio-tool-trash.c:38
+msgid ""
+"Restore a file from trash to its original location (possibly recreating the "
+"directory)"
+msgstr ""
+
+#: gio/gio-tool-trash.c:108
+msgid "Unable to find original path"
+msgstr "D awezɣi ad d-yaf abrid ameẓlu"
+
+#: gio/gio-tool-trash.c:125
+msgid "Unable to recreate original location: "
+msgstr ""
+
+#: gio/gio-tool-trash.c:138
+msgid "Unable to move file to its original location: "
+msgstr ""
+
+#: gio/gio-tool-trash.c:227
+msgid "Move/Restore files or directories to the trash."
+msgstr ""
+
+#: gio/gio-tool-trash.c:229
+msgid ""
+"Note: for --restore switch, if the original location of the trashed file \n"
+"already exists, it will not be overwritten unless --force is set."
+msgstr ""
+
+#: gio/gio-tool-trash.c:260
+msgid "Location given doesn't start with trash:///"
+msgstr "Adig i d-yettwamudden ur yebdi ara s tqecwalt: ///"
+
+#: gio/gio-tool-tree.c:35
+msgid "Follow symbolic links, mounts and shortcuts"
+msgstr ""
+
+#: gio/gio-tool-tree.c:251
+msgid "List contents of directories in a tree-like format."
+msgstr ""
+
+#: gio/glib-compile-resources.c:142 gio/glib-compile-schemas.c:1514
+#, c-format
+msgid "Element <%s> not allowed inside <%s>"
+msgstr "Aferdis <%s> ur yettwasireg ara daxel n <%s>"
+
+#: gio/glib-compile-resources.c:146
+#, c-format
+msgid "Element <%s> not allowed at toplevel"
+msgstr ""
+
+#: gio/glib-compile-resources.c:236
+#, c-format
+msgid "File %s appears multiple times in the resource"
+msgstr ""
+
+#: gio/glib-compile-resources.c:247
+#, c-format
+msgid "Failed to locate “%s” in any source directory"
+msgstr "Yecceḍ usideg n \"%s\" deg meṛṛa ikaramen iɣbula"
+
+#: gio/glib-compile-resources.c:258
+#, c-format
+msgid "Failed to locate “%s” in current directory"
+msgstr "Yecceḍ usideg n \"%s\" deg ukaram-a"
+
+#: gio/glib-compile-resources.c:292
+#, c-format
+msgid "Unknown processing option “%s”"
+msgstr ""
+
+#. Translators: the first %s is a gresource XML attribute,
+#. * the second %s is an environment variable, and the third
+#. * %s is a command line tool
+#.
+#: gio/glib-compile-resources.c:312 gio/glib-compile-resources.c:369
+#: gio/glib-compile-resources.c:426
+#, c-format
+msgid "%s preprocessing requested, but %s is not set, and %s is not in PATH"
+msgstr ""
+
+#: gio/glib-compile-resources.c:459
+#, c-format
+msgid "Error reading file %s: %s"
+msgstr "Tuccḍa deg tɣuṛi n ufaylu %s: %s"
+
+#: gio/glib-compile-resources.c:479
+#, c-format
+msgid "Error compressing file %s"
+msgstr "Tuccḍa deg uskussem n ufaylu %s"
+
+#: gio/glib-compile-resources.c:543
+#, c-format
+msgid "text may not appear inside <%s>"
+msgstr "ur ilaq ara ad d-iban uḍris daxel <%s>"
+
+#: gio/glib-compile-resources.c:821 gio/glib-compile-schemas.c:2172
+msgid "Show program version and exit"
+msgstr "Sken lqem n wahil syen ffeɣ"
+
+#: gio/glib-compile-resources.c:822
+msgid "Name of the output file"
+msgstr "Isem n ufaylu n unekcum"
+
+#: gio/glib-compile-resources.c:823
+msgid ""
+"The directories to load files referenced in FILE from (default: current "
+"directory)"
+msgstr ""
+
+#: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
+msgid "DIRECTORY"
+msgstr "AKARAM"
+
+#: gio/glib-compile-resources.c:824
+msgid ""
+"Generate output in the format selected for by the target filename extension"
+msgstr ""
+
+#: gio/glib-compile-resources.c:825
+msgid "Generate source header"
+msgstr ""
+
+#: gio/glib-compile-resources.c:826
+msgid "Generate source code used to link in the resource file into your code"
+msgstr ""
+
+#: gio/glib-compile-resources.c:827
+msgid "Generate dependency list"
+msgstr ""
+
+#: gio/glib-compile-resources.c:828
+msgid "Name of the dependency file to generate"
+msgstr ""
+
+#: gio/glib-compile-resources.c:829
+msgid "Include phony targets in the generated dependency file"
+msgstr ""
+
+#: gio/glib-compile-resources.c:830
+msgid "Don’t automatically create and register resource"
+msgstr ""
+
+#: gio/glib-compile-resources.c:831
+msgid "Don’t export functions; declare them G_GNUC_INTERNAL"
+msgstr ""
+
+#: gio/glib-compile-resources.c:832
+msgid ""
+"Don’t embed resource data in the C file; assume it's linked externally "
+"instead"
+msgstr ""
+
+#: gio/glib-compile-resources.c:833
+msgid "C identifier name used for the generated source code"
+msgstr ""
+
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr ""
+
+#: gio/glib-compile-resources.c:834
+msgid "The target C compiler (default: the CC environment variable)"
+msgstr ""
+
+#: gio/glib-compile-resources.c:861
+msgid ""
+"Compile a resource specification into a resource file.\n"
+"Resource specification files have the extension .gresource.xml,\n"
+"and the resource file have the extension called .gresource."
+msgstr ""
+
+#: gio/glib-compile-resources.c:893
+msgid "You should give exactly one file name\n"
+msgstr "Ilaq ad d-tmuddeḍ swaswa yiwen yisem n ufaylu\n"
+
+#: gio/glib-compile-schemas.c:95
+#, c-format
+msgid "nick must be a minimum of 2 characters"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:106
+#, c-format
+msgid "Invalid numeric value"
+msgstr "Azal umḍin d arameɣtu"
+
+#: gio/glib-compile-schemas.c:114
+#, c-format
+msgid "<value nick='%s'/> already specified"
+msgstr "<value nick='%s'/> ur yettwamudd ara yakan"
+
+#: gio/glib-compile-schemas.c:122
+#, c-format
+msgid "value='%s' already specified"
+msgstr "azal='%s' ur yettwamudd ara yakan"
+
+#: gio/glib-compile-schemas.c:136
+#, c-format
+msgid "flags values must have at most 1 bit set"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:161
+#, c-format
+msgid "<%s> must contain at least one <value>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:317
+#, c-format
+msgid "<%s> is not contained in the specified range"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:329
+#, c-format
+msgid "<%s> is not a valid member of the specified enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:335
+#, c-format
+msgid "<%s> contains string not in the specified flags type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:341
+#, c-format
+msgid "<%s> contains a string not in <choices>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:375
+msgid "<range/> already specified for this key"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:393
+#, c-format
+msgid "<range> not allowed for keys of type “%s”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:410
+#, c-format
+msgid "<range> specified minimum is greater than maximum"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:435
+#, c-format
+msgid "unsupported l10n category: %s"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:443
+msgid "l10n requested, but no gettext domain given"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:455
+msgid "translation context given for value without l10n enabled"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:477
+#, c-format
+msgid "Failed to parse <default> value of type “%s”: "
+msgstr ""
+
+#: gio/glib-compile-schemas.c:494
+msgid ""
+"<choices> cannot be specified for keys tagged as having an enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:503
+msgid "<choices> already specified for this key"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:515
+#, c-format
+msgid "<choices> not allowed for keys of type “%s”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:531
+#, c-format
+msgid "<choice value='%s'/> already given"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:546
+#, c-format
+msgid "<choices> must contain at least one <choice>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:560
+msgid "<aliases> already specified for this key"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:564
+msgid ""
+"<aliases> can only be specified for keys with enumerated or flags types or "
+"after <choices>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:583
+#, c-format
+msgid ""
+"<alias value='%s'/> given when “%s” is already a member of the enumerated "
+"type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:589
+#, c-format
+msgid "<alias value='%s'/> given when <choice value='%s'/> was already given"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:597
+#, c-format
+msgid "<alias value='%s'/> already specified"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:607
+#, c-format
+msgid "alias target “%s” is not in enumerated type"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:608
+#, c-format
+msgid "alias target “%s” is not in <choices>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:623
+#, c-format
+msgid "<aliases> must contain at least one <alias>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:797
+msgid "Empty names are not permitted"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:807
+#, c-format
+msgid "Invalid name “%s”: names must begin with a lowercase letter"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:819
+#, c-format
+msgid ""
+"Invalid name “%s”: invalid character “%c”; only lowercase letters, numbers "
+"and hyphen (“-”) are permitted"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:828
+#, c-format
+msgid "Invalid name “%s”: two successive hyphens (“--”) are not permitted"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:837
+#, c-format
+msgid "Invalid name “%s”: the last character may not be a hyphen (“-”)"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:845
+#, c-format
+msgid "Invalid name “%s”: maximum length is 1024"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:917
+#, c-format
+msgid "<child name='%s'> already specified"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:943
+msgid "Cannot add keys to a “list-of” schema"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:954
+#, c-format
+msgid "<key name='%s'> already specified"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:972
+#, c-format
+msgid ""
+"<key name='%s'> shadows <key name='%s'> in <schema id='%s'>; use <override> "
+"to modify value"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:983
+#, c-format
+msgid ""
+"Exactly one of “type”, “enum” or “flags” must be specified as an attribute "
+"to <key>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1002
+#, c-format
+msgid "<%s id='%s'> not (yet) defined."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1017
+#, c-format
+msgid "Invalid GVariant type string “%s”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1047
+msgid "<override> given but schema isn’t extending anything"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1060
+#, c-format
+msgid "No <key name='%s'> to override"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1068
+#, c-format
+msgid "<override name='%s'> already specified"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1141
+#, c-format
+msgid "<schema id='%s'> already specified"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1153
+#, c-format
+msgid "<schema id='%s'> extends not yet existing schema “%s”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1169
+#, c-format
+msgid "<schema id='%s'> is list of not yet existing schema “%s”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1177
+#, c-format
+msgid "Cannot be a list of a schema with a path"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1187
+#, c-format
+msgid "Cannot extend a schema with a path"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1197
+#, c-format
+msgid ""
+"<schema id='%s'> is a list, extending <schema id='%s'> which is not a list"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1207
+#, c-format
+msgid ""
+"<schema id='%s' list-of='%s'> extends <schema id='%s' list-of='%s'> but “%s” "
+"does not extend “%s”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1224
+#, c-format
+msgid "A path, if given, must begin and end with a slash"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1231
+#, c-format
+msgid "The path of a list must end with “:/”"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1240
+#, c-format
+msgid ""
+"Warning: Schema “%s” has path “%s”.  Paths starting with “/apps/”, “/"
+"desktop/” or “/system/” are deprecated."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1270
+#, c-format
+msgid "<%s id='%s'> already specified"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1420 gio/glib-compile-schemas.c:1436
+#, c-format
+msgid "Only one <%s> element allowed inside <%s>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1518
+#, c-format
+msgid "Element <%s> not allowed at the top level"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1536
+msgid "Element <default> is required in <key>"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1626
+#, c-format
+msgid "Text may not appear inside <%s>"
+msgstr "Aḍris yezmer ad d-iban deg <%s>"
+
+#: gio/glib-compile-schemas.c:1694
+#, c-format
+msgid "Warning: undefined reference to <schema id='%s'/>"
+msgstr ""
+
+#. Translators: Do not translate "--strict".
+#: gio/glib-compile-schemas.c:1833 gio/glib-compile-schemas.c:1912
+msgid "--strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1845
+msgid "This entire file has been ignored."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1908
+msgid "Ignoring this file."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1963
+#, c-format
+msgid ""
+"No such key “%s” in schema “%s” as specified in override file “%s”; ignoring "
+"override for this key."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1971
+#, c-format
+msgid ""
+"No such key “%s” in schema “%s” as specified in override file “%s” and --"
+"strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:1993
+#, c-format
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s” in schema "
+"“%s” (override file “%s”); ignoring override for this key."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2002
+#, c-format
+msgid ""
+"Cannot provide per-desktop overrides for localized key “%s” in schema "
+"“%s” (override file “%s”) and --strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2026
+#, c-format
+msgid ""
+"Error parsing key “%s” in schema “%s” as specified in override file “%s”: "
+"%s. Ignoring override for this key."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2038
+#, c-format
+msgid ""
+"Error parsing key “%s” in schema “%s” as specified in override file “%s”: "
+"%s. --strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2065
+#, c-format
+msgid ""
+"Override for key “%s” in schema “%s” in override file “%s” is outside the "
+"range given in the schema; ignoring override for this key."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2075
+#, c-format
+msgid ""
+"Override for key “%s” in schema “%s” in override file “%s” is outside the "
+"range given in the schema and --strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2101
+#, c-format
+msgid ""
+"Override for key “%s” in schema “%s” in override file “%s” is not in the "
+"list of valid choices; ignoring override for this key."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2111
+#, c-format
+msgid ""
+"Override for key “%s” in schema “%s” in override file “%s” is not in the "
+"list of valid choices and --strict was specified; exiting."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2173
+msgid "Where to store the gschemas.compiled file"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2174
+msgid "Abort on any errors in schemas"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2175
+msgid "Do not write the gschema.compiled file"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2176
+msgid "Do not enforce key name restrictions"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2206
+msgid ""
+"Compile all GSettings schema files into a schema cache.\n"
+"Schema files are required to have the extension .gschema.xml,\n"
+"and the cache file is called gschemas.compiled."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2238
+msgid "You should give exactly one directory name"
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2285
+msgid "No schema files found: doing nothing."
+msgstr ""
+
+#: gio/glib-compile-schemas.c:2287
+msgid "No schema files found: removed existing output file."
+msgstr ""
+
+#: gio/glocalfile.c:570 gio/win32/gwinhttpfile.c:436
+#, c-format
+msgid "Invalid filename %s"
+msgstr "Isem n ufaylu %s d arameɣtu"
+
+#: gio/glocalfile.c:1012
+#, c-format
+msgid "Error getting filesystem info for %s: %s"
+msgstr ""
+
+#. Translators: This is an error message when trying to find
+#. * the enclosing (user visible) mount of a file, but none
+#. * exists.
+#.
+#: gio/glocalfile.c:1150
+#, c-format
+msgid "Containing mount for file %s not found"
+msgstr ""
+
+#: gio/glocalfile.c:1173
+msgid "Can’t rename root directory"
+msgstr ""
+
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
+#, c-format
+msgid "Error renaming file %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:1198
+msgid "Can’t rename file, filename already exists"
+msgstr "Ur yezmir ara ad isenfel isem n ufaylu, isem n ufaylu yella yakan"
+
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
+msgid "Invalid filename"
+msgstr "Isem n ufaylu d arameɣtu"
+
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
+#, c-format
+msgid "Error opening file %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:1515
+#, c-format
+msgid "Error removing file %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
+#, c-format
+msgid "Error trashing file %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2067
+#, c-format
+msgid "Unable to create trash directory %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2088
+#, c-format
+msgid "Unable to find toplevel directory to trash %s"
+msgstr ""
+
+#: gio/glocalfile.c:2096
+#, c-format
+msgid "Trashing on system internal mounts is not supported"
+msgstr ""
+
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
+#, c-format
+msgid "Unable to find or create trash directory %s to trash %s"
+msgstr ""
+
+#: gio/glocalfile.c:2254
+#, c-format
+msgid "Unable to create trashing info file for %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2325
+#, c-format
+msgid "Unable to trash file %s across filesystem boundaries"
+msgstr ""
+
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
+#, c-format
+msgid "Unable to trash file %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2391
+#, c-format
+msgid "Unable to trash file %s"
+msgstr ""
+
+#: gio/glocalfile.c:2417
+#, c-format
+msgid "Error creating directory %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2446
+#, c-format
+msgid "Filesystem does not support symbolic links"
+msgstr ""
+
+#: gio/glocalfile.c:2449
+#, c-format
+msgid "Error making symbolic link %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
+#, c-format
+msgid "Error moving file %s: %s"
+msgstr ""
+
+#: gio/glocalfile.c:2515
+msgid "Can’t move directory over directory"
+msgstr ""
+
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
+#: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
+msgid "Backup file creation failed"
+msgstr ""
+
+#: gio/glocalfile.c:2560
+#, c-format
+msgid "Error removing target file: %s"
+msgstr "Tuccḍa deg tukksa n ufaylu asaḍas: %s"
+
+#: gio/glocalfile.c:2574
+msgid "Move between mounts not supported"
+msgstr ""
+
+#: gio/glocalfile.c:2750
+#, c-format
+msgid "Could not determine the disk usage of %s: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:765
+msgid "Attribute value must be non-NULL"
+msgstr ""
+
+#: gio/glocalfileinfo.c:772
+msgid "Invalid attribute type (string or invalid expected)"
+msgstr ""
+
+#: gio/glocalfileinfo.c:779
+msgid "Invalid extended attribute name"
+msgstr ""
+
+#: gio/glocalfileinfo.c:830
+#, c-format
+msgid "Error setting extended attribute “%s”: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
+msgid " (invalid encoding)"
+msgstr " (astengel arameɣtu)"
+
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileoutputstream.c:997
+#, c-format
+msgid "Error when getting information for file “%s”: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2254
+#, c-format
+msgid "Error when getting information for file descriptor: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2299
+msgid "Invalid attribute type (uint32 expected)"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2317
+msgid "Invalid attribute type (uint64 expected)"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
+msgid "Invalid attribute type (byte string expected)"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2402
+msgid "Cannot set permissions on symlinks"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2418
+#, c-format
+msgid "Error setting permissions: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2469
+#, c-format
+msgid "Error setting owner: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2492
+msgid "symlink must be non-NULL"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
+#, c-format
+msgid "Error setting symlink: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2511
+msgid "Error setting symlink: file is not a symlink"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2603
+#, c-format
+msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2612
+#, c-format
+msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2622
+#, c-format
+msgid "UNIX timestamp %lld does not fit into 64 bits"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2633
+#, c-format
+msgid "UNIX timestamp %lld is outside of the range supported by Windows"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2765
+#, c-format
+msgid "File name “%s” cannot be converted to UTF-16"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2784
+#, c-format
+msgid "File “%s” cannot be opened: Windows Error %lu"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2797
+#, c-format
+msgid "Error setting modification or access time for file “%s”: %lu"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2974
+#, c-format
+msgid "Error setting modification or access time: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:2997
+msgid "SELinux context must be non-NULL"
+msgstr ""
+
+#: gio/glocalfileinfo.c:3004
+msgid "SELinux is not enabled on this system"
+msgstr ""
+
+#: gio/glocalfileinfo.c:3014
+#, c-format
+msgid "Error setting SELinux context: %s"
+msgstr ""
+
+#: gio/glocalfileinfo.c:3111
+#, c-format
+msgid "Setting attribute %s not supported"
+msgstr ""
+
+#: gio/glocalfileinputstream.c:165 gio/glocalfileoutputstream.c:803
+#, c-format
+msgid "Error reading from file: %s"
+msgstr ""
+
+#: gio/glocalfileinputstream.c:196 gio/glocalfileoutputstream.c:355
+#: gio/glocalfileoutputstream.c:449
+#, c-format
+msgid "Error closing file: %s"
+msgstr ""
+
+#: gio/glocalfileinputstream.c:274 gio/glocalfileoutputstream.c:565
+#: gio/glocalfileoutputstream.c:1188
+#, c-format
+msgid "Error seeking in file: %s"
+msgstr ""
+
+#: gio/glocalfilemonitor.c:882
+msgid "Unable to find default local file monitor type"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:222 gio/glocalfileoutputstream.c:300
+#: gio/glocalfileoutputstream.c:336 gio/glocalfileoutputstream.c:824
+#, c-format
+msgid "Error writing to file: %s"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:382
+#, c-format
+msgid "Error removing old backup link: %s"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:396 gio/glocalfileoutputstream.c:409
+#, c-format
+msgid "Error creating backup copy: %s"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:427
+#, c-format
+msgid "Error renaming temporary file: %s"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:611 gio/glocalfileoutputstream.c:1242
+#, c-format
+msgid "Error truncating file: %s"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
+#, c-format
+msgid "Error opening file “%s”: %s"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:959
+msgid "Target file is a directory"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:973
+msgid "Target file is not a regular file"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:1015
+msgid "The file was externally modified"
+msgstr ""
+
+#: gio/glocalfileoutputstream.c:1205
+#, c-format
+msgid "Error removing old file: %s"
+msgstr ""
+
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
+msgid "Invalid GSeekType supplied"
+msgstr ""
+
+#: gio/gmemoryinputstream.c:483
+msgid "Invalid seek request"
+msgstr "Assuter n unadi d arameɣtu"
+
+#: gio/gmemoryinputstream.c:507
+msgid "Cannot truncate GMemoryInputStream"
+msgstr ""
+
+#: gio/gmemoryoutputstream.c:557
+msgid "Memory output stream not resizable"
+msgstr ""
+
+#: gio/gmemoryoutputstream.c:573
+msgid "Failed to resize memory output stream"
+msgstr ""
+
+#: gio/gmemoryoutputstream.c:652
+msgid ""
+"Amount of memory required to process the write is larger than available "
+"address space"
+msgstr ""
+
+#: gio/gmemoryoutputstream.c:761
+msgid "Requested seek before the beginning of the stream"
+msgstr ""
+
+#: gio/gmemoryoutputstream.c:776
+msgid "Requested seek beyond the end of the stream"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement unmount.
+#: gio/gmount.c:400
+msgid "mount doesn’t implement “unmount”"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement eject.
+#: gio/gmount.c:476
+msgid "mount doesn’t implement “eject”"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement any of unmount or unmount_with_operation.
+#: gio/gmount.c:554
+msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement any of eject or eject_with_operation.
+#: gio/gmount.c:639
+msgid "mount doesn’t implement “eject” or “eject_with_operation”"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement remount.
+#: gio/gmount.c:727
+msgid "mount doesn’t implement “remount”"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement content type guessing.
+#: gio/gmount.c:809
+msgid "mount doesn’t implement content type guessing"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for mount objects that
+#. * don't implement content type guessing.
+#: gio/gmount.c:896
+msgid "mount doesn’t implement synchronous content type guessing"
+msgstr ""
+
+#: gio/gnetworkaddress.c:424
+#, c-format
+msgid "Hostname “%s” contains “[” but not “]”"
+msgstr ""
+
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
+msgid "Network unreachable"
+msgstr "Ulac aduf ɣer uẓeṭṭa-agi"
+
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
+msgid "Host unreachable"
+msgstr ""
+
+#: gio/gnetworkmonitornetlink.c:101 gio/gnetworkmonitornetlink.c:113
+#: gio/gnetworkmonitornetlink.c:132
+#, c-format
+msgid "Could not create network monitor: %s"
+msgstr ""
+
+#: gio/gnetworkmonitornetlink.c:122
+msgid "Could not create network monitor: "
+msgstr ""
+
+#: gio/gnetworkmonitornetlink.c:185
+msgid "Could not get network status: "
+msgstr ""
+
+#: gio/gnetworkmonitornm.c:313
+#, c-format
+msgid "NetworkManager not running"
+msgstr ""
+
+#: gio/gnetworkmonitornm.c:324
+#, c-format
+msgid "NetworkManager version too old"
+msgstr ""
+
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
+msgid "Output stream doesn’t implement write"
+msgstr ""
+
+#: gio/goutputstream.c:474 gio/goutputstream.c:1539
+#, c-format
+msgid "Sum of vectors passed to %s too large"
+msgstr ""
+
+#: gio/goutputstream.c:738 gio/goutputstream.c:1769
+msgid "Source stream is already closed"
+msgstr ""
+
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
+msgid "Unspecified proxy lookup failure"
+msgstr ""
+
+#. Translators: the first placeholder is a domain name, the
+#. * second is an error message
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
+#, c-format
+msgid "Error resolving “%s”: %s"
+msgstr ""
+
+#. Translators: The placeholder is for a function name.
+#: gio/gresolver.c:541 gio/gresolver.c:701
+#, c-format
+msgid "%s not implemented"
+msgstr ""
+
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
+msgid "Invalid domain"
+msgstr ""
+
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresourcefile.c:757
+#, c-format
+msgid "The resource at “%s” does not exist"
+msgstr ""
+
+#: gio/gresource.c:873
+#, c-format
+msgid "The resource at “%s” failed to decompress"
+msgstr ""
+
+#: gio/gresourcefile.c:663
+msgid "Resource files cannot be renamed"
+msgstr ""
+
+#: gio/gresourcefile.c:753
+#, c-format
+msgid "The resource at “%s” is not a directory"
+msgstr ""
+
+#: gio/gresourcefile.c:961
+msgid "Input stream doesn’t implement seek"
+msgstr ""
+
+#: gio/gresource-tool.c:503
+msgid "List sections containing resources in an elf FILE"
+msgstr ""
+
+#: gio/gresource-tool.c:509
+msgid ""
+"List resources\n"
+"If SECTION is given, only list resources in this section\n"
+"If PATH is given, only list matching resources"
+msgstr ""
+
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
+msgid "FILE [PATH]"
+msgstr ""
+
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
+msgid "SECTION"
+msgstr ""
+
+#: gio/gresource-tool.c:518
+msgid ""
+"List resources with details\n"
+"If SECTION is given, only list resources in this section\n"
+"If PATH is given, only list matching resources\n"
+"Details include the section, size and compression"
+msgstr ""
+
+#: gio/gresource-tool.c:528
+msgid "Extract a resource file to stdout"
+msgstr ""
+
+#: gio/gresource-tool.c:529
+msgid "FILE PATH"
+msgstr ""
+
+#: gio/gresource-tool.c:543
+msgid ""
+"Usage:\n"
+"  gresource [--section SECTION] COMMAND [ARGS…]\n"
+"\n"
+"Commands:\n"
+"  help                      Show this information\n"
+"  sections                  List resource sections\n"
+"  list                      List resources\n"
+"  details                   List resources with details\n"
+"  extract                   Extract a resource\n"
+"\n"
+"Use “gresource help COMMAND” to get detailed help.\n"
+"\n"
+msgstr ""
+
+#: gio/gresource-tool.c:557
+#, c-format
+msgid ""
+"Usage:\n"
+"  gresource %s%s%s %s\n"
+"\n"
+"%s\n"
+"\n"
+msgstr ""
+
+#: gio/gresource-tool.c:564
+msgid "  SECTION   An (optional) elf section name\n"
+msgstr ""
+
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
+msgid "  COMMAND   The (optional) command to explain\n"
+msgstr ""
+
+#: gio/gresource-tool.c:574
+msgid "  FILE      An elf file (a binary or a shared library)\n"
+msgstr ""
+
+#: gio/gresource-tool.c:577
+msgid ""
+"  FILE      An elf file (a binary or a shared library)\n"
+"            or a compiled resource file\n"
+msgstr ""
+
+#: gio/gresource-tool.c:581
+msgid "[PATH]"
+msgstr ""
+
+#: gio/gresource-tool.c:583
+msgid "  PATH      An (optional) resource path (may be partial)\n"
+msgstr ""
+
+#: gio/gresource-tool.c:584
+msgid "PATH"
+msgstr ""
+
+#: gio/gresource-tool.c:586
+msgid "  PATH      A resource path\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:51 gio/gsettings-tool.c:72 gio/gsettings-tool.c:925
+#, c-format
+msgid "No such schema “%s”\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:57
+#, c-format
+msgid "Schema “%s” is not relocatable (path must not be specified)\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:78
+#, c-format
+msgid "Schema “%s” is relocatable (path must be specified)\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:92
+msgid "Empty path given.\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:98
+msgid "Path must begin with a slash (/)\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:104
+msgid "Path must end with a slash (/)\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:110
+msgid "Path must not contain two adjacent slashes (//)\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:555
+msgid "The provided value is outside of the valid range\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:562
+msgid "The key is not writable\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:598
+msgid "List the installed (non-relocatable) schemas"
+msgstr ""
+
+#: gio/gsettings-tool.c:604
+msgid "List the installed relocatable schemas"
+msgstr ""
+
+#: gio/gsettings-tool.c:610
+msgid "List the keys in SCHEMA"
+msgstr ""
+
+#: gio/gsettings-tool.c:611 gio/gsettings-tool.c:617 gio/gsettings-tool.c:660
+msgid "SCHEMA[:PATH]"
+msgstr ""
+
+#: gio/gsettings-tool.c:616
+msgid "List the children of SCHEMA"
+msgstr ""
+
+#: gio/gsettings-tool.c:622
+msgid ""
+"List keys and values, recursively\n"
+"If no SCHEMA is given, list all keys\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:624
+msgid "[SCHEMA[:PATH]]"
+msgstr ""
+
+#: gio/gsettings-tool.c:629
+msgid "Get the value of KEY"
+msgstr ""
+
+#: gio/gsettings-tool.c:630 gio/gsettings-tool.c:636 gio/gsettings-tool.c:642
+#: gio/gsettings-tool.c:654 gio/gsettings-tool.c:666
+msgid "SCHEMA[:PATH] KEY"
+msgstr ""
+
+#: gio/gsettings-tool.c:635
+msgid "Query the range of valid values for KEY"
+msgstr ""
+
+#: gio/gsettings-tool.c:641
+msgid "Query the description for KEY"
+msgstr ""
+
+#: gio/gsettings-tool.c:647
+msgid "Set the value of KEY to VALUE"
+msgstr ""
+
+#: gio/gsettings-tool.c:648
+msgid "SCHEMA[:PATH] KEY VALUE"
+msgstr ""
+
+#: gio/gsettings-tool.c:653
+msgid "Reset KEY to its default value"
+msgstr ""
+
+#: gio/gsettings-tool.c:659
+msgid "Reset all keys in SCHEMA to their defaults"
+msgstr ""
+
+#: gio/gsettings-tool.c:665
+msgid "Check if KEY is writable"
+msgstr ""
+
+#: gio/gsettings-tool.c:671
+msgid ""
+"Monitor KEY for changes.\n"
+"If no KEY is specified, monitor all keys in SCHEMA.\n"
+"Use ^C to stop monitoring.\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:674
+msgid "SCHEMA[:PATH] [KEY]"
+msgstr ""
+
+#: gio/gsettings-tool.c:686
+msgid ""
+"Usage:\n"
+"  gsettings --version\n"
+"  gsettings [--schemadir SCHEMADIR] COMMAND [ARGS…]\n"
+"\n"
+"Commands:\n"
+"  help                      Show this information\n"
+"  list-schemas              List installed schemas\n"
+"  list-relocatable-schemas  List relocatable schemas\n"
+"  list-keys                 List keys in a schema\n"
+"  list-children             List children of a schema\n"
+"  list-recursively          List keys and values, recursively\n"
+"  range                     Queries the range of a key\n"
+"  describe                  Queries the description of a key\n"
+"  get                       Get the value of a key\n"
+"  set                       Set the value of a key\n"
+"  reset                     Reset the value of a key\n"
+"  reset-recursively         Reset all values in a given schema\n"
+"  writable                  Check if a key is writable\n"
+"  monitor                   Watch for changes\n"
+"\n"
+"Use “gsettings help COMMAND” to get detailed help.\n"
+"\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:710
+#, c-format
+msgid ""
+"Usage:\n"
+"  gsettings [--schemadir SCHEMADIR] %s %s\n"
+"\n"
+"%s\n"
+"\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:716
+msgid "  SCHEMADIR A directory to search for additional schemas\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:724
+msgid ""
+"  SCHEMA    The name of the schema\n"
+"  PATH      The path, for relocatable schemas\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:729
+msgid "  KEY       The (optional) key within the schema\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:733
+msgid "  KEY       The key within the schema\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:737
+msgid "  VALUE     The value to set\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:792
+#, c-format
+msgid "Could not load schemas from %s: %s\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:804
+msgid "No schemas installed\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:883
+msgid "Empty schema name given\n"
+msgstr ""
+
+#: gio/gsettings-tool.c:938
+#, c-format
+msgid "No such key “%s”\n"
+msgstr ""
+
+#: gio/gsocket.c:435
+msgid "Invalid socket, not initialized"
+msgstr ""
+
+#: gio/gsocket.c:442
+#, c-format
+msgid "Invalid socket, initialization failed due to: %s"
+msgstr ""
+
+#: gio/gsocket.c:450
+msgid "Socket is already closed"
+msgstr ""
+
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
+msgid "Socket I/O timed out"
+msgstr "Tanzagt Anekcum/Tuffɣa tfukk"
+
+#: gio/gsocket.c:602
+#, c-format
+msgid "creating GSocket from fd: %s"
+msgstr ""
+
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
+#, c-format
+msgid "Unable to create socket: %s"
+msgstr ""
+
+#: gio/gsocket.c:730
+msgid "Unknown family was specified"
+msgstr ""
+
+#: gio/gsocket.c:737
+msgid "Unknown protocol was specified"
+msgstr ""
+
+#: gio/gsocket.c:1243
+#, c-format
+msgid "Cannot use datagram operations on a non-datagram socket."
+msgstr ""
+
+#: gio/gsocket.c:1260
+#, c-format
+msgid "Cannot use datagram operations on a socket with a timeout set."
+msgstr ""
+
+#: gio/gsocket.c:2067
+#, c-format
+msgid "could not get local address: %s"
+msgstr ""
+
+#: gio/gsocket.c:2113
+#, c-format
+msgid "could not get remote address: %s"
+msgstr ""
+
+#: gio/gsocket.c:2179
+#, c-format
+msgid "could not listen: %s"
+msgstr ""
+
+#: gio/gsocket.c:2283
+#, c-format
+msgid "Error binding to address %s: %s"
+msgstr ""
+
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
+#, c-format
+msgid "Error joining multicast group: %s"
+msgstr ""
+
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
+#, c-format
+msgid "Error leaving multicast group: %s"
+msgstr ""
+
+#: gio/gsocket.c:2460
+msgid "No support for source-specific multicast"
+msgstr ""
+
+#: gio/gsocket.c:2607
+msgid "Unsupported socket family"
+msgstr ""
+
+#: gio/gsocket.c:2632
+msgid "source-specific not an IPv4 address"
+msgstr ""
+
+#: gio/gsocket.c:2656
+#, c-format
+msgid "Interface name too long"
+msgstr ""
+
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
+#, c-format
+msgid "Interface not found: %s"
+msgstr ""
+
+#: gio/gsocket.c:2699
+msgid "No support for IPv4 source-specific multicast"
+msgstr ""
+
+#: gio/gsocket.c:2757
+msgid "No support for IPv6 source-specific multicast"
+msgstr ""
+
+#: gio/gsocket.c:2990
+#, c-format
+msgid "Error accepting connection: %s"
+msgstr ""
+
+#: gio/gsocket.c:3116
+msgid "Connection in progress"
+msgstr ""
+
+#: gio/gsocket.c:3167
+msgid "Unable to get pending error: "
+msgstr ""
+
+#: gio/gsocket.c:3356
+#, c-format
+msgid "Error receiving data: %s"
+msgstr ""
+
+#: gio/gsocket.c:3695
+#, c-format
+msgid "Error sending data: %s"
+msgstr ""
+
+#: gio/gsocket.c:3882
+#, c-format
+msgid "Unable to shutdown socket: %s"
+msgstr ""
+
+#: gio/gsocket.c:3963
+#, c-format
+msgid "Error closing socket: %s"
+msgstr ""
+
+#: gio/gsocket.c:4657
+#, c-format
+msgid "Waiting for socket condition: %s"
+msgstr ""
+
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
+#, c-format
+msgid "Unable to send message: %s"
+msgstr ""
+
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
+msgid "Message vectors too large"
+msgstr ""
+
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
+#, c-format
+msgid "Error sending message: %s"
+msgstr ""
+
+#: gio/gsocket.c:5269
+msgid "GSocketControlMessage not supported on Windows"
+msgstr ""
+
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
+#, c-format
+msgid "Error receiving message: %s"
+msgstr ""
+
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
+#, c-format
+msgid "Unable to read socket credentials: %s"
+msgstr ""
+
+#: gio/gsocket.c:6412
+msgid "g_socket_get_credentials not implemented for this OS"
+msgstr ""
+
+#: gio/gsocketclient.c:192
+#, c-format
+msgid "Could not connect to proxy server %s: "
+msgstr ""
+
+#: gio/gsocketclient.c:206
+#, c-format
+msgid "Could not connect to %s: "
+msgstr ""
+
+#: gio/gsocketclient.c:208
+msgid "Could not connect: "
+msgstr ""
+
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
+msgid "Proxying over a non-TCP connection is not supported."
+msgstr ""
+
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
+#, c-format
+msgid "Proxy protocol “%s” is not supported."
+msgstr ""
+
+#: gio/gsocketlistener.c:235
+msgid "Listener is already closed"
+msgstr ""
+
+#: gio/gsocketlistener.c:281
+msgid "Added socket is closed"
+msgstr ""
+
+#: gio/gsocks4aproxy.c:120
+#, c-format
+msgid "SOCKSv4 does not support IPv6 address “%s”"
+msgstr ""
+
+#: gio/gsocks4aproxy.c:138
+msgid "Username is too long for SOCKSv4 protocol"
+msgstr ""
+
+#: gio/gsocks4aproxy.c:155
+#, c-format
+msgid "Hostname “%s” is too long for SOCKSv4 protocol"
+msgstr ""
+
+#: gio/gsocks4aproxy.c:181
+msgid "The server is not a SOCKSv4 proxy server."
+msgstr ""
+
+#: gio/gsocks4aproxy.c:188
+msgid "Connection through SOCKSv4 server was rejected"
+msgstr ""
+
+#: gio/gsocks5proxy.c:155 gio/gsocks5proxy.c:340 gio/gsocks5proxy.c:350
+msgid "The server is not a SOCKSv5 proxy server."
+msgstr ""
+
+#: gio/gsocks5proxy.c:169 gio/gsocks5proxy.c:186
+msgid "The SOCKSv5 proxy requires authentication."
+msgstr ""
+
+#: gio/gsocks5proxy.c:193
+msgid ""
+"The SOCKSv5 proxy requires an authentication method that is not supported by "
+"GLib."
+msgstr ""
+
+#: gio/gsocks5proxy.c:222
+msgid "Username or password is too long for SOCKSv5 protocol."
+msgstr ""
+
+#: gio/gsocks5proxy.c:252
+msgid "SOCKSv5 authentication failed due to wrong username or password."
+msgstr ""
+
+#: gio/gsocks5proxy.c:302
+#, c-format
+msgid "Hostname “%s” is too long for SOCKSv5 protocol"
+msgstr ""
+
+#: gio/gsocks5proxy.c:364
+msgid "The SOCKSv5 proxy server uses unknown address type."
+msgstr ""
+
+#: gio/gsocks5proxy.c:371
+msgid "Internal SOCKSv5 proxy server error."
+msgstr ""
+
+#: gio/gsocks5proxy.c:377
+msgid "SOCKSv5 connection not allowed by ruleset."
+msgstr ""
+
+#: gio/gsocks5proxy.c:384
+msgid "Host unreachable through SOCKSv5 server."
+msgstr ""
+
+#: gio/gsocks5proxy.c:390
+msgid "Network unreachable through SOCKSv5 proxy."
+msgstr ""
+
+#: gio/gsocks5proxy.c:396
+msgid "Connection refused through SOCKSv5 proxy."
+msgstr ""
+
+#: gio/gsocks5proxy.c:402
+msgid "SOCKSv5 proxy does not support “connect” command."
+msgstr ""
+
+#: gio/gsocks5proxy.c:408
+msgid "SOCKSv5 proxy does not support provided address type."
+msgstr ""
+
+#: gio/gsocks5proxy.c:414
+msgid "Unknown SOCKSv5 proxy error."
+msgstr ""
+
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
+#, c-format
+msgid "Failed to create pipe for communicating with child process (%s)"
+msgstr ""
+
+#: gio/gtestdbus.c:615
+#, c-format
+msgid "Pipes are not supported in this platform"
+msgstr ""
+
+#: gio/gthemedicon.c:590
+#, c-format
+msgid "Can’t handle version %d of GThemedIcon encoding"
+msgstr ""
+
+#: gio/gthreadedresolver.c:320
+msgid "No valid addresses were found"
+msgstr ""
+
+#: gio/gthreadedresolver.c:515
+#, c-format
+msgid "Error reverse-resolving “%s”: %s"
+msgstr ""
+
+#. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
+#, c-format
+msgid "Error parsing DNS %s record: malformed DNS packet"
+msgstr ""
+
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
+#, c-format
+msgid "No DNS record of the requested type for “%s”"
+msgstr ""
+
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
+#, c-format
+msgid "Temporarily unable to resolve “%s”"
+msgstr ""
+
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
+#, c-format
+msgid "Error resolving “%s”"
+msgstr ""
+
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
+msgid "Malformed DNS packet"
+msgstr ""
+
+#: gio/gthreadedresolver.c:1090
+#, c-format
+msgid "Failed to parse DNS response for “%s”: "
+msgstr ""
+
+#: gio/gtlscertificate.c:438
+msgid "No PEM-encoded private key found"
+msgstr ""
+
+#: gio/gtlscertificate.c:448
+msgid "Cannot decrypt PEM-encoded private key"
+msgstr ""
+
+#: gio/gtlscertificate.c:459
+msgid "Could not parse PEM-encoded private key"
+msgstr ""
+
+#: gio/gtlscertificate.c:486
+msgid "No PEM-encoded certificate found"
+msgstr ""
+
+#: gio/gtlscertificate.c:495
+msgid "Could not parse PEM-encoded certificate"
+msgstr ""
+
+#: gio/gtlscertificate.c:758
+msgid "The current TLS backend does not support PKCS #12"
+msgstr ""
+
+#: gio/gtlscertificate.c:975
+msgid "This GTlsBackend does not support creating PKCS #11 certificates"
+msgstr ""
+
+#: gio/gtlspassword.c:104
+msgid ""
+"This is the last chance to enter the password correctly before your access "
+"is locked out."
+msgstr ""
+
+#. Translators: This is not the 'This is the last chance' string. It is
+#. * displayed when more than one attempt is allowed.
+#: gio/gtlspassword.c:108
+msgid ""
+"Several passwords entered have been incorrect, and your access will be "
+"locked out after further failures."
+msgstr ""
+
+#: gio/gtlspassword.c:110
+msgid "The password entered is incorrect."
+msgstr ""
+
+#: gio/gunixconnection.c:116
+msgid "Sending FD is not supported"
+msgstr ""
+
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
+#, c-format
+msgid "Expecting 1 control message, got %d"
+msgid_plural "Expecting 1 control message, got %d"
+msgstr[0] ""
+msgstr[1] ""
+
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
+msgid "Unexpected type of ancillary data"
+msgstr ""
+
+#: gio/gunixconnection.c:205
+#, c-format
+msgid "Expecting one fd, but got %d\n"
+msgid_plural "Expecting one fd, but got %d\n"
+msgstr[0] ""
+msgstr[1] ""
+
+#: gio/gunixconnection.c:224
+msgid "Received invalid fd"
+msgstr ""
+
+#: gio/gunixconnection.c:231
+msgid "Receiving FD is not supported"
+msgstr ""
+
+#: gio/gunixconnection.c:373
+msgid "Error sending credentials: "
+msgstr ""
+
+#: gio/gunixconnection.c:531
+#, c-format
+msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
+msgstr ""
+
+#: gio/gunixconnection.c:547
+#, c-format
+msgid "Error enabling SO_PASSCRED: %s"
+msgstr ""
+
+#: gio/gunixconnection.c:576
+msgid ""
+"Expecting to read a single byte for receiving credentials but read zero bytes"
+msgstr ""
+
+#: gio/gunixconnection.c:617
+#, c-format
+msgid "Not expecting control message, but got %d"
+msgstr ""
+
+#: gio/gunixconnection.c:642
+#, c-format
+msgid "Error while disabling SO_PASSCRED: %s"
+msgstr ""
+
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
+#, c-format
+msgid "Error reading from file descriptor: %s"
+msgstr ""
+
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
+#, c-format
+msgid "Error closing file descriptor: %s"
+msgstr ""
+
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
+msgid "Filesystem root"
+msgstr ""
+
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
+#, c-format
+msgid "Error writing to file descriptor: %s"
+msgstr ""
+
+#: gio/gunixsocketaddress.c:245
+msgid "Abstract UNIX domain socket addresses not supported on this system"
+msgstr ""
+
+#: gio/gvolume.c:436
+msgid "volume doesn’t implement eject"
+msgstr ""
+
+#. Translators: This is an error
+#. * message for volume objects that
+#. * don't implement any of eject or eject_with_operation.
+#: gio/gvolume.c:513
+msgid "volume doesn’t implement eject or eject_with_operation"
+msgstr ""
+
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr ""
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+
+#: gio/gwin32inputstream.c:184
+#, c-format
+msgid "Error reading from handle: %s"
+msgstr ""
+
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
+#, c-format
+msgid "Error closing handle: %s"
+msgstr ""
+
+#: gio/gwin32outputstream.c:171
+#, c-format
+msgid "Error writing to handle: %s"
+msgstr ""
+
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
+msgid "Not enough memory"
+msgstr "Txuṣṣ tkatut"
+
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
+#, c-format
+msgid "Internal error: %s"
+msgstr "Tuccḍa tagensant: %s"
+
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
+msgid "Need more input"
+msgstr "Yesra ugar n yinekcumen"
+
+#: gio/gzlibdecompressor.c:338
+msgid "Invalid compressed data"
+msgstr "Isefka ussiden d arameɣtuyen"
+
+#: gio/tests/gdbus-daemon.c:18
+msgid "Address to listen on"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:19
+msgid "Ignored, for compat with GTestDbus"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:20
+msgid "Print address"
+msgstr "Siggez tansa"
+
+#: gio/tests/gdbus-daemon.c:21
+msgid "Print address in shell mode"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:28
+msgid "Run a dbus service"
+msgstr ""
+
+#: gio/tests/gdbus-daemon.c:42
+msgid "Wrong args\n"
+msgstr ""
+
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "YEcceḍ ulday n '%s': %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr ""
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr ""
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr ""
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Afaylu n tuffɣa"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr ""
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Sken-d iznan n useɣti"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr ""
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr ""
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr ""
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr ""
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr ""
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr ""
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr ""
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr ""
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr ""
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr ""
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr ""
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr ""
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr ""
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr ""
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr ""
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr ""
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr ""
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr ""
+
+#: glib/gbookmarkfile.c:816
+#, c-format
+msgid "Unexpected attribute “%s” for element “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
+#, c-format
+msgid "Attribute “%s” of element “%s” not found"
+msgstr ""
+
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
+#, c-format
+msgid "Unexpected tag “%s”, tag “%s” expected"
+msgstr ""
+
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
+#, c-format
+msgid "Unexpected tag “%s” inside “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:1672
+#, c-format
+msgid "Invalid date/time ‘%s’ in bookmark file"
+msgstr ""
+
+#: glib/gbookmarkfile.c:1911
+msgid "No valid bookmark file found in data dirs"
+msgstr ""
+
+#: glib/gbookmarkfile.c:2112
+#, c-format
+msgid "A bookmark for URI “%s” already exists"
+msgstr ""
+
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
+#, c-format
+msgid "No bookmark found for URI “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:2493
+#, c-format
+msgid "No MIME type defined in the bookmark for URI “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:2578
+#, c-format
+msgid "No private flag has been defined in bookmark for URI “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:3119
+#, c-format
+msgid "No groups set in bookmark for URI “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
+#, c-format
+msgid "No application with name “%s” registered a bookmark for “%s”"
+msgstr ""
+
+#: glib/gbookmarkfile.c:3818
+#, c-format
+msgid "Failed to expand exec line “%s” with URI “%s”"
+msgstr ""
+
+#: glib/gconvert.c:379
+msgid "Unrepresentable character in conversion input"
+msgstr ""
+
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gutf8.c:1408
+msgid "Partial character sequence at end of input"
+msgstr ""
+
+#: glib/gconvert.c:677
+#, c-format
+msgid "Cannot convert fallback “%s” to codeset “%s”"
+msgstr ""
+
+#: glib/gconvert.c:849
+msgid "Embedded NUL byte in conversion input"
+msgstr ""
+
+#: glib/gconvert.c:870
+msgid "Embedded NUL byte in conversion output"
+msgstr ""
+
+#: glib/gconvert.c:1608
+#, c-format
+msgid "The URI “%s” is not an absolute URI using the “file” scheme"
+msgstr ""
+
+#: glib/gconvert.c:1638
+#, c-format
+msgid "The URI “%s” is invalid"
+msgstr "URI \"%s\" d arameɣtu"
+
+#: glib/gconvert.c:1651
+#, c-format
+msgid "The hostname of the URI “%s” is invalid"
+msgstr ""
+
+#: glib/gconvert.c:1668
+#, c-format
+msgid "The URI “%s” contains invalidly escaped characters"
+msgstr ""
+
+#: glib/gconvert.c:1742
+#, c-format
+msgid "The pathname “%s” is not an absolute path"
+msgstr ""
+
+#. Translators: this is the preferred format for expressing the date and the time
+#: glib/gdatetime.c:199
+msgctxt "GDateTime"
+msgid "%a %b %e %H:%M:%S %Y"
+msgstr "%a %b %e %H:%M:%S %Y"
+
+#. Translators: this is the preferred format for expressing the date
+#: glib/gdatetime.c:202
+msgctxt "GDateTime"
+msgid "%m/%d/%y"
+msgstr "%m/%d/%y"
+
+#. Translators: this is the preferred format for expressing the time
+#: glib/gdatetime.c:205
+msgctxt "GDateTime"
+msgid "%H:%M:%S"
+msgstr "%H:%M:%S"
+
+#. Translators: this is the preferred format for expressing 12 hour time
+#: glib/gdatetime.c:208
+msgctxt "GDateTime"
+msgid "%I:%M:%S %p"
+msgstr "%I:%M:%S %p"
+
+#. Translators: Some languages (Baltic, Slavic, Greek, and some more)
+#. * need different grammatical forms of month names depending on whether
+#. * they are standalone or in a complete date context, with the day
+#. * number.  Some other languages may prefer starting with uppercase when
+#. * they are standalone and with lowercase when they are in a complete
+#. * date context.  Here are full month names in a form appropriate when
+#. * they are used standalone.  If your system is Linux with the glibc
+#. * version 2.27 (released Feb 1, 2018) or newer or if it is from the BSD
+#. * family (which includes OS X) then you can refer to the date command
+#. * line utility and see what the command `date +%OB' produces.  Also in
+#. * the latest Linux the command `locale alt_mon' in your native locale
+#. * produces a complete list of month names almost ready to copy and
+#. * paste here.  Note that in most of the languages (western European,
+#. * non-European) there is no difference between the standalone and
+#. * complete date form.
+#.
+#: glib/gdatetime.c:247
+msgctxt "full month name"
+msgid "January"
+msgstr "Yennayer"
+
+#: glib/gdatetime.c:249
+msgctxt "full month name"
+msgid "February"
+msgstr "Fuṛar"
+
+#: glib/gdatetime.c:251
+msgctxt "full month name"
+msgid "March"
+msgstr "Meɣres"
+
+#: glib/gdatetime.c:253
+msgctxt "full month name"
+msgid "April"
+msgstr "Yebrir"
+
+#: glib/gdatetime.c:255
+msgctxt "full month name"
+msgid "May"
+msgstr "Mayyu"
+
+#: glib/gdatetime.c:257
+msgctxt "full month name"
+msgid "June"
+msgstr "Yunyu"
+
+#: glib/gdatetime.c:259
+msgctxt "full month name"
+msgid "July"
+msgstr "Yulyu"
+
+#: glib/gdatetime.c:261
+msgctxt "full month name"
+msgid "August"
+msgstr "Ɣuct"
+
+#: glib/gdatetime.c:263
+msgctxt "full month name"
+msgid "September"
+msgstr "Cṭember"
+
+#: glib/gdatetime.c:265
+msgctxt "full month name"
+msgid "October"
+msgstr "Tuber"
+
+#: glib/gdatetime.c:267
+msgctxt "full month name"
+msgid "November"
+msgstr "Wamber"
+
+#: glib/gdatetime.c:269
+msgctxt "full month name"
+msgid "December"
+msgstr "Duǧember"
+
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a complete
+#. * date context, with the day number.  Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context.  However, as these names are abbreviated
+#. * the grammatical difference is visible probably only in Belarusian
+#. * and Russian.  In other languages there is no difference between
+#. * the standalone and complete date form when they are abbreviated.
+#. * If your system is Linux with the glibc version 2.27 (released
+#. * Feb 1, 2018) or newer then you can refer to the date command line
+#. * utility and see what the command `date +%Ob' produces.  Also in
+#. * the latest Linux the command `locale ab_alt_mon' in your native
+#. * locale produces a complete list of month names almost ready to copy
+#. * and paste here.  Note that this feature is not yet supported by any
+#. * other platform.  Here are abbreviated month names in a form
+#. * appropriate when they are used standalone.
+#.
+#: glib/gdatetime.c:301
+msgctxt "abbreviated month name"
+msgid "Jan"
+msgstr "Yen"
+
+#: glib/gdatetime.c:303
+msgctxt "abbreviated month name"
+msgid "Feb"
+msgstr "Fuṛ"
+
+#: glib/gdatetime.c:305
+msgctxt "abbreviated month name"
+msgid "Mar"
+msgstr "Meɣ"
+
+#: glib/gdatetime.c:307
+msgctxt "abbreviated month name"
+msgid "Apr"
+msgstr "Yeb"
+
+#: glib/gdatetime.c:309
+msgctxt "abbreviated month name"
+msgid "May"
+msgstr "May"
+
+#: glib/gdatetime.c:311
+msgctxt "abbreviated month name"
+msgid "Jun"
+msgstr "Yun"
+
+#: glib/gdatetime.c:313
+msgctxt "abbreviated month name"
+msgid "Jul"
+msgstr "Yul"
+
+#: glib/gdatetime.c:315
+msgctxt "abbreviated month name"
+msgid "Aug"
+msgstr "Ɣuc"
+
+#: glib/gdatetime.c:317
+msgctxt "abbreviated month name"
+msgid "Sep"
+msgstr "Cte"
+
+#: glib/gdatetime.c:319
+msgctxt "abbreviated month name"
+msgid "Oct"
+msgstr "Tub"
+
+#: glib/gdatetime.c:321
+msgctxt "abbreviated month name"
+msgid "Nov"
+msgstr "Wam"
+
+#: glib/gdatetime.c:323
+msgctxt "abbreviated month name"
+msgid "Dec"
+msgstr "Duǧ"
+
+#: glib/gdatetime.c:338
+msgctxt "full weekday name"
+msgid "Monday"
+msgstr "Arim"
+
+#: glib/gdatetime.c:340
+msgctxt "full weekday name"
+msgid "Tuesday"
+msgstr "Aram"
+
+#: glib/gdatetime.c:342
+msgctxt "full weekday name"
+msgid "Wednesday"
+msgstr "Ahad"
+
+#: glib/gdatetime.c:344
+msgctxt "full weekday name"
+msgid "Thursday"
+msgstr "Amhad"
+
+#: glib/gdatetime.c:346
+msgctxt "full weekday name"
+msgid "Friday"
+msgstr "Sem"
+
+#: glib/gdatetime.c:348
+msgctxt "full weekday name"
+msgid "Saturday"
+msgstr "Sed"
+
+#: glib/gdatetime.c:350
+msgctxt "full weekday name"
+msgid "Sunday"
+msgstr "Acer"
+
+#: glib/gdatetime.c:365
+msgctxt "abbreviated weekday name"
+msgid "Mon"
+msgstr "Ari"
+
+#: glib/gdatetime.c:367
+msgctxt "abbreviated weekday name"
+msgid "Tue"
+msgstr "Ara"
+
+#: glib/gdatetime.c:369
+msgctxt "abbreviated weekday name"
+msgid "Wed"
+msgstr "Ah"
+
+#: glib/gdatetime.c:371
+msgctxt "abbreviated weekday name"
+msgid "Thu"
+msgstr "Amh"
+
+#: glib/gdatetime.c:373
+msgctxt "abbreviated weekday name"
+msgid "Fri"
+msgstr "Sem"
+
+#: glib/gdatetime.c:375
+msgctxt "abbreviated weekday name"
+msgid "Sat"
+msgstr "Sed"
+
+#: glib/gdatetime.c:377
+msgctxt "abbreviated weekday name"
+msgid "Sun"
+msgstr "Ace"
+
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a full
+#. * date context, with the day number.  Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context.  Here are full month names in a form
+#. * appropriate when they are used in a full date context, with the
+#. * day number.  If your system is Linux with the glibc version 2.27
+#. * (released Feb 1, 2018) or newer or if it is from the BSD family
+#. * (which includes OS X) then you can refer to the date command line
+#. * utility and see what the command `date +%B' produces.  Also in
+#. * the latest Linux the command `locale mon' in your native locale
+#. * produces a complete list of month names almost ready to copy and
+#. * paste here.  In older Linux systems due to a bug the result is
+#. * incorrect in some languages.  Note that in most of the languages
+#. * (western European, non-European) there is no difference between the
+#. * standalone and complete date form.
+#.
+#: glib/gdatetime.c:441
+msgctxt "full month name with day"
+msgid "January"
+msgstr "Yennayer"
+
+#: glib/gdatetime.c:443
+msgctxt "full month name with day"
+msgid "February"
+msgstr "Fuṛar"
+
+#: glib/gdatetime.c:445
+msgctxt "full month name with day"
+msgid "March"
+msgstr "Meɣres"
+
+#: glib/gdatetime.c:447
+msgctxt "full month name with day"
+msgid "April"
+msgstr "Yebrir"
+
+#: glib/gdatetime.c:449
+msgctxt "full month name with day"
+msgid "May"
+msgstr "Mayyu"
+
+#: glib/gdatetime.c:451
+msgctxt "full month name with day"
+msgid "June"
+msgstr "Yunyu"
+
+#: glib/gdatetime.c:453
+msgctxt "full month name with day"
+msgid "July"
+msgstr "Yulyu"
+
+#: glib/gdatetime.c:455
+msgctxt "full month name with day"
+msgid "August"
+msgstr "Ɣuct"
+
+#: glib/gdatetime.c:457
+msgctxt "full month name with day"
+msgid "September"
+msgstr "Cṭember"
+
+#: glib/gdatetime.c:459
+msgctxt "full month name with day"
+msgid "October"
+msgstr "Tuber"
+
+#: glib/gdatetime.c:461
+msgctxt "full month name with day"
+msgid "November"
+msgstr "Wamber"
+
+#: glib/gdatetime.c:463
+msgctxt "full month name with day"
+msgid "December"
+msgstr "Duǧember"
+
+#. Translators: Some languages need different grammatical forms of
+#. * month names depending on whether they are standalone or in a full
+#. * date context, with the day number.  Some may prefer starting with
+#. * uppercase when they are standalone and with lowercase when they are
+#. * in a full date context.  Here are abbreviated month names in a form
+#. * appropriate when they are used in a full date context, with the
+#. * day number.  However, as these names are abbreviated the grammatical
+#. * difference is visible probably only in Belarusian and Russian.
+#. * In other languages there is no difference between the standalone
+#. * and complete date form when they are abbreviated.  If your system
+#. * is Linux with the glibc version 2.27 (released Feb 1, 2018) or newer
+#. * then you can refer to the date command line utility and see what the
+#. * command `date +%b' produces.  Also in the latest Linux the command
+#. * `locale abmon' in your native locale produces a complete list of
+#. * month names almost ready to copy and paste here.  In other systems
+#. * due to a bug the result is incorrect in some languages.
+#.
+#: glib/gdatetime.c:528
+msgctxt "abbreviated month name with day"
+msgid "Jan"
+msgstr "Yen"
+
+#: glib/gdatetime.c:530
+msgctxt "abbreviated month name with day"
+msgid "Feb"
+msgstr "Fuṛ"
+
+#: glib/gdatetime.c:532
+msgctxt "abbreviated month name with day"
+msgid "Mar"
+msgstr "Meɣ"
+
+#: glib/gdatetime.c:534
+msgctxt "abbreviated month name with day"
+msgid "Apr"
+msgstr "Yeb"
+
+#: glib/gdatetime.c:536
+msgctxt "abbreviated month name with day"
+msgid "May"
+msgstr "May"
+
+#: glib/gdatetime.c:538
+msgctxt "abbreviated month name with day"
+msgid "Jun"
+msgstr "Yun"
+
+#: glib/gdatetime.c:540
+msgctxt "abbreviated month name with day"
+msgid "Jul"
+msgstr "Yul"
+
+#: glib/gdatetime.c:542
+msgctxt "abbreviated month name with day"
+msgid "Aug"
+msgstr "Ɣuc"
+
+#: glib/gdatetime.c:544
+msgctxt "abbreviated month name with day"
+msgid "Sep"
+msgstr "Cte"
+
+#: glib/gdatetime.c:546
+msgctxt "abbreviated month name with day"
+msgid "Oct"
+msgstr "Tub"
+
+#: glib/gdatetime.c:548
+msgctxt "abbreviated month name with day"
+msgid "Nov"
+msgstr "Wam"
+
+#: glib/gdatetime.c:550
+msgctxt "abbreviated month name with day"
+msgid "Dec"
+msgstr "Duǧ"
+
+#. Translators: 'before midday' indicator
+#: glib/gdatetime.c:592
+msgctxt "GDateTime"
+msgid "AM"
+msgstr "FT"
+
+#. Translators: 'after midday' indicator
+#: glib/gdatetime.c:595
+msgctxt "GDateTime"
+msgid "PM"
+msgstr "MD"
+
+#: glib/gdir.c:168
+#, c-format
+msgid "Error opening directory “%s”: %s"
+msgstr ""
+
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
+#, c-format
+msgid "Could not allocate %s to read file “%s”"
+msgstr ""
+
+#: glib/gfileutils.c:738
+#, c-format
+msgid "Error reading file “%s”: %s"
+msgstr "Tuccḍa deg tvuṛi n ufaylu \"%s\": %s"
+
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
+#, c-format
+msgid "File “%s” is too large"
+msgstr "Afaylu \"%s\" meqqer aṭas"
+
+#: glib/gfileutils.c:855
+#, c-format
+msgid "Failed to read from file “%s”: %s"
+msgstr "Tecceḍ tɣuri seg ufaylu \"%s\": %s"
+
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
+#, c-format
+msgid "Failed to open file “%s”: %s"
+msgstr "Yecceḍ ulday n ufaylu \"%s\": %s"
+
+#: glib/gfileutils.c:918
+#, c-format
+msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:949
+#, c-format
+msgid "Failed to open file “%s”: fdopen() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1050
+#, c-format
+msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1194
+#, c-format
+msgid "Failed to write file “%s”: write() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1215
+#, c-format
+msgid "Failed to write file “%s”: fsync() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
+#, c-format
+msgid "Failed to create file “%s”: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1421
+#, c-format
+msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
+msgstr ""
+
+#: glib/gfileutils.c:1758
+#, c-format
+msgid "Template “%s” invalid, should not contain a “%s”"
+msgstr ""
+
+#: glib/gfileutils.c:1771
+#, c-format
+msgid "Template “%s” doesn’t contain XXXXXX"
+msgstr ""
+
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
+#, c-format
+msgid "Failed to read the symbolic link “%s”: %s"
+msgstr ""
+
+#: glib/giochannel.c:1397
+#, c-format
+msgid "Could not open converter from “%s” to “%s”: %s"
+msgstr ""
+
+#: glib/giochannel.c:1750
+msgid "Can’t do a raw read in g_io_channel_read_line_string"
+msgstr ""
+
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
+msgid "Leftover unconverted data in read buffer"
+msgstr ""
+
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
+msgid "Channel terminates in a partial character"
+msgstr ""
+
+#: glib/giochannel.c:1941
+msgid "Can’t do a raw read in g_io_channel_read_to_end"
+msgstr ""
+
+#: glib/gkeyfile.c:791
+msgid "Valid key file could not be found in search dirs"
+msgstr ""
+
+#: glib/gkeyfile.c:828
+msgid "Not a regular file"
+msgstr "Mačči d afaylu i yezgan"
+
+#: glib/gkeyfile.c:1286
+#, c-format
+msgid ""
+"Key file contains line “%s” which is not a key-value pair, group, or comment"
+msgstr ""
+
+#: glib/gkeyfile.c:1343
+#, c-format
+msgid "Invalid group name: %s"
+msgstr ""
+
+#: glib/gkeyfile.c:1367
+msgid "Key file does not start with a group"
+msgstr ""
+
+#: glib/gkeyfile.c:1391
+#, c-format
+msgid "Invalid key name: %.*s"
+msgstr ""
+
+#: glib/gkeyfile.c:1419
+#, c-format
+msgid "Key file contains unsupported encoding “%s”"
+msgstr ""
+
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
+#, c-format
+msgid "Key file does not have group “%s”"
+msgstr ""
+
+#: glib/gkeyfile.c:1795
+#, c-format
+msgid "Key file does not have key “%s” in group “%s”"
+msgstr ""
+
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
+#, c-format
+msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
+msgstr ""
+
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
+#, c-format
+msgid ""
+"Key file contains key “%s” which has a value that cannot be interpreted."
+msgstr ""
+
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
+#, c-format
+msgid ""
+"Key file contains key “%s” in group “%s” which has a value that cannot be "
+"interpreted."
+msgstr ""
+
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
+#, c-format
+msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
+msgstr ""
+
+#: glib/gkeyfile.c:4345
+msgid "Key file contains escape character at end of line"
+msgstr ""
+
+#: glib/gkeyfile.c:4367
+#, c-format
+msgid "Key file contains invalid escape sequence “%s”"
+msgstr ""
+
+#: glib/gkeyfile.c:4519
+#, c-format
+msgid "Value “%s” cannot be interpreted as a number."
+msgstr ""
+
+#: glib/gkeyfile.c:4533
+#, c-format
+msgid "Integer value “%s” out of range"
+msgstr ""
+
+#: glib/gkeyfile.c:4566
+#, c-format
+msgid "Value “%s” cannot be interpreted as a float number."
+msgstr ""
+
+#: glib/gkeyfile.c:4605
+#, c-format
+msgid "Value “%s” cannot be interpreted as a boolean."
+msgstr ""
+
+#: glib/gmappedfile.c:135
+#, c-format
+msgid "Failed to get attributes of file “%s%s%s%s”: fstat() failed: %s"
+msgstr ""
+
+#: glib/gmappedfile.c:201
+#, c-format
+msgid "Failed to map %s%s%s%s: mmap() failed: %s"
+msgstr ""
+
+#: glib/gmappedfile.c:268
+#, c-format
+msgid "Failed to open file “%s”: open() failed: %s"
+msgstr ""
+
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
+#, c-format
+msgid "Error on line %d char %d: "
+msgstr ""
+
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
+#, c-format
+msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
+msgstr ""
+
+#: glib/gmarkup.c:419
+#, c-format
+msgid "“%s” is not a valid name"
+msgstr ""
+
+#: glib/gmarkup.c:435
+#, c-format
+msgid "“%s” is not a valid name: “%c”"
+msgstr ""
+
+#: glib/gmarkup.c:559
+#, c-format
+msgid "Error on line %d: %s"
+msgstr ""
+
+#: glib/gmarkup.c:636
+#, c-format
+msgid ""
+"Failed to parse “%-.*s”, which should have been a digit inside a character "
+"reference (&#234; for example) — perhaps the digit is too large"
+msgstr ""
+
+#: glib/gmarkup.c:648
+msgid ""
+"Character reference did not end with a semicolon; most likely you used an "
+"ampersand character without intending to start an entity — escape ampersand "
+"as &amp;"
+msgstr ""
+
+#: glib/gmarkup.c:674
+#, c-format
+msgid "Character reference “%-.*s” does not encode a permitted character"
+msgstr ""
+
+#: glib/gmarkup.c:712
+msgid ""
+"Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
+msgstr ""
+
+#: glib/gmarkup.c:720
+#, c-format
+msgid "Entity name “%-.*s” is not known"
+msgstr ""
+
+#: glib/gmarkup.c:725
+msgid ""
+"Entity did not end with a semicolon; most likely you used an ampersand "
+"character without intending to start an entity — escape ampersand as &amp;"
+msgstr ""
+
+#: glib/gmarkup.c:1139
+msgid "Document must begin with an element (e.g. <book>)"
+msgstr ""
+
+#: glib/gmarkup.c:1179
+#, c-format
+msgid ""
+"“%s” is not a valid character following a “<” character; it may not begin an "
+"element name"
+msgstr ""
+
+#: glib/gmarkup.c:1222
+#, c-format
+msgid ""
+"Odd character “%s”, expected a “>” character to end the empty-element tag "
+"“%s”"
+msgstr ""
+
+#: glib/gmarkup.c:1292
+#, c-format
+msgid "Too many attributes in element “%s”"
+msgstr ""
+
+#: glib/gmarkup.c:1312
+#, c-format
+msgid ""
+"Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
+msgstr ""
+
+#: glib/gmarkup.c:1354
+#, c-format
+msgid ""
+"Odd character “%s”, expected a “>” or “/” character to end the start tag of "
+"element “%s”, or optionally an attribute; perhaps you used an invalid "
+"character in an attribute name"
+msgstr ""
+
+#: glib/gmarkup.c:1399
+#, c-format
+msgid ""
+"Odd character “%s”, expected an open quote mark after the equals sign when "
+"giving value for attribute “%s” of element “%s”"
+msgstr ""
+
+#: glib/gmarkup.c:1533
+#, c-format
+msgid ""
+"“%s” is not a valid character following the characters “</”; “%s” may not "
+"begin an element name"
+msgstr ""
+
+#: glib/gmarkup.c:1571
+#, c-format
+msgid ""
+"“%s” is not a valid character following the close element name “%s”; the "
+"allowed character is “>”"
+msgstr ""
+
+#: glib/gmarkup.c:1583
+#, c-format
+msgid "Element “%s” was closed, no element is currently open"
+msgstr ""
+
+#: glib/gmarkup.c:1592
+#, c-format
+msgid "Element “%s” was closed, but the currently open element is “%s”"
+msgstr ""
+
+#: glib/gmarkup.c:1745
+msgid "Document was empty or contained only whitespace"
+msgstr ""
+
+#: glib/gmarkup.c:1759
+msgid "Document ended unexpectedly just after an open angle bracket “<”"
+msgstr ""
+
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
+#, c-format
+msgid ""
+"Document ended unexpectedly with elements still open — “%s” was the last "
+"element opened"
+msgstr ""
+
+#: glib/gmarkup.c:1775
+#, c-format
+msgid ""
+"Document ended unexpectedly, expected to see a close angle bracket ending "
+"the tag <%s/>"
+msgstr ""
+
+#: glib/gmarkup.c:1781
+msgid "Document ended unexpectedly inside an element name"
+msgstr ""
+
+#: glib/gmarkup.c:1787
+msgid "Document ended unexpectedly inside an attribute name"
+msgstr ""
+
+#: glib/gmarkup.c:1792
+msgid "Document ended unexpectedly inside an element-opening tag."
+msgstr ""
+
+#: glib/gmarkup.c:1798
+msgid ""
+"Document ended unexpectedly after the equals sign following an attribute "
+"name; no attribute value"
+msgstr ""
+
+#: glib/gmarkup.c:1805
+msgid "Document ended unexpectedly while inside an attribute value"
+msgstr ""
+
+#: glib/gmarkup.c:1822
+#, c-format
+msgid "Document ended unexpectedly inside the close tag for element “%s”"
+msgstr ""
+
+#: glib/gmarkup.c:1826
+msgid ""
+"Document ended unexpectedly inside the close tag for an unopened element"
+msgstr ""
+
+#: glib/gmarkup.c:1832
+msgid "Document ended unexpectedly inside a comment or processing instruction"
+msgstr ""
+
+#: glib/goption.c:716
+msgid "[OPTION…]"
+msgstr ""
+
+#: glib/goption.c:832
+msgid "Help Options:"
+msgstr "Tixtiṛiyin n tallalt:"
+
+#: glib/goption.c:833
+msgid "Show help options"
+msgstr "Sken tinefrunin n talallt"
+
+#: glib/goption.c:839
+msgid "Show all help options"
+msgstr "Sken akk tixtiṛiyin n tallalt"
+
+#: glib/goption.c:902
+msgid "Application Options:"
+msgstr "Tixtiṛiyin n usnas:"
+
+#: glib/goption.c:904
+msgid "Options:"
+msgstr "Tixtiṛiyin:"
+
+#: glib/goption.c:968 glib/goption.c:1038
+#, c-format
+msgid "Cannot parse integer value “%s” for %s"
+msgstr ""
+
+#: glib/goption.c:978 glib/goption.c:1046
+#, c-format
+msgid "Integer value “%s” for %s out of range"
+msgstr ""
+
+#: glib/goption.c:1003
+#, c-format
+msgid "Cannot parse double value “%s” for %s"
+msgstr ""
+
+#: glib/goption.c:1011
+#, c-format
+msgid "Double value “%s” for %s out of range"
+msgstr ""
+
+#: glib/goption.c:1303 glib/goption.c:1382
+#, c-format
+msgid "Error parsing option %s"
+msgstr ""
+
+#: glib/goption.c:1404 glib/goption.c:1517
+#, c-format
+msgid "Missing argument for %s"
+msgstr ""
+
+#: glib/goption.c:2024
+#, c-format
+msgid "Unknown option %s"
+msgstr "Taxtiṛt tarussint %s"
+
+#: glib/gregex.c:486
+msgid "corrupted object"
+msgstr ""
+
+#: glib/gregex.c:488
+msgid "out of memory"
+msgstr ""
+
+#: glib/gregex.c:503
+msgid "internal error"
+msgstr ""
+
+#: glib/gregex.c:505
+msgid "the pattern contains items not supported for partial matching"
+msgstr ""
+
+#: glib/gregex.c:507
+msgid "back references as conditions are not supported for partial matching"
+msgstr ""
+
+#: glib/gregex.c:513
+msgid "recursion limit reached"
+msgstr ""
+
+#: glib/gregex.c:515
+msgid "bad offset"
+msgstr ""
+
+#: glib/gregex.c:517
+msgid "recursion loop"
+msgstr ""
+
+#. should not happen in GRegex since we check modes before each match
+#: glib/gregex.c:520
+msgid "matching mode is requested that was not compiled for JIT"
+msgstr ""
+
+#: glib/gregex.c:541 glib/gregex.c:1869
+msgid "unknown error"
+msgstr "tuccḍa tarussint"
+
+#: glib/gregex.c:562
+msgid "\\ at end of pattern"
+msgstr ""
+
+#: glib/gregex.c:566
+msgid "\\c at end of pattern"
+msgstr ""
+
+#: glib/gregex.c:571
+msgid "unrecognized character following \\"
+msgstr ""
+
+#: glib/gregex.c:575
+msgid "numbers out of order in {} quantifier"
+msgstr ""
+
+#: glib/gregex.c:579
+msgid "number too big in {} quantifier"
+msgstr ""
+
+#: glib/gregex.c:583
+msgid "missing terminating ] for character class"
+msgstr ""
+
+#: glib/gregex.c:587
+msgid "invalid escape sequence in character class"
+msgstr ""
+
+#: glib/gregex.c:591
+msgid "range out of order in character class"
+msgstr ""
+
+#: glib/gregex.c:596
+msgid "nothing to repeat"
+msgstr ""
+
+#: glib/gregex.c:600
+msgid "unrecognized character after (? or (?-"
+msgstr ""
+
+#: glib/gregex.c:604
+msgid "POSIX named classes are supported only within a class"
+msgstr ""
+
+#: glib/gregex.c:608
+msgid "POSIX collating elements are not supported"
+msgstr ""
+
+#: glib/gregex.c:614
+msgid "missing terminating )"
+msgstr ""
+
+#: glib/gregex.c:618
+msgid "reference to non-existent subpattern"
+msgstr ""
+
+#: glib/gregex.c:622
+msgid "missing ) after comment"
+msgstr ""
+
+#: glib/gregex.c:626
+msgid "regular expression is too large"
+msgstr ""
+
+#: glib/gregex.c:630
+msgid "malformed number or name after (?("
+msgstr ""
+
+#: glib/gregex.c:634
+msgid "lookbehind assertion is not fixed length"
+msgstr ""
+
+#: glib/gregex.c:638
+msgid "conditional group contains more than two branches"
+msgstr ""
+
+#: glib/gregex.c:642
+msgid "assertion expected after (?("
+msgstr ""
+
+#: glib/gregex.c:646
+msgid "a numbered reference must not be zero"
+msgstr ""
+
+#: glib/gregex.c:650
+msgid "unknown POSIX class name"
+msgstr ""
+
+#: glib/gregex.c:655
+msgid "character value in \\x{...} sequence is too large"
+msgstr ""
+
+#: glib/gregex.c:659
+msgid "\\C not allowed in lookbehind assertion"
+msgstr ""
+
+#: glib/gregex.c:663
+msgid "missing terminator in subpattern name"
+msgstr ""
+
+#: glib/gregex.c:667
+msgid "two named subpatterns have the same name"
+msgstr ""
+
+#: glib/gregex.c:671
+msgid "malformed \\P or \\p sequence"
+msgstr ""
+
+#: glib/gregex.c:675
+msgid "unknown property name after \\P or \\p"
+msgstr ""
+
+#: glib/gregex.c:679
+msgid "subpattern name is too long (maximum 32 characters)"
+msgstr ""
+
+#: glib/gregex.c:683
+msgid "too many named subpatterns (maximum 10,000)"
+msgstr ""
+
+#: glib/gregex.c:687
+msgid "octal value is greater than \\377"
+msgstr ""
+
+#: glib/gregex.c:691
+msgid "DEFINE group contains more than one branch"
+msgstr ""
+
+#: glib/gregex.c:695
+msgid "inconsistent NEWLINE options"
+msgstr ""
+
+#: glib/gregex.c:699
+msgid ""
+"\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
+"or by a plain number"
+msgstr ""
+
+#: glib/gregex.c:704
+msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
+msgstr ""
+
+#: glib/gregex.c:708
+msgid "(*VERB) not recognized"
+msgstr ""
+
+#: glib/gregex.c:712
+msgid "number is too big"
+msgstr ""
+
+#: glib/gregex.c:716
+msgid "missing subpattern name after (?&"
+msgstr ""
+
+#: glib/gregex.c:720
+msgid "different names for subpatterns of the same number are not allowed"
+msgstr ""
+
+#: glib/gregex.c:724
+msgid "(*MARK) must have an argument"
+msgstr ""
+
+#: glib/gregex.c:728
+msgid "\\c must be followed by an ASCII character"
+msgstr ""
+
+#: glib/gregex.c:732
+msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
+msgstr ""
+
+#: glib/gregex.c:736
+msgid "\\N is not supported in a class"
+msgstr ""
+
+#: glib/gregex.c:740
+msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
+msgstr ""
+
+#: glib/gregex.c:744 glib/gregex.c:880
+msgid "code overflow"
+msgstr ""
+
+#: glib/gregex.c:748
+msgid "unrecognized character after (?P"
+msgstr ""
+
+#: glib/gregex.c:752
+msgid "overran compiling workspace"
+msgstr ""
+
+#: glib/gregex.c:756
+msgid "previously-checked referenced subpattern not found"
+msgstr ""
+
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
+#, c-format
+msgid "Error while matching regular expression %s: %s"
+msgstr ""
+
+#: glib/gregex.c:1753
+msgid "PCRE library is compiled without UTF8 support"
+msgstr ""
+
+#: glib/gregex.c:1761
+msgid "PCRE library is compiled with incompatible options"
+msgstr ""
+
+#: glib/gregex.c:1878
+#, c-format
+msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
+msgstr ""
+
+#: glib/gregex.c:2918
+msgid "hexadecimal digit or “}” expected"
+msgstr "azwil asḍisamrawan neɣ “}” yetturaǧu"
+
+#: glib/gregex.c:2934
+msgid "hexadecimal digit expected"
+msgstr "azwil asḍisamrawan neɣ yetturaǧu"
+
+#: glib/gregex.c:2974
+msgid "missing “<” in symbolic reference"
+msgstr "ixuṣṣ “<” deg temselɣut tazamalt"
+
+#: glib/gregex.c:2983
+msgid "unfinished symbolic reference"
+msgstr "tamselɣut tazamalt tarummidt"
+
+#: glib/gregex.c:2990
+msgid "zero-length symbolic reference"
+msgstr "tamselɣut tazamalt m teɣzi tilemt"
+
+#: glib/gregex.c:3001
+msgid "digit expected"
+msgstr "azwil yetturaǧun"
+
+#: glib/gregex.c:3019
+msgid "illegal symbolic reference"
+msgstr "tamselɣut tazamalt arulgin"
+
+#: glib/gregex.c:3082
+msgid "stray final “\\”"
+msgstr "tamaneft taneggarut “\\”"
+
+#: glib/gregex.c:3086
+msgid "unknown escape sequence"
+msgstr "tagzemt n usenser tarussint"
+
+#: glib/gregex.c:3096
+#, c-format
+msgid "Error while parsing replacement text “%s” at char %lu: %s"
+msgstr "Tuccḍa lawan n uslaḍn n usemsesi n uḍris \"%s\" deg usekkil %lu: %s"
+
+#: glib/gshell.c:84
+msgid "Quoted text doesn’t begin with a quotation mark"
+msgstr ""
+
+#: glib/gshell.c:174
+msgid "Unmatched quotation mark in command line or other shell-quoted text"
+msgstr ""
+
+#: glib/gshell.c:580
+#, c-format
+msgid "Text ended just after a “\\” character. (The text was “%s”)"
+msgstr ""
+
+#: glib/gshell.c:587
+#, c-format
+msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
+msgstr ""
+
+#: glib/gshell.c:599
+msgid "Text was empty (or contained only whitespace)"
+msgstr ""
+
+#: glib/gspawn.c:242
+#, c-format
+msgid "Failed to read data from child process (%s)"
+msgstr ""
+
+#: glib/gspawn.c:395
+#, c-format
+msgid "Unexpected error in reading data from a child process (%s)"
+msgstr ""
+
+#: glib/gspawn.c:475
+#, c-format
+msgid "Unexpected error in waitpid() (%s)"
+msgstr ""
+
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
+#, c-format
+msgid "Child process exited with code %ld"
+msgstr ""
+
+#: glib/gspawn.c:1105
+#, c-format
+msgid "Child process killed by signal %ld"
+msgstr ""
+
+#: glib/gspawn.c:1112
+#, c-format
+msgid "Child process stopped by signal %ld"
+msgstr ""
+
+#: glib/gspawn.c:1119
+#, c-format
+msgid "Child process exited abnormally"
+msgstr ""
+
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#, c-format
+msgid "Failed to read from child pipe (%s)"
+msgstr "Tecceḍ tɣuri seg tegmamt taqrurt (%s)"
+
+#: glib/gspawn.c:2001
+#, c-format
+msgid "Failed to spawn child process “%s” (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2125
+#, c-format
+msgid "Failed to fork (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
+#, c-format
+msgid "Failed to change to directory “%s” (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2296
+#, c-format
+msgid "Failed to execute child process “%s” (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2306
+#, c-format
+msgid "Failed to open file to remap file descriptor (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2314
+#, c-format
+msgid "Failed to duplicate file descriptor for child process (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2323
+#, c-format
+msgid "Failed to fork child process (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2331
+#, c-format
+msgid "Failed to close file descriptor for child process (%s)"
+msgstr ""
+
+#: glib/gspawn.c:2339
+#, c-format
+msgid "Unknown error executing child process “%s”"
+msgstr ""
+
+#: glib/gspawn.c:2363
+#, c-format
+msgid "Failed to read enough data from child pid pipe (%s)"
+msgstr ""
+
+#: glib/gspawn-private.h:134
+#, c-format
+msgid "Invalid source FDs argument"
+msgstr ""
+
+#: glib/gspawn-win32.c:416
+msgid "Failed to read data from child process"
+msgstr ""
+
+#: glib/gspawn-win32.c:509 glib/gspawn-win32.c:514 glib/gspawn-win32.c:640
+#, c-format
+msgid "Failed to execute child process (%s)"
+msgstr ""
+
+#: glib/gspawn-win32.c:519
+#, c-format
+msgid "Failed to dup() in child process (%s)"
+msgstr ""
+
+#: glib/gspawn-win32.c:590
+#, c-format
+msgid "Invalid program name: %s"
+msgstr ""
+
+#: glib/gspawn-win32.c:600 glib/gspawn-win32.c:940
+#, c-format
+msgid "Invalid string in argument vector at %d: %s"
+msgstr ""
+
+#: glib/gspawn-win32.c:611 glib/gspawn-win32.c:956
+#, c-format
+msgid "Invalid string in environment: %s"
+msgstr ""
+
+#: glib/gspawn-win32.c:936
+#, c-format
+msgid "Invalid working directory: %s"
+msgstr ""
+
+#: glib/gspawn-win32.c:1001
+#, c-format
+msgid "Failed to execute helper program (%s)"
+msgstr ""
+
+#: glib/gspawn-win32.c:1230
+msgid ""
+"Unexpected error in g_io_channel_win32_poll() reading data from a child "
+"process"
+msgstr ""
+
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
+msgid "Empty string is not a number"
+msgstr ""
+
+#: glib/gstrfuncs.c:3363
+#, c-format
+msgid "“%s” is not a signed number"
+msgstr ""
+
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
+#, c-format
+msgid "Number “%s” is out of bounds [%s, %s]"
+msgstr ""
+
+#: glib/gstrfuncs.c:3467
+#, c-format
+msgid "“%s” is not an unsigned number"
+msgstr ""
+
+#: glib/guri.c:309
+#, no-c-format
+msgid "Invalid %-encoding in URI"
+msgstr ""
+
+#: glib/guri.c:326
+msgid "Illegal character in URI"
+msgstr ""
+
+#: glib/guri.c:360
+msgid "Non-UTF-8 characters in URI"
+msgstr ""
+
+#: glib/guri.c:540
+#, c-format
+msgid "Invalid IPv6 address ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:595
+#, c-format
+msgid "Illegal encoded IP address ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:607
+#, c-format
+msgid "Illegal internationalized hostname ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:639 glib/guri.c:651
+#, c-format
+msgid "Could not parse port ‘%.*s’ in URI"
+msgstr ""
+
+#: glib/guri.c:658
+#, c-format
+msgid "Port ‘%.*s’ in URI is out of range"
+msgstr ""
+
+#: glib/guri.c:1221 glib/guri.c:1285
+#, c-format
+msgid "URI ‘%s’ is not an absolute URI"
+msgstr ""
+
+#: glib/guri.c:1227
+#, c-format
+msgid "URI ‘%s’ has no host component"
+msgstr ""
+
+#: glib/guri.c:1457
+msgid "URI is not absolute, and no base URI was provided"
+msgstr ""
+
+#: glib/guri.c:2243
+msgid "Missing ‘=’ and parameter value"
+msgstr ""
+
+#: glib/gutf8.c:900
+msgid "Failed to allocate memory"
+msgstr ""
+
+#: glib/gutf8.c:1033
+msgid "Character out of range for UTF-8"
+msgstr ""
+
+#: glib/gutf8.c:1135 glib/gutf8.c:1144 glib/gutf8.c:1274 glib/gutf8.c:1283
+#: glib/gutf8.c:1422 glib/gutf8.c:1519
+msgid "Invalid sequence in conversion input"
+msgstr ""
+
+#: glib/gutf8.c:1433 glib/gutf8.c:1530
+msgid "Character out of range for UTF-16"
+msgstr ""
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kB"
+#: glib/gutils.c:2966
+msgid "kB"
+msgstr "kAṬ"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 MB"
+#: glib/gutils.c:2968
+msgid "MB"
+msgstr "MAṬ"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 GB"
+#: glib/gutils.c:2970
+msgid "GB"
+msgstr "GAṬ"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 TB"
+#: glib/gutils.c:2972
+msgid "TB"
+msgstr "TAṬ"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 PB"
+#: glib/gutils.c:2974
+msgid "PB"
+msgstr "PB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 EB"
+#: glib/gutils.c:2976
+msgid "EB"
+msgstr "EB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 KiB"
+#: glib/gutils.c:2980
+msgid "KiB"
+msgstr "KiB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 MiB"
+#: glib/gutils.c:2982
+msgid "MiB"
+msgstr "MiB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 GiB"
+#: glib/gutils.c:2984
+msgid "GiB"
+msgstr "GiB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 TiB"
+#: glib/gutils.c:2986
+msgid "TiB"
+msgstr "TiB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 PiB"
+#: glib/gutils.c:2988
+msgid "PiB"
+msgstr "PiB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 EiB"
+#: glib/gutils.c:2990
+msgid "EiB"
+msgstr "EiB"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
+#: glib/gutils.c:2994
+msgid "kbit"
+msgstr "kbit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
+#: glib/gutils.c:2996
+msgid "Mbit"
+msgstr "Mbit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
+#: glib/gutils.c:2998
+msgid "Gbit"
+msgstr "Gbit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
+#: glib/gutils.c:3000
+msgid "Tbit"
+msgstr "Tbit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
+#: glib/gutils.c:3002
+msgid "Pbit"
+msgstr "Pbit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
+#: glib/gutils.c:3004
+msgid "Ebit"
+msgstr "Ebit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
+#: glib/gutils.c:3008
+msgid "Kibit"
+msgstr "Kibit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
+#: glib/gutils.c:3010
+msgid "Mibit"
+msgstr "Mibit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
+#: glib/gutils.c:3012
+msgid "Gibit"
+msgstr "Gibit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
+#: glib/gutils.c:3014
+msgid "Tibit"
+msgstr "Tibit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
+#: glib/gutils.c:3016
+msgid "Pibit"
+msgstr "Pibit"
+
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
+#: glib/gutils.c:3018
+msgid "Eibit"
+msgstr "Eibit"
+
+#: glib/gutils.c:3056
+msgid "byte"
+msgid_plural "bytes"
+msgstr[0] "ibit"
+msgstr[1] "ibiten"
+
+#: glib/gutils.c:3060
+msgid "bit"
+msgid_plural "bits"
+msgstr[0] "bit"
+msgstr[1] "bits"
+
+#. Translators: The "%u" is replaced with the size value, like "13"; it could
+#. * be part of "13 bytes", but only the number is requested this time.
+#: glib/gutils.c:3068
+#, c-format
+msgctxt "format-size"
+msgid "%u"
+msgstr "%u"
+
+#. Translators: The first "%u" is replaced with the value, the "%s" with a unit of the value.
+#. * The order can be changed with "%$2s %$1u". An example: "13 bytes"
+#: glib/gutils.c:3073
+#, c-format
+msgctxt "format-size"
+msgid "%u %s"
+msgstr "%u %s"
+
+#. Translators: The "%.1f" is replaced with the size value, like "13.0"; it could
+#. * be part of "13.0 MB", but only the number is requested this time.
+#: glib/gutils.c:3109
+#, c-format
+msgctxt "format-size"
+msgid "%.1f"
+msgstr "%.1f"
+
+#. Translators: The first "%.1f" is replaced with the value, the "%s" with a unit of the value.
+#. * The order can be changed with "%$2s %$1.1f". Keep the no-break space between the value and
+#. * the unit symbol. An example: "13.0 MB"
+#: glib/gutils.c:3115
+#, c-format
+msgctxt "format-size"
+msgid "%.1f %s"
+msgstr "%.1f %s"
+
+#. Translators: the %s in "%s bytes" will always be replaced by a number.
+#: glib/gutils.c:3155
+#, c-format
+msgid "%s byte"
+msgid_plural "%s bytes"
+msgstr[0] "%s yibit"
+msgstr[1] "%s yibiten"
+
+#. Translators: the %s in "%s bits" will always be replaced by a number.
+#: glib/gutils.c:3160
+#, c-format
+msgid "%s bit"
+msgid_plural "%s bits"
+msgstr[0] "%s yibit"
+msgstr[1] "%s yibiten"
+
+#: glib/gutils.c:3201
+#, c-format
+msgid "%u byte"
+msgid_plural "%u bytes"
+msgstr[0] "%u yibit"
+msgstr[1] "%u yibiten"
+
+#. Translators: this is from the deprecated function g_format_size_for_display() which uses 'KB' to
+#. * mean 1024 bytes.  I am aware that 'KB' is not correct, but it has been preserved for reasons of
+#. * compatibility.  Users will not see this string unless a program is using this deprecated function.
+#. * Please translate as literally as possible.
+#.
+#: glib/gutils.c:3214
+#, c-format
+msgid "%.1f KB"
+msgstr "%.1f KAṬ"
+
+#: glib/gutils.c:3219
+#, c-format
+msgid "%.1f MB"
+msgstr "%.1f MAṬ"
+
+#: glib/gutils.c:3224
+#, c-format
+msgid "%.1f GB"
+msgstr "%.1f GAṬ"
+
+#: glib/gutils.c:3229
+#, c-format
+msgid "%.1f TB"
+msgstr "%.1f TAṬ"
+
+#: glib/gutils.c:3234
+#, c-format
+msgid "%.1f PB"
+msgstr "%.1f PB"
+
+#: glib/gutils.c:3239
+#, c-format
+msgid "%.1f EB"
+msgstr "%.1f EB"
index 27bfa74..a1e1e27 100644 (file)
--- a/po/ko.po
+++ b/po/ko.po
@@ -4,7 +4,7 @@
 # Young-Ho Cha <ganadist@chollian.net>, 2002.
 # Eunju Kim <eukim@redhat.com>, 2007.
 # Seong-ho Cho <darkcircle.0426@gmail.com>, 2011-2012.
-# Changwoo Ryu <cwryu@debian.org>, 2002, 2004-2006, 2007-2011, 2013-2023.
+# Changwoo Ryu <cwryu@debian.org>, 2002, 2004-2006, 2007-2011, 2013-2024.
 #
 #
 # 용어:
@@ -15,9 +15,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-08-31 10:14+0000\n"
-"PO-Revision-Date: 2023-09-05 23:59+0530\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-03-01 12:22+0000\n"
+"PO-Revision-Date: 2024-03-10 22:30+0900\n"
 "Last-Translator: Changwoo Ryu <cwryu@debian.org>\n"
 "Language-Team: GNOME Korea <gnome-kr@googlegroups.com>\n"
 "Language: ko\n"
@@ -28,52 +28,56 @@ msgstr ""
 
 #: gio/gappinfo.c:339
 msgid "Setting default applications not supported yet"
-msgstr "기본 프로그램 설정은 아직 지원하지 않습니다"
+msgstr "기본  설정은 아직 지원하지 않습니다"
 
 #: gio/gappinfo.c:372
 msgid "Setting application as last used for type not supported yet"
-msgstr "타입에 대해 최근 사용한 프로그램 설정은 아직 지원하지 않습니다"
+msgstr "타입에 대해 최근 사용한  설정은 아직 지원하지 않습니다"
 
 #: gio/gappinfo.c:814
 #, c-format
 msgid "Failed to find default application for content type ‘%s’"
-msgstr "내용 유형 ‘%s’에 대한 기본 프로그램을 찾는데 실패했습니다"
+msgstr "내용 유형 ‘%s’에 대한 기본 을 찾는데 실패했습니다"
 
 #: gio/gappinfo.c:874
 #, c-format
 msgid "Failed to find default application for URI Scheme ‘%s’"
-msgstr "URI 스킴 ‘%s’에 대한 기본 프로그램을 찾는데 실패했습니다"
+msgstr "URI 스킴 ‘%s’에 대한 기본 을 찾는데 실패했습니다"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "GApplication 옵션:"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "GApplication 옵션을 표시합니다"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr "GApplication 서비스 모드로 들어갑니다 (D-버스 서비스 파일에서 사용)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
-msgstr "프로그램 ID를 직접 지정합니다"
+msgstr "앱의 ID를 직접 지정합니다"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "앱 버전을 표시합니다"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "실행 중인 인스턴스를 바꿉니다"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "도움말을 표시합니다"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[<명령>]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "버전 출력"
 
@@ -83,24 +87,23 @@ msgstr "버전 정보를 표시하고 끝납니다"
 
 #: gio/gapplication-tool.c:55
 msgid "List applications"
-msgstr "프로그램 목록"
+msgstr " 목록"
 
 #: gio/gapplication-tool.c:56
 msgid "List the installed D-Bus activatable applications (by .desktop files)"
-msgstr ""
-"D-버스로 동작할 수 있는(.desktop 파일 사용) 프로그램의 설치 목록을 봅니다"
+msgstr "D-버스로 동작할 수 있는(.desktop 파일 사용) 앱의 설치 목록을 봅니다"
 
 #: gio/gapplication-tool.c:59
 msgid "Launch an application"
-msgstr "프로그램 실행"
+msgstr " 실행"
 
 #: gio/gapplication-tool.c:60
 msgid "Launch the application (with optional files to open)"
-msgstr "프로그램을 실행합니다 (뒤에 열 파일을 추가해서)"
+msgstr "을 실행합니다 (뒤에 열 파일을 추가해서)"
 
 #: gio/gapplication-tool.c:61
 msgid "APPID [FILE…]"
-msgstr "<프로그램ID> [파일…]"
+msgstr "<ID> [파일…]"
 
 #: gio/gapplication-tool.c:63
 msgid "Activate an action"
@@ -108,11 +111,11 @@ msgstr "동작 활성화"
 
 #: gio/gapplication-tool.c:64
 msgid "Invoke an action on the application"
-msgstr "프로그램의 한 동작을 호출합니다"
+msgstr "의 한 동작을 호출합니다"
 
 #: gio/gapplication-tool.c:65
 msgid "APPID ACTION [PARAMETER]"
-msgstr "<프로그램ID> <동작> [인수]"
+msgstr "<ID> <동작> [인수]"
 
 #: gio/gapplication-tool.c:67
 msgid "List available actions"
@@ -120,14 +123,14 @@ msgstr "사용 가능 동작 목록"
 
 #: gio/gapplication-tool.c:68
 msgid "List static actions for an application (from .desktop file)"
-msgstr "프로그램의 고정된 동작 목록을 봅니다 (.desktop 파일에서)"
+msgstr "의 고정된 동작 목록을 봅니다 (.desktop 파일에서)"
 
 #: gio/gapplication-tool.c:69 gio/gapplication-tool.c:75
 msgid "APPID"
-msgstr "<프로그램ID>"
+msgstr "<ID>"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "<명령>"
 
@@ -137,11 +140,15 @@ msgstr "자세한 도움말을 표시하는 명령"
 
 #: gio/gapplication-tool.c:75
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
-msgstr "D-버스 형식의 프로그램 ID (예: org.example.viewer)"
+msgstr "D-버스 형식의  ID (예: org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "<파일>"
 
@@ -165,7 +172,7 @@ msgstr "<인수>"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "추가로 동작 호출에 붙일 인수, GVariant 형식"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -179,12 +186,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "사용법:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "인수:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[인수…]"
 
@@ -208,14 +215,12 @@ msgstr ""
 msgid ""
 "%s command requires an application id to directly follow\n"
 "\n"
-msgstr ""
-"%s 명령은 해당 프로그램 ID가 필요합니다.\n"
-"\n"
+msgstr "%s 명령은 해당 앱 ID가 필요합니다.\n\n"
 
 #: gio/gapplication-tool.c:175
 #, c-format
 msgid "invalid application id: “%s”\n"
-msgstr "잘못된 프로그램 ID: “%s”\n"
+msgstr "잘못된  ID: “%s”\n"
 
 #. Translators: %s is replaced with a command name like 'list-actions'
 #: gio/gapplication-tool.c:186
@@ -235,11 +240,11 @@ msgstr "D-버스에 연결할 수 없습니다: %s\n"
 #: gio/gapplication-tool.c:290
 #, c-format
 msgid "error sending %s message to application: %s\n"
-msgstr "프로그램에 %s 메시지를 보내는 중 오류: %s\n"
+msgstr "에 %s 메시지를 보내는 중 오류: %s\n"
 
 #: gio/gapplication-tool.c:324
 msgid "action name must be given after application id\n"
-msgstr "프로그램 ID 뒤에 동작 이름을 써야 합니다\n"
+msgstr " ID 뒤에 동작 이름을 써야 합니다\n"
 
 #: gio/gapplication-tool.c:332
 #, c-format
@@ -261,12 +266,12 @@ msgstr "최대 1개 인수를 받는 동작\n"
 
 #: gio/gapplication-tool.c:418
 msgid "list-actions command takes only the application id"
-msgstr "list-actions 명령은 프로그램 ID만 받습니다"
+msgstr "list-actions 명령은  ID만 받습니다"
 
 #: gio/gapplication-tool.c:428
 #, c-format
 msgid "unable to find desktop file for application %s\n"
-msgstr "%s 프로그램에 대한 desktop 파일을 찾을 수 없습니다\n"
+msgstr "%s 에 대한 desktop 파일을 찾을 수 없습니다\n"
 
 #: gio/gapplication-tool.c:473
 #, c-format
@@ -277,78 +282,78 @@ msgstr ""
 "알 수 없는 명령 %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "%s에 넘긴 카운트 값이 너무 큽니다"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "기반 스트림에서 탐색을 지원하지 않습니다"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "GMemoryInputStream을 자를 수 없습니다"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "스트림을 이미 닫았습니다"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "기반 스트림에서 자르기를 지원하지 않습니다"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "동작이 취소되었습니다"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "올바른 객체가 아닙니다. 초기화되지 않았습니다"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "입력에서 잘못된 멀티 바이트 시퀀스가 불완전합니다"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "대상에 공간이 부족합니다"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "변환 입력에서 잘못된 바이트 순서"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "변환 중 오류: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "취소 가능한 초기화를 지원하지 않습니다"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "문자셋 “%s”에서 “%s”(으)로 변환은 지원되지 않습니다"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "“%s”에서 “%s”(으)로 변환하는 변환기를 열 수 없습니다"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "%s 형식"
@@ -362,41 +367,41 @@ msgstr "알 수 없는 형식"
 msgid "%s filetype"
 msgstr "%s 파일 형식"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials에 잘못된 데이터가 들어 있습니다"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials는 이 OS에서 구현되지 않았습니다"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "이 플랫폼에서는 GCredentials를 지원하지 않습니다"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr "GCredentials는 이 OS에서 프로세스 ID가 없습니다"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr "암호 데이터 속이기가 이 OS에서는 불가능합니다"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "예기치 않게 일찍 스트림이 끝났습니다"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "“%s” 키를 주소 항목 “%s”에서 지원하지 않습니다"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr "“%s” 주소 항목에서 의미 없는 키/값의 쌍"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -405,50 +410,50 @@ msgstr ""
 "“%s” 주소는 올바르지 않습니다 (정확히 1개의 경로, 폴더, 임시 폴더, 절대 키 "
 "중 하나가 필요합니다)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "“%s” 주소에서 오류 —  “%s” 속성의 형식이 잘못되었습니다"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr ""
 "주소 “%2$s”에 대한  “%1$s” 트랜스포트는 알려지지 않았거나 지원하지 않습니다."
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "주소 항목 “%s”에 콜론(:)이  없습니다"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr "주소 항목 “%s”에서 트랜스포트 이름이 비어 있으면 안 됩니다"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
 "sign"
 msgstr "키/값 쌍 %d번, “%s”에 (주소 항목 “%s”) 등호 기호가 없습니다"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
 msgstr ""
 "키/값 쌍 %d번, “%s”에 (주소 항목 “%s”) 비어 있는 키가 들어 있을 수 없습니다"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
 "“%s”"
 msgstr "키/값 쌍 %d번, “%s”에 (주소 항목 “%s”) 키/값의 이스케이프 제거 오류"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -457,75 +462,75 @@ msgstr ""
 "“%s” 주소에서 오류 — unix 트랜스포트에서는 'path'나 'abstract' 키 중 하나를 "
 "설정해야 합니다."
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr "“%s” 주소에서 오류 — host 속성이 없거나 형식이 잘못되었습니다"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr "“%s” 주소에서 오류 — port 속성이 없거나 형식이 잘못되었습니다"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr "“%s” 주소에서 오류 — noncefile 속성이 없거나 형식이 잘못되었습니다"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "자동 실행 오류: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "“%s” nonce 파일을 여는 중 오류: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "“%s” nonce 파일을 읽는 중 오류: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr "“%s” nonce 파일을 읽는 중 오류, 16바이트가 있어야 하지만 %d바이트"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr "“%s” nonce 파일의 내용을 스트림에 쓰는 중 오류:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "지정된 주소가 빈 문자열입니다"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr "AT_SECURE가 설정되었을 때 메시지 버스를 시작할 수 없습니다:"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr "machine-id 없이 메시지 버스를 시작할 수 없습니다: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "X11 $DISPLAY 없이 D-Bus 자동 실행할 수 없습니다"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "“%s” 명령을 시작하는데 오류: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "세션 버스 주소를 알아낼 수 없습니다 (이 운영체제에서는 구현되지 않았습니다)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -534,7 +539,7 @@ msgstr ""
 "DBUS_STARTER_BUS_TYPE 환경 변수에서 세션 버스 주소를 알아낼 수 없습니다 — 알 "
 "수 없는 값 “%s”"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -542,35 +547,35 @@ msgstr ""
 "DBUS_STARTER_BUS_TYPE 환경 변수를 설정하지 않았으므로 세션 버스 주소를 알아"
 "낼 수 없습니다"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "알 수 없는 버스 형식 (%d)"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "한 줄을 읽으려고 시도하는 중 예상치 못하게 읽을 내용이 부족합니다."
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr ""
 "한 줄을(안전하게) 읽으려고 시도하는 중 예상치 못하게 읽을 내용이 부족합니다."
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
 msgstr "사용 가능한 모든 인증 방법을 시도했습니다 (시도: %s) (사용 가능: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "한 바이트를 읽으려고 시도하는 중 예상치 못하게 읽을 내용이 부족합니다."
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr "상대와 서버의 사용자 아이디는 같아야 합니다"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "GDBusAuthObserver::authorize-authenticated-peer를 통해 취소됨"
 
@@ -590,13 +595,13 @@ msgstr "“%s” 디렉터리의 권한이 잘못되었습니다. 0700이어야
 msgid "Error creating directory “%s”: %s"
 msgstr "“%s” 디렉터리를 만드는 중 오류: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "동작을 지원하지 않습니다"
 
@@ -661,15 +666,15 @@ msgstr "“%s” 키 모음을 쓰기 용도로 여는 중 오류: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(추가로 “%s”에 대한 잠금 해제도 실패했습니다: %s)"
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "연결이 닫혔습니다"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "시간 제한을 넘었습니다"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr "클라이언트 연결을 만드는 중 지원하지 않는 플래그가 있습니다"
@@ -757,56 +762,67 @@ msgstr "하위 트리를 이미 %s 용도로 내보냈습니다"
 msgid "Object does not exist at path “%s”"
 msgstr "“%s” 경로에 오브젝트가 없습니다"
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "형식이 올바르지 않습니다"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
-msgstr "METHOD_CALL 메시지: PATH 혹은 MEMBER 헤더 필드가 없거나 잘못되었습니다"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
+msgstr "%s 메시지: %s 헤더 필드가 잘못되었습니다. 타입이 ‘%s’인 값이 예상되었습니다"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr "METHOD_CALL 메시지: REPLY_SERIAL 헤더 필드가 없거나 잘못되었습니다"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "%s 메시지: %s 헤더 필드가 없거나 잘못되었습니다"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr "ERROR ë©\94ì\8b\9cì§\80: REPLY_SERIAL í\98¹ì\9d\80 ERROR_NAME í\97¤ë\8d\94 í\95\84ë\93\9cê°\80 ì\97\86ê±°ë\82\98 ì\9e\98못ë\90\98ì\97\88ì\8aµë\8b\88ë\8b¤"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "%s ë©\94ì\8b\9cì§\80: INVALID í\97¤ë\8d\94 í\95\84ë\93\9cê°\80 ë\93¤ì\96´ ì\9e\88ì\8aµë\8b\88ë\8b¤"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
-msgstr "SIGNAL 메시지: PATH, INTERFACE 혹은 MEMBER 헤더 필드가 없거나 잘못되었습니다"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
+msgstr "%s 메시지: PATH 헤더 필드가 /org/freedesktop/DBus/Local 예약 값을 사용하고 있습니다"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
-msgstr ""
-"SIGNAL 메시지: PATH 헤더 필드가 /org/freedesktop/DBus/Local 예약 값을 사용하"
-"고 있습니다"
+"%s message: INTERFACE header field does not contain a valid interface name"
+msgstr "%s 메시지: INTERFACE 헤더 필드에 올바른 인터페이스 이름이 들어 있지 않습니다"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
-msgstr ""
-"SIGNAL 메시지: INTERFACE 헤더 필드가 org.freedesktop.DBus.Local 예약 값을 사"
-"용하고 있습니다"
+msgstr "%s 메시지: INTERFACE 헤더 필드에서 예약된 값인 org.freedesktop.DBus.Local을 사용합니다"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr "%s 메시지: MEMBER 헤더 필드에 올바른 멤버 이름이 들어 있지 않습니다"
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr "%s 메시지: ERROR_NAME 헤더 필드에 올바른 오류 이름이 들어 있지 않습니다"
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "형식이 올바르지 않습니다"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
 msgstr[0] "%lu 바이트를 읽어야 하지만 %lu 바이트만 받았습니다"
 
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr "“%s” 문자열 뒤에 NUL 바이트가 와야 하지만 %d바이트가 있습니다"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -815,21 +831,21 @@ msgstr ""
 "올바른 UTF-8 문자열이 와야 하지만 오프셋 %d에(문자열 길이 %d) 잘못된 바이트"
 "가 있습니다. 그 부분까지 올바른 UTF-8 문자열은 “%s”입니다."
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "값이 너무 깊숙히 끼워 넣어져 있습니다"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr "해석한 “%s” 값이 올바른 D-Bus 객체 경로가 아닙니다"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "해석한 “%s” 값이 올바른 D-Bus 시그너쳐가 아닙니다"
 
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -838,7 +854,7 @@ msgid_plural ""
 msgstr[0] ""
 "길이가 %u 바이트인 배열이 있습니다. 최대 길이는 2<<26 바이트입니다. (64MiB)"
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -847,22 +863,22 @@ msgstr ""
 "타입이 “a%c”인 배열은 길이가 %u 바이트의 배수여야 하지만, 길이가 %u 바이트입"
 "니다."
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "D-Bus에서 빈 구조체(튜플)는 지원하지 않습니다"
 
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr "variant에 대해 해석한 값 “%s”은(는) 올바른 D-Bus 시그너쳐가 아닙니다."
 
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
 msgstr "“%s” 형식 문자열로 GVariant를 D-Bus 전송 형식에서 재구성하는데 오류"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -871,57 +887,57 @@ msgstr ""
 "엔디안 값이 잘못되었습니다. 0x6c(“l”) 또는 0x42 (“B”)가 와야 하지만 0x%02x 값"
 "이 있습니다"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr "메이저 프로토콜 버전이 잘못되었습니다. 1이어야 하지만 %d입니다."
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "시그너쳐 헤더가 있지만 타입 시그너쳐 헤더가 아닙니다"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr "시그너쳐 “%s”인 시그너쳐 헤더가 있지만 메시지 본문이 비었습니다"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr "해석한 “%s” 값이 (본문에 대해) 올바른 D-Bus 시그너쳐가 아닙니다"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
 msgstr[0] "메시지에 시그너쳐 헤더가 없지만 메시지 본문이 %u 바이트입니다"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "메시지를 재구성할 수 없습니다: "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
 msgstr "“%s” 형식 문자열로 GVariant를 D-Bus 전송 형식으로 만드는데 오류"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
 msgstr "메시지의 파일 디스크립터 개수가 (%d) 헤더 필드의 개수와 (%d) 다릅니다"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "메시지를 전송 형식으로 만들 수 없습니다: "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr "메시지 본문에 “%s” 시그너쳐가 있지만 시그너쳐 헤더가 없습니다"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -929,17 +945,17 @@ msgid ""
 msgstr ""
 "메시지 본문에 “%s” 형식 시그너쳐가 있지만 헤더 필드의 시그너쳐가 “%s”입니다"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr "메시지 본문이 비었지만 헤더 필드의 시그너쳐가 “(%s)”입니다"
 
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "오류 리턴, “%s” 형식의 본문"
 
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "오류 리턴, 빈 본문"
 
@@ -959,22 +975,22 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "하드웨어 프로파일을 가져올 수 없습니다: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "%s 또는 %s을(를) 읽어들일 수 없습니다: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "%s에 대해 StartServiceByName 호출이 실패했습니다: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr " StartServiceByName(\"%2$s\") 메소드에서 예상치 못한 응답 %1$d번"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -983,25 +999,25 @@ msgstr ""
 "메소드를 호출할 수 없습니다. 프록시는 소유자 없는 알려진 이름이고 (%s) 프록시"
 "가 G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START 플래그를 갖고 만들어졌습니다"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "추상 네임스페이스를 지원하지 않습니다"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr "서버를 만들 때 nonce 파일을 지정할 수 없습니다"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "“%s”의 nonce 파일에 쓰는 중 오류: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "“%s” 문자열은 올바른 D-BUS GUID가 아닙니다"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "지원하지 않는 transport “%s”에서 연결을 받아들일 수 없습니다"
@@ -1064,6 +1080,10 @@ msgstr "세션 버스에 연결"
 msgid "Connect to given D-Bus address"
 msgstr "지정된 D-Bus 주소에 연결"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "<주소>"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "연결 종점 옵션:"
@@ -1291,71 +1311,72 @@ msgstr "오류: “%s”은(는) 올바른 알려진 버스 이름이 아닙니
 msgid "Not authorized to change debug settings"
 msgstr "디버깅 설정을 바꿀 권한이 없습니다"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "이름없음"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "desktop 파일에 Exec 필드를 지정하지 않았습니다"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
-msgstr "프로그램에 필요한 터미널을 찾을 수 없습니다"
+msgstr "에 필요한 터미널을 찾을 수 없습니다"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "$PATH 안에 ‘%s’ 프로그램이 없습니다"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
-msgstr "사용자 프로그램 설정 폴더(%s)를 만들 수 없습니다: %s"
+msgstr "사용자  설정 폴더(%s)를 만들 수 없습니다: %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr "사용자 MIME 설정 폴더(%s)를 만들 수 없습니다: %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
-msgstr "프로그램 정보에 아이디가 없습니다"
+msgstr " 정보에 아이디가 없습니다"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "%s 사용자 desktop 파일을 만들 수 없습니다"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "%s에 대한 사용자 설정 정의"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "드라이브가 eject 기능을 구현하지 않았습니다"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "드라이브가 eject 또는 eject_with_operation 기능을 구현하지 않았습니다"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "드라이브가 미디어 폴링을 구현하지 않았습니다"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "드라이브가 start 기능을 구현하지 않았습니다"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "드라이브가 stop 기능을 구현하지 않았습니다"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "TLS 백엔드가 TLS 바인딩 가져오기를 구현하지 않았습니다"
 
@@ -1368,27 +1389,27 @@ msgstr "TLS 기능을 사용할 수 없습니다"
 msgid "DTLS support is not available"
 msgstr "DTLS 기능을 사용할 수 없습니다"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "GEmblem 인코딩의 %d 버전을 처리할 수 없습니다"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "GEmblem 인코딩에서 토큰 수가(%d개) 잘못되었습니다"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "GEmblemedIcon 인코딩의 %d 버전을 처리할 수 없습니다"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "GEmblemedIcon 인코딩에서 토큰 수가(%d개) 잘못되었습니다"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "GEmblemedIcon에 GEmblem이 없습니다"
 
@@ -1396,130 +1417,135 @@ msgstr "GEmblemedIcon에 GEmblem이 없습니다"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "들어 있는 마운트가 없습니다"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "디렉터리를 덮어 써서 복사할 수 없습니다"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "디렉터리를 덮어 써서 디렉터리를 복사할 수 없습니다"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "대상 파일이 있습니다"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "디렉터리를 재귀적으로 복사할 수 없습니다"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "파일 범위 복사를 지원하지 않습니다"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "파일 쪼개기 오류: %s"
 
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "잇기를 지원하지 않습니다"
 
 # reflink/clone은 btrfs에서 임시 복사하는 걸 말한다
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr "다른 마운트 사이에 복사(참조링크/클론)는 지원하지 않습니다"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "복사(참조링크/클론)를 지원하지 않거나 잘못되었습니다"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "복사(참조링크/클론)를 지원하지 않거나 동작하지 않았습니다."
 
-#: gio/gfile.c:3395
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "%s 속성을 가져올 수 없습니다"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "특수 파일은 복사할 수 없습니다"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "잘못된 심볼릭 링크 값이 주어졌습니다"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "심볼릭 링크를 지원하지 않습니다"
 
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "휴지통을 지원하지 않습니다"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "파일 이름에 “%c” 문자가 들어갈 수 없습니다"
 
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr "“%s” 서식에 사용할 임시 디렉터리를 만드는데 실패했습니다: %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "볼륨이 mount를 구현하지 않았습니다"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
-msgstr "이 파일을 처리하는 프로그램을 아무 것도 등록하지 않았습니다"
+msgstr "이 파일을 처리하는 을 아무 것도 등록하지 않았습니다"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "이뉴머레이터를 이미 닫았습니다"
 
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "파일 이뉴머레이터에 진행 중인 동작이 있습니다"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "파일 이뉴머레이터를 이미 닫았습니다"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "GFileIcon 인코딩의 %d 버전을 처리할 수 없습니다"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "GFileIcon 입력 데이터의 형식이 잘못되었습니다"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "스트림이 query_info를 지원하지 않습니다"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "스트림에서 seek를 지원하지 않습니다"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "입력 스트림이 truncate를 허용하지 않습니다"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "스트림에서 truncate를 지원하지 않습니다"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "잘못된 호스트 이름"
 
@@ -1552,64 +1578,64 @@ msgstr "HTTP 프록시 응답이 너무 큽니다"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "HTTP 프록시 서버가 예상치 못하게 연결을 닫았습니다."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "토큰 수가 (%d개) 잘못되었습니다"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "클래스 이름 \"%s\"에 대한 형식이 없습니다"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "\"%s\" 형식은 GIcon 인터페이스를 구현하지 않습니다"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "\"%s\" 형식에 대한 클래스가 없습니다"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "버전 형식이 잘못되었습니다: %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr "\"%s\" 형식은 GIcon 인터페이스에서 from_token()를 구현하지 않습니다"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "아이콘 인코딩에 저장한 버전을 처리할 수 없습니다"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "주소가 지정되지 않았습니다"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "주소의 길이 %u이(가) 너무 깁니다"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "주소에 접두어 길이보다 긴 비트 데이터가 들어 있습니다"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "“%s”을(를) IP주소 마스크로 해석할 수 없습니다"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "소켓 주소에 공간이 부족합니다"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "소켓 주소를 지원하지 않습니다"
 
@@ -1623,7 +1649,7 @@ msgstr "입력 스트림이 read를 구현하지 않았습니다"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "스트림에 진행 중인 동작이 있습니다"
 
@@ -1639,7 +1665,7 @@ msgstr "파일 옮길 때 유지"
 msgid "“version” takes no arguments"
 msgstr "“version” 옵션은 인수를 받지 않습니다"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "사용법:"
 
@@ -1647,79 +1673,79 @@ msgstr "사용법:"
 msgid "Print version information and exit."
 msgstr "버전 정보를 표시하고 끝납니다."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "명령어:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "파일을 붙여서 표준 출력으로 출력합니다"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "하나 또는 여러 파일 복사"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "위치에 대한 정보를 표시합니다"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
-msgstr "데스크톱 파일에서 프로그램을 실행합니다"
+msgstr "데스크톱 파일에서 을 실행합니다"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "위치의 내용을 표시"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "지정한 MIME 유형에 대한 핸들러를 알아내거나 설정합니다"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "디렉터리 만듭니다"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "파일과 디렉터리의 바뀐 사항을 감시합니다"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "위치를 마운트하거나 해제합니다"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "하나 또는 여러 파일을 옮깁니다"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
-msgstr "파일을 기본 프로그램으로 엽니다"
+msgstr "파일을 기본 으로 엽니다"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "파일의 이름을 바꿉니다"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "하나 또는 여러 파일을 삭제합니다"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "표준 입력에서 읽고 저장합니다"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "파일 속성을 설정합니다"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "파일 또는 디렉터리를 휴지통으로 옮깁니다"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "위치의 내용을 트리 형태로 표시합니다"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "명령어:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "자세한 도움말을 %s 옵션을 사용하십시오.\n"
@@ -1729,7 +1755,7 @@ msgid "Error writing to stdout"
 msgstr "표준 출력에 쓰는 중 오류"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1752,60 +1778,64 @@ msgstr ""
 "파일 대신 GIO 위치를 사용합니다: 예를 들어 위치로\n"
 "smb://server/resource/file.txt와 같이 쓸 수 있습니다."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "위치를 지정하지 않았습니다"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "대상 디렉터리가 없습니다"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "진행사항 표시"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "덮어 쓰기 전에 물어보기"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "모든 속성 유지"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "기존 대상 파일의 백업을 만듭니다"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "심볼릭 링크를 따라가지 않습니다"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "대상의 권한에 기본값을 사용합니다"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr "대상에 기본값 파일 수정 시간을 사용합니다"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "%2$s 중 %1$s 전송함 (%3$s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "<원본>"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "<대상>"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "하나 또는 여러 파일을 <원본>에서 <대상>으로 복사합니다."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1815,12 +1845,12 @@ msgstr ""
 "대신 GIO 위치를 사용합니다. 예를 들어 위치로\n"
 "smb://server/resource/file.txt와 같이 쓸 수 있습니다."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "대상 %s이(가) 디렉터리가 아닙니다"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: “%s” 파일을 덮어씁니까? "
@@ -1861,52 +1891,52 @@ msgstr "표시 이름: %s\n"
 msgid "edit name: %s\n"
 msgstr "편집 이름: %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "이름: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "종류: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "크기: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "숨김\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "URI: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "로컬 경로: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "유닉스 마운트: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "설정 가능 속성:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "쓰기 가능 속성 네임스페이스:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "위치에 대한 정보를 표시합니다."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1930,9 +1960,7 @@ msgstr "<데스크톱-파일> [<파일-인자> …]"
 msgid ""
 "Launch an application from a desktop file, passing optional filename "
 "arguments to it."
-msgstr ""
-"데스크톱 파일에서 프로그램을 실행합니다. 옵션으로 파일 이름 인자를 실행할 때 "
-"전달합니다."
+msgstr "데스크톱 파일에서 앱을 실행합니다. 옵션으로 파일 이름 인자를 실행할 때 전달합니다."
 
 #: gio/gio-tool-launch.c:79
 msgid "No desktop file given"
@@ -1950,12 +1978,12 @@ msgstr "‘%s‘을(를) 읽어들일 수 없습니다: %s"
 #: gio/gio-tool-launch.c:109
 #, c-format
 msgid "Unable to load application information for ‘%s‘"
-msgstr "‘%s‘에 대한 프로그램 정보를 읽어들일 수 없습니다"
+msgstr "‘%s‘에 대한  정보를 읽어들일 수 없습니다"
 
 #: gio/gio-tool-launch.c:121
 #, c-format
 msgid "Unable to launch application ‘%s’: %s"
-msgstr "‘%s‘ 프로그램을 읽어들일 수 없습니다: %s"
+msgstr "‘%s‘ 을 읽어들일 수 없습니다: %s"
 
 #: gio/gio-tool-list.c:38 gio/gio-tool-tree.c:34
 msgid "Show hidden files"
@@ -2010,7 +2038,7 @@ msgid ""
 "handler for the mimetype."
 msgstr ""
 "핸들러를 지정하지 않는 경우, 해당 MIME 유형에 대해 등록되고 추천하는\n"
-"프로그램의 목록을 표시합니다. 핸들러를 지정하면, 그 핸들러를 해당\n"
+"의 목록을 표시합니다. 핸들러를 지정하면, 그 핸들러를 해당\n"
 "MIME 유형의 기본 핸들러로 지정합니다."
 
 #: gio/gio-tool-mime.c:102
@@ -2020,28 +2048,28 @@ msgstr "하나의 MIME 유형을 지정해야 하고, 설정할 경우 핸들러
 #: gio/gio-tool-mime.c:118
 #, c-format
 msgid "No default applications for “%s”\n"
-msgstr "“%s”에 대한 기본 프로그램이 없습니다.\n"
+msgstr "“%s”에 대한 기본 이 없습니다.\n"
 
 #: gio/gio-tool-mime.c:124
 #, c-format
 msgid "Default application for “%s”: %s\n"
-msgstr "“%s”에 대한 기본 프로그램: %s\n"
+msgstr "“%s”에 대한 기본 : %s\n"
 
 #: gio/gio-tool-mime.c:129
 msgid "Registered applications:\n"
-msgstr "등록된 프로그램:\n"
+msgstr "등록된 :\n"
 
 #: gio/gio-tool-mime.c:131
 msgid "No registered applications\n"
-msgstr "등록된 프로그램이 없습니다\n"
+msgstr "등록된 이 없습니다\n"
 
 #: gio/gio-tool-mime.c:142
 msgid "Recommended applications:\n"
-msgstr "추천 프로그램:\n"
+msgstr "추천 :\n"
 
 #: gio/gio-tool-mime.c:144
 msgid "No recommended applications\n"
-msgstr "추천 프로그램이 없습니다\n"
+msgstr "추천 이 없습니다\n"
 
 #: gio/gio-tool-mime.c:164
 #, c-format
@@ -2217,7 +2245,7 @@ msgid ""
 "is registered to handle files of this type."
 msgstr ""
 "해당 파일의 유형의 처리하도록 등록된\n"
-"기본 프로그램으로 파일을 엽니다."
+"기본 으로 파일을 엽니다."
 
 #: gio/gio-tool-remove.c:33 gio/gio-tool-trash.c:35
 msgid "Ignore nonexistent files, never prompt"
@@ -2458,7 +2486,8 @@ msgid ""
 msgstr "FILE에 참조된 파일을 읽어들일 디렉터리 (기본값: 현재 디렉터리)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "<디렉터리>"
 
@@ -2512,6 +2541,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "C 식별자 이름은 생성한 소스코드에 대해 사용합니다"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "<식별자>"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "타겟 C 컴파일러 (기본값: CC 환경 변수)"
@@ -3019,125 +3052,125 @@ msgstr "%s의 파일 시스템 정보를 가져오는 중 오류: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "%s 파일이 들어 있는 마운트가 없습니다"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "루트 디렉터리의 이름을 바꿀 수 없습니다"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "%s 파일의 이름 바꾸는 중 오류: %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "파일 이름을 바꿀 수 없습니다. 파일이 이미 있습니다"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "잘못된 파일 이름"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "%s 파일을 여는 중 오류: %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "%s 파일 제거하는 중 오류: %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "%s 파일 버리는 중 오류: %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "휴지통 디렉터리(%s)를 만들 수 없습니다: %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr "%s 휴지통의 상위 디렉터리를 찾을 수 없습니다"
 
 # reflink/clone은 btrfs에서 임시 복사하는 걸 말한다
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr "시스템 내부 마운트에 대해 휴지통은 지원하지 않습니다"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr "%s 휴지통 디렉터리를 (%s 버리기) 찾을 수 없거나 만들 수 없습니다"
 
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "%s에 대한 휴지통 정보 파일을 만들 수 없습니다: %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr "%s 파일을 파일 시스템 경계를 넘어서서 버릴 수 없습니다"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "%s 파일을 버릴 수 없습니다: %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "%s 파일을 버릴 수 없습니다"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "%s 디렉터리를 만드는 중 오류: %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "파일 시스템이 심볼릭 링크를 지원하지 않습니다"
 
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "%s 심볼릭 링크를 만드는 중 오류: %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "%s 파일 옮기는 중 오류: %s"
 
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "디렉터리를 덮어 써서 디렉터리를 옮길 수 없습니다"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "백업 파일 만들기가 실패했습니다"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "대상 파일을 제거하는 중 오류: %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "다른 마운트 사이에 옮기기는 지원하지 않습니다"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "%s의 디스크 사용량을 알아낼 수 없습니다: %s"
@@ -3159,116 +3192,116 @@ msgstr "잘못된 확장 속성 이름"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "확장 속성 “%s” 설정 중 오류: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (잘못된 인코딩)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "“%s” 파일 정보를 가져오는 중 오류: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "파일 서술자 정보를 가져오는 중 오류: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "잘못된 속성 형식 (uint32 필요)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "잘못된 속성 형식 (uint64 필요)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "잘못된 속성 형식 (바이트 문자열 필요)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "심볼릭 링크에는 권한을 설정할 수 없습니다"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "권한 설정 중 오류: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "소유자 설정 중 오류: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "심볼릭 링크는 NULL이 아니어야 합니다"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "심볼릭 링크 설정 중 오류: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr "심볼릭 링크 설정 중 오류: 파일이 심볼릭 링크가 아닙니다"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr "유닉스 타임스탬프 %2$lld에 대해 추가 나노초 %1$d 값이 음수입니다"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr ""
 "유닉스 타임스탬프 %2$lld에 대해 추가 나노초 %1$d 값이 1초에 도달했습니다"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "유닉스 타임스탬프 %lld 값이 64비트에 들어가지 않습니다"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr "유닉스 타임스탬프 %lld 값이 윈도우에서 지원하는 범위 밖에 있습니다"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "“%s” 파일이름을 UTF-16으로 변환할 수 없습니다."
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "“%s” 파일을 열 수 없습니다: 윈도우 오류 %lu"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr "“%s” 파일에 대해 수정 시각 또는 접근 시각 설정에 오류: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "수정 시각이나 접근 시각을 설정하는데 오류: %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "SELinux 컨텍스트는 NULL이 아니어야 합니다"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "이 시스템은 SELinux를 사용하지 않습니다"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "SELinux 컨텍스트 설정 중 오류: %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "%s 속성 설정은 지원하지 않습니다"
@@ -3321,7 +3354,7 @@ msgid "Error truncating file: %s"
 msgstr "파일을 자르는 중 오류: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "“%s” 파일을 여는 중 오류: %s"
@@ -3343,58 +3376,58 @@ msgstr "파일이 외부에서 바뀌었습니다"
 msgid "Error removing old file: %s"
 msgstr "예전 파일을 제거하는 중 오류: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "잘못된 GSeekType이 주어졌습니다"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "잘못된 탐색 요청"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "GMemoryInputStream은 자를 수 없습니다"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "메모리 출력 스트림은 크기를 바꿀 수 없습니다"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "출력 스트림의 크기를 바꾸는데 실패했습니다"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
 msgstr "쓰기를 처리하는데 필요한 메모리 용량이 빈 공간보다 더 큽니다"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "요청한 파일 이동 위치가 스트림의 맨 앞보다 더 앞쪽입니다"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "요청한 파일 이동 위치가 스트림의 맨 뒤보다 더 뒤쪽입니다"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "마운트가 “unmount” 기능을 구현하지 않았습니다"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "마운트가 “eject” 기능을 구현하지 않았습니다"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "마운트가 “unmount” 혹은 “unmount_with_operation” 기능을 구현하지 않았습니다"
@@ -3402,7 +3435,7 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr ""
 "마운트가 “eject” 혹은 “eject_with_operation” 기능을 구현하지 않았습니다"
@@ -3410,34 +3443,34 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "마운트가 “remount” 기능을 구현하지 않았습니다"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "마운트가 컨텐트 타입 판별 기능을 구현하지 않았습니다"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr "마운트가 동기식 컨텐트 타입 판별 기능을 구현하지 않았습니다"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "“%s” 호스트 이름에 “[” 괄호가 있는데 “]” 괄호가 없습니다"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "도달할 수 없는 네트워크"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "도달할 수 없는 호스트"
 
@@ -3465,7 +3498,7 @@ msgstr "NetworkManager 실행 중이 아닙니다"
 msgid "NetworkManager version too old"
 msgstr "NetworkManager 버전이 너무 오래 됐습니다"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "출력 스트림이 write를 구현하지 않았습니다"
 
@@ -3478,38 +3511,38 @@ msgstr "%s에 전달된 벡터의 합이 너무 큽니다"
 msgid "Source stream is already closed"
 msgstr "원본 스트림을 이미 닫았습니다"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "지정하지 않은 프록시 찾기 실패"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "“%s”의 주소를 알아내는 데 오류: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s 기능이 구현되지 않았습니다"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "잘못된 도메인"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "“%s” 위치의 자원이 없습니다"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "“%s” 위치의 자원에 대해 압축을 푸는데 실패했습니다"
@@ -3527,11 +3560,11 @@ msgstr "“%s” 위치의 자원은 디렉터리가 아닙니다"
 msgid "Input stream doesn’t implement seek"
 msgstr "입력 스트림에 탐색을 구현하지 않았습니다"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "elf 파일에 들어있는 자원의 섹션 나열"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3541,15 +3574,15 @@ msgstr ""
 "<섹션>이 주어졌다면 이 섹션에 있는 자원만 나열합니다\n"
 "<경로>가 주어졌다면 일치하는 자원만 나열합니다"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "<파일> [<경로>]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "<섹션>"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3561,15 +3594,15 @@ msgstr ""
 "<경로>가 주어졌다면 일치하는 자원만 나열합니다\n"
 "세부사항에는 섹션, 크기, 압축이 있습니다"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "자원 파일을 stdout으로 추출하기"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "<파일 경로>"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3597,7 +3630,7 @@ msgstr ""
 "자세한 도움말을 보려면 “gresource help <명령>” 명령을 실행하십시오.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3612,19 +3645,19 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  <섹션>   (추가적) ELF 섹션 이름\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  <명령>    설명할 명령어(옵션)\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr "  <파일>    ELF 파일(바이너리 혹은 공유 라이브러리)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3632,19 +3665,19 @@ msgstr ""
 "  <파일>    ELF 파일(바이너리 혹은 공유 라이브러리)\n"
 "            혹은 컴파일한 자원 파일\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[<경로>]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr "  <경로>    (추가적) 자원 경로(부분적일 수 있음)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "<경로>"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  <경로>    자원 경로\n"
 
@@ -3875,214 +3908,214 @@ msgstr "지정한 스키마 이름이 빈 문자열입니다\n"
 msgid "No such key “%s”\n"
 msgstr "“%s” 키가 없습니다\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "올바른 소켓이 아닙니다. 초기화되지 않았습니다"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "올바른 소켓이 아닙니다. 초기화가 다음 이유로 실패했습니다: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "소켓을 이미 닫았습니다"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1438
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "소켓 입출력 시간 제한이 넘었습니다"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "파일 서술자에서 GSocket을 만드는 중: %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "소켓을 만들 수 없습니다: %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "알 수 없는 계열을 지정했습니다"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "알 수 없는 프로토콜을 지정했습니다"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr "데이터그램 용도가 아닌 소켓에 데이터그램 동작을 수행할 수 없습니다."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr "제한시간을 설정한 소켓에 데이터그램 동작을 수행할 수 없습니다."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "로컬 주소를 알아낼 수 없습니다: %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "원격 주소를 알아낼 수 없습니다: %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "연결을 받을 수 없습니다: %s"
 
 # NOTE: bind(2)를 뜻함
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "%s 주소에 바인드하는데 오류: %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "멀티캐스트 그룹에 참여하는 중 오류: %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "멀티캐스트 그룹을 나오는 중 오류: %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "소스 지향 멀티캐스트를 지원하지 않습니다"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "소켓 패밀리를 지원하지 않습니다"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "소스 지향 주소가 IPv4 주소가 아닙니다"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "인터페이스 이름이 너무 깁니다"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "인터페이스가 없습니다: %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "IPv4 소스 지향 멀티캐스트를 지원하지 않습니다"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "IPv6 소스 지향 멀티캐스트를 지원하지 않습니다"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "연결을 받아들이는데 오류: %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "연결이 진행 중입니다"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "밀린 오류를 알아낼 수 없습니다: "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "데이터를 받는데 오류: %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "데이터를 보내는데 오류: %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "소켓을 닫을 수 없습니다: %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "소켓을 닫는데 오류: %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "소켓 조건을 기다리는 중: %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "메시지를 보낼 수 없습니다: %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "메시지 벡터가 너무 큽니다"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "메시지를 보내는 중 오류: %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "윈도우에서는 GSocketControlMessage를 지원하지 않습니다"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "메시지를 받는데 오류: %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "소켓 암호 데이터를 읽을 수 없습니다: %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr "g_socket_get_credentials가 이 OS에서 구현되지 않았습니다"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "프록시 서버 %s에 연결할 수 없습니다: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "%s(으)로 연결할 수 없습니다: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "연결할 수 없습니다: "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "TCP가 아닌 프록시 연결은 지원하지 않습니다."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "“%s” 프록시 프로토콜은 지원하지 않습니다."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "리스너를 이미 닫았습니다"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "추가한 소켓이 닫혔습니다"
 
@@ -4171,94 +4204,94 @@ msgstr "SOCKSv5 프록시가 해당 주소 형식을 지원하지 않습니다."
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "알 수 없는 SOCKSv5 프록시 오류."
 
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr "하위 프로세스와 통신을 위한 파이프를 만드는 중 실패 (%s)"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "이 플랫폼에서는 파이프를 지원하지 않습니다"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "GThemedIcon 인코딩의 %d 버전을 처리할 수 없습니다"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "올바른 주소가 없습니다"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "“%s” 주소의 호스트 이름을 알아내는 데 오류: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr "DNS %s 레코드 파싱에 오류: 잘못된 형식의 DNS 패킷"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "“%s”에 대한 요청 형식에 DNS 레코드가 없습니다"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "일시적으로 “%s” 주소를 알아낼 수 없습니다"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "“%s”의 주소를 알아내는 데 오류"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "잘못된 형식의 DNS 패킷"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "“%s”에 대한 DNS 응답을 파싱하는데 실패했습니다: "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "PEM 인코딩된 개인 키가 없습니다"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "PEM 인코딩된 개인 키를 해독할 수 없습니다"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "PEM 인코딩된 개인 키를 해석할 수 없습니다"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "PEM 인코딩된 인증서가 없습니다"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "PEM 인코딩된 인증서를 해석할 수 없습니다"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "현재 TLS 백엔드는 PKCS #12를 지원하지 않습니다"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr "이 GTlsBackend는 PKCS #11 인증서 만들기를 지원하지 않습니다"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4266,140 +4299,151 @@ msgstr "이번에 암호를 올바르게 입력하지 않으면 접근이 막힙
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
 msgstr "암호 입력이 여러 차례 잘못되었습니다. 계속 실패하면 접근이 막힙니다."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "입력한 암호가 올바르지 않습니다."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "FD 보내기는 지원하지 않습니다"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "한 개의 제어 메시지가 와야 하지만, %d개를 받았습니다"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "예상치 못한 부속 데이터의 형식입니다"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "한 개의 파일 서술자가 와야 하지만, %d개를 받았습니다\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "올바르지 않은 파일 서술자를 받았습니다"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "FD 받기는 지원하지 않습니다"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "암호 데이터를 보내는데 오류: "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr "소켓에 SO_PASSCRED를 사용하는지 검사하는데 오류: %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "SO_PASSCRED 사용 오류: %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr "암호 데이터 1바이트를 읽어야 하지만 0바이트 읽음"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "제어 메시지가 올 수 없지만, %d개를 받았습니다"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "SO_PASSCRED 사용 해제 오류: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "파일 서술자로부터 읽어오는 중 오류: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "파일 서술자를 닫는 중 오류: %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "파일 시스템 루트"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "파일 서술자에 쓰는 중 오류: %s"
 
 # abstract unix domain socket address: 파일시스템과 관계없는 소켓을 말함
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr "추상 유닉스 도메인 소켓 주소는 이 시스템에서 지원하지 않습니다"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "볼륨이 eject 기능을 구현하지 않았습니다"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "볼륨이 eject 혹은 eject_with_operation 기능을 구현하지 않았습니다"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr "application 오브젝트의 ‘%s’ 앱에 동작이 없습니다"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr "application 오브젝트의 ‘%s’ 앱 및 ‘%s’ 핸들러에 동작이 없습니다"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "핸들에서 읽는 중 오류: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "핸들을 닫는 중 오류: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "핸들에 쓰는 중 오류: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "메모리가 부족합니다"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "내부 오류: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "입력이 더 필요합니다"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "잘못된 압축 데이터"
 
@@ -4427,148 +4471,286 @@ msgstr "dbus 서비스 실행"
 msgid "Wrong args\n"
 msgstr "잘못된 인자\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "‘%s’ 열기 실패: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "오류: 전체 출력을 쓸 수 없습니다: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "오류: ‘%s’의 이름을 ‘%s’(으)로 바꾸는데 실패: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "GIR 검색 경로의 디렉터리 포함"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "출력 파일"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "공유 라이브러리"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "디버깅 메시지 보이기"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "더 많은 메시지 보이기"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "프로그램 버전을 표시하고 끝납니다"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "인자 파싱 오류: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "정확히 하나의 입력 파일을 지정하십시오"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "‘%s’ 파일 파싱 오류: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "‘%s’ 모듈의 typelib 빌드에 실패"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "‘%s’ 모듈에 대해 잘못된 typelib: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "모든 사용 가능 정보를 표시합니다"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "파싱 실패: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "입력 파일 없음"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "‘%s’ 읽기 실패: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "‘%s’ typelib 만들기 실패: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "typelib 읽어들이기 실패: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "경고: %u개 모듈이 누락됐습니다"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "검사할 typelib 버전"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "<버전>"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "typelib에 필요한 공유 라이브러리 목록을 표시합니다"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "검사할 typelib이 필요한 다른 typelib의 목록을 표시합니다"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "검사할 typelib"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "<이름공간>"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- GI typelib 검사"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "명령행 옵션 파싱에 실패했습니다: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "정확히 하나의 이름공간을 지정하십시오"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "--print-shlibs, --print-typelibs 또는 둘 다 지정하십시오"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "예상치 못하게 “%2$s” 요소에 '%1$s' 속성이 있습니다"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "“%2$s” 요소에 “%1$s” 속성이 없습니다"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "예상치 못하게 “%s” 태그가 있습니다. “%s” 태그가 있어야 합니다"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "예상치 못하게 “%2$s” 안에 “%1$s” 태그가 있습니다"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "북마크 파일에서 잘못된 날짜/시각 ‘%s’"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr "데이터 디렉터리에 올바른 북마크 파일이 없습니다"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "“%s” URL에 대한 북마크가 이미 있습니다"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "“%s” URL에 대한 북마크가 없습니다"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "“%s” URL에 대한 북마크에 MIME 형식이 없습니다"
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "“%s” URL에 대한 북마크에 개인 플래그가 없습니다"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "“%s” URL에 대한 북마크에 그룹이 설정되어 있지 않습니다"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
-msgstr "“%s”에 대해 북마크를 등록한 “%s” 이름을 가진 프로그램이 없습니다"
+msgstr "“%s”에 대해 북마크를 등록한 “%s” 이름을 가진 이 없습니다"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr "URI “%s”을(를) 사용해 “%s” 실행 명령 확장하기에 실패했습니다"
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "변환 입력에 표현할 수 없는 글자가 들어 있습니다"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "입력의 끝에서 부분적인 문자 순서"
 
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr "대체 코드셋 “%s”을(를) “%s”(으)로 변환할 수 없습니다"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "변환 입력에서 NUL 바이트가 들어 있습니다"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "변환 출력에서 NUL 바이트가 들어 있습니다"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr "URI “%s”은(는) “file” 스키마를 사용하는 절대 경로 URI가 아닙니다"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "URI “%s”이(가) 잘못되었습니다"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "URI “%s”의 호스트 이름이 잘못되었습니다"
 
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "URI “%s”은(는) 잘못된 이스케이프 문자가 들어 있습니다"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "경로이름 “%s”은(는) 절대 경로가 아닙니다"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%Y년 %b %e일 (%a) %H:%M:%S"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%y/%m/%d"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%p %I:%M:%S"
@@ -4589,62 +4771,62 @@ msgstr "%p %I:%M:%S"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "1월"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "2월"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "3월"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "4월"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "5월"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "6월"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "7월"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "8월"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "9월"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "10월"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "11월"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "12월"
@@ -4666,132 +4848,132 @@ msgstr "12월"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "1월"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "2월"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "3월"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "4월"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "5월"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "6월"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "7월"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "8월"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "9월"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "10월"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "11월"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "12월"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "월요일"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "화요일"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "수요일"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "목요일"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "금요일"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "토요일"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "일요일"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "월"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "화"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "수"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "목"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "금"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "토"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "일"
@@ -4813,62 +4995,62 @@ msgstr "일"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "1월"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "2월"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "3월"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "4월"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "5월"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "6월"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "7월"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "8월"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "9월"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "10월"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "11월"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "12월"
@@ -4890,189 +5072,196 @@ msgstr "12월"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "1월"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "2월"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "3월"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "4월"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "5월"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "6월"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "7월"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "8월"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "9월"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "10월"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "11월"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "12월"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "오전"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "오후"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "디렉터리 “%s” 여는 중 오류 : %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "“%2$s” 파일을 읽는데 %1$lu 바이트를 할당할 수 없습니다"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "“%2$s” 파일을 읽는데 %1$s을(를) 할당할 수 없습니다"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "“%s” 파일 읽는 중 오류: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "“%s” 파일이 너무 큽니다"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "파일 “%s”에서 읽기 실패: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "파일 “%s” 열기 실패: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "파일 “%s”의 속성 가져오기 실패: fstat() 실패: %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "파일 “%s” 열기 실패: fdopen() 실패: %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "파일 “%s”의 이름을 “%s”(으)로 바꾸는데 실패: g_rename() 실패: %s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "파일 “%s” 쓰기 실패: ftruncate() 실패: %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "파일 “%s” 쓰기 실패: write() 실패: %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "파일 “%s” 쓰기 실패: fsync() 실패: %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "파일 “%s” 만들기 실패: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "기존의 “%s” 파일을 지울 수 없습니다: g_unlink() 실패: %s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "“%s” 서식이 잘못되었습니다. “%s”이(가) 들어 있으면 안 됩니다"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "“%s” 서식에 XXXXXX가 없습니다"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "심볼릭 링크 “%s” 읽기 실패: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "“%s”에서 “%s”(으)로 변환하는 변환기를 열 수 없음: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr "g_io_channel_read_line_string으로 raw 읽기를 할 수 없습니다"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "읽기 버퍼에서 변환되지 않은 데이터를 남겨둠"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "일부 문자에서 채널 끝냄"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "g_io_channel_read_to_endi로 raw 읽기를 할 수 없습니다"
 
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr "검색 디렉터리 안에 올바른 키 파일이 없습니다"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "일반 파일이 아닙니다"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5080,49 +5269,49 @@ msgstr ""
 "키 파일에 들어 있는 “%s” 줄은 키-값 쌍도 아니고, 그룹도 아니고, 주석도 아닙니"
 "다"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "잘못된 그룹 이름: %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "키 파일이 그룹으로 시작하지 않습니다"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "잘못된 키 이름: %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "키 파일에 지원하지 않는 “%s” 인코딩이 들어 있습니다"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "키 파일에 “%s” 그룹이 없습니다"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "키 파일에 있는 “%2$s” 그룹의 “%1$s” 키가 없습니다"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr "키 파일에 있는 “%s” 키와 “%s” 값은 UTF-8이 아닙니다"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
 msgstr "키 파일에 있는 “%s” 키의 값을 해석할 수 없습니다."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5131,37 +5320,37 @@ msgstr ""
 "키 파일에 해석할 수 없는 값을 지닌 “%2$s” 그룹의 “%1$s” 키가 키 파일에 있습니"
 "다."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr ""
 "%4$s 값이 있어야 할 “%2$s” 그룹의 “%1$s” 키가 “%3$s” 값을 지니고 있습니다"
 
-#: glib/gkeyfile.c:4356
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "키 파일의 줄 끝에 이스케이프 문자가 있습니다"
 
-#: glib/gkeyfile.c:4378
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr "키 파일에 잘못된 이스케이프 시퀀스 “%s”이(가) 들어 있습니다"
 
-#: glib/gkeyfile.c:4530
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "값 “%s”을(를) 숫자로 해석할 수 없습니다."
 
-#: glib/gkeyfile.c:4544
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "정수 값 “%s”이(가) 범위를 벗어났습니다"
 
-#: glib/gkeyfile.c:4577
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "값 “%s”을(를) 단정도 실수로 해석할 수 없습니다."
 
-#: glib/gkeyfile.c:4616
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "값 “%s”을(를) 불리언 값으로 해석할 수 없습니다."
@@ -5181,32 +5370,32 @@ msgstr "%s%s%s%s 매핑 실패: mmap() 실패: %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "파일 “%s” 열기 실패: dopen() 실패: %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "%d째 줄 %d 문자에서 오류: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "이름에 잘못 UTF-8 인코딩된 텍스트 — “%s” 부분이 올바르지 않습니다"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "“%s”은(는) 올바른 이름이 아닙니다"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "“%s”은(는) 올바른 이름이 아닙니다: “%c”"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "%d째 줄에서 오류: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5215,7 +5404,7 @@ msgstr ""
 "“%-.*s”의 구문 해석에 실패했습니다.  문자 참조에는 숫자를 써야 합니다 (예를 "
 "들어 &#234;) — 숫자가 너무 클 수도 있습니다"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5224,24 +5413,24 @@ msgstr ""
 "문자 참조가 세미콜론으로 끝나지 않습니다. 보통 엔티티 시작에 사용하려고 하지 "
 "않은 곳에서 & 기호를 사용한 경우입니다 — 이런 경우 &amp; 라고 쓰십시오"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "문자 참조 “%-.*s”에 대응되는 문자는 허용되지 않습니다"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "비어있는 엔티티 “&;”를 찾았습니다. 올바른 엔티티는 &amp; &quot; &lt; &gt; "
 "&apos; 입니다"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "엔티티 이름 “%-.*s”이(가) 알려져 있지 않습니다"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5250,11 +5439,11 @@ msgstr ""
 "고 하지 않은 곳에서 & 기호를 사용한 경우입니다 — 이런 경우 &amp; 라고 쓰십시"
 "오"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "문서는 요소로 시작하여야 합니다 (예 <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5263,7 +5452,7 @@ msgstr ""
 "“%s”은(는) “<” 문자 다음에 쓸 수 없습니다. 이 문자로는 요소 이름을 시작할 수 "
 "없습니다"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5271,12 +5460,12 @@ msgid ""
 msgstr ""
 "이상한 문자 “%s”.  빈 요소 “%s” 태그를 끝내는 “>” 문자가 나타나야 합니다"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "“%s” 요소에 속성이 너무 많습니다"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5284,7 +5473,7 @@ msgstr ""
 "이상한 문자 “%1$s”.  요소 “%3$s”의 속성 이름 “%2$s” 다음에 “=”이 나타나야 합"
 "니다"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5294,7 +5483,7 @@ msgstr ""
 "이상한 문자 “%s”.  요소 “%s”의 시작 태그를 끝내는 “>” 혹은 “/”가 나타나거나, "
 "속성이 나와야 합니다. 아마도 속성 이름에 잘못된 문자를 쓴 경우입니다."
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5303,7 +5492,7 @@ msgstr ""
 "이상한 문자 “%1$s”.  요소 “%3$s”의 속성 “%2$s”의 값을 부여할 때 “=” 기호 다음"
 "에 따옴표가 나타나야 합니다"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5312,7 +5501,7 @@ msgstr ""
 "“%s”은(는) “</” 다음에 쓸 수 있는 문자가 아닙니다. “%s”은(는) 요소 이름을 시"
 "작할 수 없습니다"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5321,25 +5510,25 @@ msgstr ""
 "“%s”은(는) 요소 “%s”을(를) 닫은 다음에 쓸 수 있는 문자가 아닙니다. “>” 문자"
 "를 쓸 수 있습니다"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "“%s” 요소는 닫혔고, 현재 아무 요소도 열려 있지 않습니다"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr "“%s” 요소는 닫혔고, 현재 열려 있는 요소는 “%s”입니다"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "문서가 비어있거나 공백문자만 들어 있습니다"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr "“<” 바로 다음에 문서가 갑작스럽게 끝났습니다"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5348,7 +5537,7 @@ msgstr ""
 "요소가 열려 있는 상태로 문서가 갑작스럽게 끝났습니다 — 마지막에 열려 있던 요"
 "소는 “%s”입니다"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5356,19 +5545,19 @@ msgid ""
 msgstr ""
 "문서가 갑작스럽게 끝났습니다.  <%s/> 태그를 끝내는 > 기호가 나타나야 합니다"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr "요소 이름에서 문서가 갑작스럽게 끝났습니다"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr "에트리뷰트 이름에서 문서가 갑작스럽게 끝났습니다"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr "요소의 열기 태그 안에서 문서가 갑작스럽게 끝났습니다."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5376,258 +5565,258 @@ msgstr ""
 "속성 이름 다음의 = 기호 다음에서 문서가 갑작스럽게 끝났습니다. 속성 값이 없습"
 "니다"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr "속성 값 안에서 문서가 갑작스럽게 끝났습니다"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr "“%s” 요소의 닫기 태그 안에서 문서가 갑작스럽게 끝났습니다"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr "“%s” 요소의 닫기 태그 안에서 문서가 갑작스럽게 끝났습니다"
 
 # FIXME: processing instruction?
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr "주석문 혹은 처리 안내자 태그 안에서 문서가 갑작스럽게 끝났습니다"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[옵션…]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "도움말 옵션:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "도움말 옵션을 봅니다"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "모든 도움말 옵션을 봅니다"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
-msgstr "프로그램 옵션:"
+msgstr " 옵션:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "옵션:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "%2$s에 대한 정수 값 “%1$s”을(를) 분석할 수 없습니다"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "%2$s에 대한 정수 값 “%1$s”이(가) 범위를 벗어났습니다"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "%2$s에 대한 배정도 실수 값 “%1$s”을(를) 분석할 수 없습니다"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "%2$s에 대한 배정도 실수 값 “%1$s”이(가) 범위를 벗어났습니다"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "옵션 읽는 중에 오류: %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "%s에 대한 인자가 빠졌습니다"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "알 수 없는 옵션 %s"
 
-#: glib/gregex.c:480
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "개체가 손상되었습니다"
 
-#: glib/gregex.c:482
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "메모리 부족"
 
-#: glib/gregex.c:497
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "내부 오류"
 
-#: glib/gregex.c:499
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr "패턴 안에 부분 매치에서 지원하지 않는 항목이 들어 있습니다."
 
-#: glib/gregex.c:501
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr "후위 참조를 조건으로 사용하면 부분 매치에서 지원하지 않습니다."
 
-#: glib/gregex.c:507
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "재귀 최대값에 도달했습니다"
 
-#: glib/gregex.c:509
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "오프셋이 잘못되었습니다"
 
-#: glib/gregex.c:511
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "재귀 순환"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:514
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr "일치 모드를 요청했지만 JIT 용도로 컴파일되지 않았습니다."
 
-#: glib/gregex.c:535 glib/gregex.c:1851
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "알 수 없는 오류"
 
-#: glib/gregex.c:556
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "패턴 끝에 \\"
 
-#: glib/gregex.c:560
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "패턴 끝에 \\c"
 
-#: glib/gregex.c:565
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "\\ 다음에 인식할 수 없는 문자가 있습니다"
 
-#: glib/gregex.c:569
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "{} 안의 숫자가 순서를 벗어났습니다"
 
-#: glib/gregex.c:573
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "{} 안의 숫자가 너무 큽니다"
 
-#: glib/gregex.c:577
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "문자 클래스에서 끝나는 ] 괄호가 빠졌습니다"
 
-#: glib/gregex.c:581
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "문자 클래스에서 이스케이프 시퀀스가 잘못되었습니다"
 
-#: glib/gregex.c:585
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "문자 클래스에서 범위가 순서를 벗어났습니다"
 
-#: glib/gregex.c:590
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "반복할 사항 없음"
 
-#: glib/gregex.c:594
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "(? 또는 (?- 다음에 알 수 없는 문자가 있습니다"
 
-#: glib/gregex.c:598
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr "POSIX 네임드 클래스는 클래스 안에서만 지원합니다"
 
-#: glib/gregex.c:602
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "POSIX 사전 순서 항목은 지원하지 않습니다"
 
-#: glib/gregex.c:608
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr "끝나는 ) 괄호가 없습니다"
 
-#: glib/gregex.c:612
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "없는 하위 패턴을 참조합니다"
 
-#: glib/gregex.c:616
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "주석 다음에 ) 괄호가 빠졌습니다"
 
-#: glib/gregex.c:620
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "정규식이 너무 깁니다"
 
-#: glib/gregex.c:624
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "(?( 다음에 숫자나 이름의 형식이 잘못되었습니다"
 
-#: glib/gregex.c:628
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "룩비하인드 어서션이 고정된 길이가 아닙니다"
 
-#: glib/gregex.c:632
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "조건문 그룹에 브랜치가 2개보다 많이 들어 있습니다"
 
-#: glib/gregex.c:636
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "(?( 다음에 어서션이 이와야 합니다"
 
-#: glib/gregex.c:640
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "번호를 매긴 참조는 0이 되어서는 안됩니다"
 
-#: glib/gregex.c:644
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "알 수 없는 POSIX 클래스 이름"
 
-#: glib/gregex.c:649
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "\\x{...} 시퀀스의 문자 값이 너무 큽니다"
 
-#: glib/gregex.c:653
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C는 룩비하인드 어서션에서 사용할 수 없습니다"
 
-#: glib/gregex.c:657
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "하위 패턴 이름에 끝나는 글자가 빠졌습니다"
 
-#: glib/gregex.c:661
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "이름 있는 2개의 하위 패턴의 이름이 같습니다"
 
-#: glib/gregex.c:665
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "\\P 혹은 \\p 시퀀스의 형식이 잘못되었습니다"
 
-#: glib/gregex.c:669
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "\\P 혹은 \\p 다음에 속성 이름을 알 수 없습니다"
 
-#: glib/gregex.c:673
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "하위 패턴 이름이 너무 깁니다 (최대 32글자)"
 
-#: glib/gregex.c:677
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "이름 있는 하위 패턴이 너무 많습니다 (최대 10,000개)"
 
-#: glib/gregex.c:681
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "8진수값이 \\377보다 큽니다"
 
-#: glib/gregex.c:685
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "DEFINE 그룹에 브랜치가 여러 개 들어 있습니다"
 
-#: glib/gregex.c:689
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "일관성 없는 NEWLINE 옵션"
 
-#: glib/gregex.c:693
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5635,234 +5824,234 @@ msgstr ""
 "중괄호, 각괄호, 따옴표가 붙은 이름 또는 숫자, 또는 순수한 숫자가 따라오지 않"
 "았습니다"
 
-#: glib/gregex.c:698
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "(*ACCEPT), (*FAIL), 또는 (*COMMIT)을 감안하여 인자를 허용하지 않습니다"
 
-#: glib/gregex.c:702
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB)를 인식하지 않았습니다"
 
-#: glib/gregex.c:706
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "숫자가 너무 큽니다"
 
-#: glib/gregex.c:710
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "(?& 다음에 하위 패턴 이름이 빠졌습니다"
 
-#: glib/gregex.c:714
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr "동일한 갯수의 하위 패턴에 대해 다른 이름을 허용하지 않습니다"
 
-#: glib/gregex.c:718
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK)에 인자가 있어야 합니다"
 
-#: glib/gregex.c:722
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "\\c 다음에 아스키 문자가 있어야 합니다"
 
-#: glib/gregex.c:726
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr "\\k 다음에 중괄호, 각괄호, 따옴표가 붙은 이름이 따라오지 않았습니다"
 
-#: glib/gregex.c:730
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "클래스에서 \\N을 지원하지 않습니다"
 
-#: glib/gregex.c:734
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "(*MARK), (*PRUNE), (*SKIP), 또는 (*THEN)의 이름이 너무 깁니다"
 
-#: glib/gregex.c:738 glib/gregex.c:874
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "코드 오버플로우"
 
-#: glib/gregex.c:742
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "(?P 다음에 알 수 없는 문자"
 
-#: glib/gregex.c:746
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "컴파일 작업 공간을 넘어갔습니다"
 
-#: glib/gregex.c:750
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "이전에 검사한 참조할 하위 패턴이 없습니다"
 
-#: glib/gregex.c:873 glib/gregex.c:1135 glib/gregex.c:2457
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "정규 표현식 %s을(를) 맞추는 도중 오류가 발생했습니다: %s"
 
-#: glib/gregex.c:1735
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "PCRE 라이브러리가 UTF8 지원 없이 컴파일되었습니다"
 
-#: glib/gregex.c:1743
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "비호환 옵션을 사용하여 PCRE 라이브러리 컴파일했습니다"
 
-#: glib/gregex.c:1860
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr "‘%s’ 정규 표현식을 컴파일하는 중 %s 문자에서 오류가 발생했습니다: %s"
 
-#: glib/gregex.c:2900
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "16 진수 또는 “}”가 있어야 합니다"
 
-#: glib/gregex.c:2916
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "16 진수가 있어야 합니다"
 
-#: glib/gregex.c:2956
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "심볼 참조에 “<” 기호가 없습니다"
 
-#: glib/gregex.c:2965
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "심볼 참조가 끝나지 않았습니다"
 
-#: glib/gregex.c:2972
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "심볼 참조에 내용이 없습니다"
 
-#: glib/gregex.c:2983
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "숫자가 있어야 합니다"
 
-#: glib/gregex.c:3001
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "심볼 참조가 잘못되었습니다"
 
-#: glib/gregex.c:3064
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "마지막 “\\”가 없습니다"
 
-#: glib/gregex.c:3068
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "알 수 없는 이스케이프 시퀀스"
 
-#: glib/gregex.c:3078
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr "“%s” 바꿀 문자열을 읽는 중 %lu번째 문자에서 오류가 발생했습니다: %s"
 
 # g_shell_unquote()에 쓰임.  shell의 quoted text를 raw string으로 바꾸는 기능
 # FIXME: "quoted"라는 말을 어떻게 해야 할 것인가?
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "따옴표된 텍스트가 따옴표로 시작하지 않습니다"
 
 # FIXME: 위 참조, "quoted"
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr "명령줄에서 따옴표가 맞지 않거나 셸 따옴표된 텍스트가 또 있습니다"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr "텍스트가 “\\” 문자 다음에 끝났습니다. (텍스트는 “%s”입니다)"
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "텍스트가 %c에 대응되는 따옴표가 나타나기 전에 끝났습니다. (텍스트는 “%s”입니"
 "다)"
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "텍스트가 비어 있음(또는 공백만 들어 있음)"
 
-#: glib/gspawn.c:320
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "하위 프로세스에서 데이터를 읽기 실패 (%s)"
 
-#: glib/gspawn.c:473
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr "하위 프로세스에서 데이터를 읽는 중 예상치 못한 오류 (%s)"
 
-#: glib/gspawn.c:558
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "waitpid()에서 예상치 못한 오류 (%s)"
 
-#: glib/gspawn.c:1180 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "하위 프로세스가 %ld 코드로 끝났습니다"
 
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "하위 프로세스가 %ld 시그널로 죽었습니다"
 
-#: glib/gspawn.c:1195
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "하위 프로세스가 %ld 시그널로 멈췄습니다"
 
-#: glib/gspawn.c:1202
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "하위 프로세스가 예기치 않게 끝났습니다"
 
-#: glib/gspawn.c:2032 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "하위 파이프로 부터 읽기 실패 (%s)"
 
-#: glib/gspawn.c:2404
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "하위 프로세스 “%s”을(를) 실행하기 실패 (%s)"
 
-#: glib/gspawn.c:2530
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "포크 실패 (%s)"
 
-#: glib/gspawn.c:2690 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "디렉터리 “%s”(으)로 바꾸기 실패 (%s)"
 
-#: glib/gspawn.c:2700
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "하위 프로세스 “%s”을(를) 실행하기 실패 (%s)"
 
-#: glib/gspawn.c:2710
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr "파일 디스크립터 리맵하기 위한 파일 열기 실패 (%s)"
 
-#: glib/gspawn.c:2718
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr "하위 프로세스에 대한 파일 디스크립터 복제 실패 (%s)"
 
-#: glib/gspawn.c:2727
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "하위 프로세스(%s) 생성 실패"
 
-#: glib/gspawn.c:2735
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr "하위 프로세스에 대한 파일 디스크립터 닫기 실패 (%s)"
 
-#: glib/gspawn.c:2743
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "하위 프로세스 “%s”을(를) 실행하는 중 알 수 없는 오류"
 
-#: glib/gspawn.c:2767
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr "하위 PID 파이프에서 필요한 데이터를 읽는데 실패했습니다 (%s)"
@@ -5919,78 +6108,78 @@ msgstr ""
 "하위 프로세스에서 데이터를 읽는중 g_io_channel_win32_poll()에서 예기치 못한 "
 "오류"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "빈 문자열은 숫자가 아닙니다"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "“%s”은(는) 부호 있는 숫자가 아닙니다"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "“%s” 숫자가 [%s, %s] 범위를 벗어납니다"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "“%s”은(는) 부호 없는 숫자가 아닙니다"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "URI에 잘못된 % 인코딩"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "URI에 잘못된 문자"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "URI에 UTF-8 아닌 문자"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "URI에 잘못된 IPv6 주소 ‘%.*s’"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "URI에 잘못 인코딩된 IP 주소 ‘%.*s’"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "URI에 국제화된 호스트이름 ‘%.*s’ 잘못됨"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "URI에서 포트를 (‘%.*s’) 해석할 수 없습니다"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "URI에서 포트가 (‘%.*s’) 범위를 벗어납니다"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "‘%s’ URI는 절대 URI가 아닙니다"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "URI ‘%s’에 호스트 구성 요소가 없습니다"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "URI가 절대 URI가 아니고, 기준 URI를 제공하지 않았습니다"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "‘=’ 및 파라미터 값이 없습니다"
 
@@ -6071,65 +6260,65 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "kb"
+msgid "kbit"
+msgstr "kbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "Mb"
+msgid "Mbit"
+msgstr "Mbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "Gb"
+msgid "Gbit"
+msgstr "Gbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "Tb"
+msgid "Tbit"
+msgstr "Tbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "Pb"
+msgid "Pbit"
+msgstr "Pbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "Eb"
+msgid "Ebit"
+msgstr "Ebit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "Kib"
+msgid "Kibit"
+msgstr "Kibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "Mib"
+msgid "Mibit"
+msgstr "Mibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "Gib"
+msgid "Gibit"
+msgstr "Gibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "Tib"
+msgid "Tibit"
+msgstr "Tibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "Pib"
+msgid "Pibit"
+msgstr "Pibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "Eib"
+msgid "Eibit"
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6229,6 +6418,46 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~ msgid ""
+#~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
+#~ msgstr "METHOD_CALL 메시지: REPLY_SERIAL 헤더 필드가 없거나 잘못되었습니다"
+
+#~ msgid "kb"
+#~ msgstr "kb"
+
+#~ msgid "Mb"
+#~ msgstr "Mb"
+
+#~ msgid "Gb"
+#~ msgstr "Gb"
+
+#~ msgid "Tb"
+#~ msgstr "Tb"
+
+#~ msgid "Pb"
+#~ msgstr "Pb"
+
+#~ msgid "Eb"
+#~ msgstr "Eb"
+
+#~ msgid "Kib"
+#~ msgstr "Kib"
+
+#~ msgid "Mib"
+#~ msgstr "Mib"
+
+#~ msgid "Gib"
+#~ msgstr "Gib"
+
+#~ msgid "Tib"
+#~ msgstr "Tib"
+
+#~ msgid "Pib"
+#~ msgstr "Pib"
+
+#~ msgid "Eib"
+#~ msgstr "Eib"
+
 #~ msgid "GApplication options"
 #~ msgstr "GApplication 옵션"
 
index df1a13a..ec8316e 100644 (file)
--- a/po/lv.po
+++ b/po/lv.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
 "Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
-"POT-Creation-Date: 2024-02-14 09:23+0000\n"
-"PO-Revision-Date: 2024-02-25 13:01+0200\n"
+"POT-Creation-Date: 2024-03-01 12:22+0000\n"
+"PO-Revision-Date: 2024-03-08 23:36+0200\n"
 "Last-Translator: Rūdolfs Mazurs <rudolfs.mazurs@gmail.com>\n"
 "Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
 "Language: lv\n"
@@ -57,7 +57,6 @@ msgid "Override the application’s ID"
 msgstr "Pārrakstīt lietotnes ID"
 
 #: gio/gapplication.c:575
-#| msgid "List applications"
 msgid "Print the application version"
 msgstr "Rādīt lietotnes versiju"
 
@@ -128,7 +127,7 @@ msgid "APPID"
 msgstr "LIETID"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:259
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "KOMANDA"
 
@@ -140,9 +139,13 @@ msgstr "Komanda, lai drukātu detalizētu palīdzību priekš"
 msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr "Lietotnes identifikators D-Bus formātā(piemēram: org.example.viewer)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
 #: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "DATNE"
 
@@ -583,14 +586,15 @@ msgstr "Atcelts caur GDBusAuthObserver::authorize-authenticated-peer"
 #: gio/gdbusauthmechanismsha1.c:307
 #, c-format
 msgid "Error when getting information for directory “%s”: %s"
-msgstr "Kļūda, saņemot informāciju par mapi “%s” — %s"
+msgstr "Kļūda, saņemot informāciju par direktoriju “%s” — %s"
 
 #: gio/gdbusauthmechanismsha1.c:322
 #, c-format
 msgid ""
 "Permissions on directory “%s” are malformed. Expected mode 0700, got 0%o"
 msgstr ""
-"Atļaujas mapei “%s” ir slikti formatētas. Gaidīja režīmu 0700, saņēma 0%o"
+"Atļaujas direktorijam “%s” ir slikti formatētas. Gaidīja režīmu 0700, saņēma"
+" 0%o"
 
 #: gio/gdbusauthmechanismsha1.c:355 gio/gdbusauthmechanismsha1.c:366
 #, c-format
@@ -774,8 +778,6 @@ msgstr ""
 
 #: gio/gdbusmessage.c:1374
 #, c-format
-#| msgid ""
-#| "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
 msgid "%s message: %s header field is missing or invalid"
 msgstr "%s ziņojums — %s galvenes lauks ir nederīgs vai arī tas nav atrasts"
 
@@ -786,30 +788,21 @@ msgstr "%s ziņojums — ir sniegts NEDERĪGS galvenes lauks"
 
 #: gio/gdbusmessage.c:1424
 #, c-format
-#| msgid ""
-#| "SIGNAL message: The PATH header field is using the reserved value /org/"
-#| "freedesktop/DBus/Local"
 msgid ""
 "%s message: PATH header field is using the reserved value /org/freedesktop/"
 "DBus/Local"
 msgstr ""
-"%s ziņojums — PATH galvenes datne izmanto rezervēto vērtību /org/"
-"freedesktop/DBus/Local"
+"%s ziņojums — PATH galvenes datne izmanto rezervēto vērtību /org/freedesktop/"
+"DBus/Local"
 
 #: gio/gdbusmessage.c:1437
 #, c-format
-#| msgid ""
-#| "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or "
-#| "invalid"
 msgid ""
 "%s message: INTERFACE header field does not contain a valid interface name"
 msgstr "%s ziņojums — galvene INTERFACE nesatur derīgu saskarnes nosaukumu"
 
 #: gio/gdbusmessage.c:1446
 #, c-format
-#| msgid ""
-#| "SIGNAL message: The INTERFACE header field is using the reserved value "
-#| "org.freedesktop.DBus.Local"
 msgid ""
 "%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
@@ -819,17 +812,12 @@ msgstr ""
 
 #: gio/gdbusmessage.c:1459
 #, c-format
-#| msgid ""
-#| "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
 msgid "%s message: MEMBER header field does not contain a valid member name"
 msgstr ""
 "%s ziņojums — MEMBER galvenes lauks nesatur derīgu dalībnieka nosaukumu"
 
 #: gio/gdbusmessage.c:1472
 #, c-format
-#| msgid ""
-#| "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or "
-#| "invalid"
 msgid "%s message: ERROR_NAME header field does not contain a valid error name"
 msgstr ""
 "%s ziņojums — ERROR_NAME galvenes lauks nesatur derīgu kļūdas nosaukumu"
@@ -1082,9 +1070,9 @@ msgid ""
 msgstr ""
 "Komandas:\n"
 "  help         Rāda šo informāciju\n"
-"  introspect   Introspektēt attālinātu objektu\n"
-"  monitor      Pārraudzīt attālinātu objektu\n"
-"  call         Izsaukt metodi uz attālināta objekta\n"
+"  introspect   Introspektēt attālu objektu\n"
+"  monitor      Pārraudzīt attālu objektu\n"
+"  call         Izsaukt metodi uz attāla objekta\n"
 "  emit         Izplatīt signālu\n"
 "  wait         Gaidīt līdz parādīsies kopnes nosaukums\n"
 "\n"
@@ -1125,6 +1113,10 @@ msgstr "Savienoties ar sesijas kopni"
 msgid "Connect to given D-Bus address"
 msgstr "Savienoties ar doto D-Bus adresi"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADRESE"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Savienojuma galapunktu opcijas:"
@@ -1242,7 +1234,7 @@ msgstr "Atļaut interaktīvu pilnvarošanu"
 
 #: gio/gdbus-tool.c:947
 msgid "Invoke a method on a remote object."
-msgstr "Izsaukt metodi uz attālināta objekta."
+msgstr "Izsaukt metodi uz attāla objekta."
 
 #: gio/gdbus-tool.c:1019 gio/gdbus-tool.c:1853 gio/gdbus-tool.c:2093
 msgid "Error: Destination is not specified\n"
@@ -1294,7 +1286,7 @@ msgstr "Tikai drukāšanas īpašības"
 
 #: gio/gdbus-tool.c:1788
 msgid "Introspect a remote object."
-msgstr "Veikt introspekciju attālinātam objektam."
+msgstr "Veikt introspekciju attālam objektam."
 
 #: gio/gdbus-tool.c:1994
 msgid "Destination name to monitor"
@@ -1306,7 +1298,7 @@ msgstr "Objekta ceļš uz pārraugu"
 
 #: gio/gdbus-tool.c:2020
 msgid "Monitor a remote object."
-msgstr "Pārraudzīt attālinātu objektu."
+msgstr "Pārraudzīt attālu objektu."
 
 #: gio/gdbus-tool.c:2078
 msgid "Error: can’t monitor a non-message-bus connection\n"
@@ -1466,11 +1458,11 @@ msgstr "Saturošais montējums neeksistē"
 
 #: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
-msgstr "Nevar kopēt virsū mapei"
+msgstr "Nevar kopēt virsū direktorijam"
 
 #: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
-msgstr "Nevar uzkopēt mapi virsū mapei"
+msgstr "Nevar uzkopēt mapi virsū direktorijam"
 
 #: gio/gfile.c:2718
 msgid "Target file exists"
@@ -1478,7 +1470,7 @@ msgstr "Mērķa datne eksistē"
 
 #: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
-msgstr "Nevar rekursīvi kopēt mapi"
+msgstr "Nevar rekursīvi kopēt direktoriju"
 
 #: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
@@ -1508,7 +1500,6 @@ msgstr "Kopēšana (reflink/clone) nav atbalstīta vai nenostrādāja"
 
 #: gio/gfile.c:3384 gio/gfile.c:3395
 #, c-format
-#| msgid "Unset given attribute"
 msgid "Cannot retrieve attribute %s"
 msgstr "Nevar saņemt atribūtu %s"
 
@@ -1520,7 +1511,7 @@ msgstr "Nevar kopēt īpašu datni"
 msgid "Invalid symlink value given"
 msgstr "Ir dota nederīga simboliskās saites vērtība"
 
-#: gio/gfile.c:4342 glib/gfileutils.c:2399
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Simboliskās saites nav atbalstītas"
 
@@ -1742,11 +1733,11 @@ msgstr "Iegūt vai iestatīt apdarinātāju priekš mimetype"
 
 #: gio/gio-tool.c:238
 msgid "Create directories"
-msgstr "Izveidot mapes"
+msgstr "Izveidot direktorijus"
 
 #: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
-msgstr "Pārraudzīt datnes un mapes pēc izmaiņām"
+msgstr "Pārraudzīt, vai nav izmaiņu datnēs un direktorijos"
 
 #: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
@@ -1762,7 +1753,7 @@ msgstr "Atver datnes ar noklusējuma lietotni"
 
 #: gio/gio-tool.c:243
 msgid "Rename a file"
-msgstr "Pārsaukt datni"
+msgstr "Pārdēvēt datni"
 
 #: gio/gio-tool.c:244
 msgid "Delete one or more files"
@@ -1778,7 +1769,7 @@ msgstr "Iestatīt datnes atribūtu"
 
 #: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
-msgstr "Pārvietot datnes vai mapes uz miskasti"
+msgstr "Pārvietot datnes vai direktorijus uz miskasti"
 
 #: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
@@ -1830,7 +1821,7 @@ msgstr "Nav dotas atrašanās vietas"
 
 #: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
-msgstr "Nav mērķa mapes"
+msgstr "Nav mērķa direktorija"
 
 #: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
@@ -1857,7 +1848,6 @@ msgid "Use default permissions for the destination"
 msgstr "Lietot noklusējuma atļaujas mērķim"
 
 #: gio/gio-tool-copy.c:53
-#| msgid "Use default permissions for the destination"
 msgid "Use default file modification timestamps for the destination"
 msgstr "Lietot noklusējuma datnes modifikācijas laika spiedogu mērķim"
 
@@ -1894,7 +1884,7 @@ msgstr ""
 #: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
-msgstr "Mērķis %s nav mape"
+msgstr "Mērķis %s nav direktorijs"
 
 #: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
@@ -2131,11 +2121,11 @@ msgstr "Neizdevās iestatīt “%s” kā noklusējuma apdarinātāju priekš 
 
 #: gio/gio-tool-mkdir.c:33
 msgid "Create parent directories"
-msgstr "Izveidot vecākmapes"
+msgstr "Izveidot vecāka direktoriju"
 
 #: gio/gio-tool-mkdir.c:54
 msgid "Create directories."
-msgstr "Izveidot mapes."
+msgstr "Izveidot direktorijus."
 
 #: gio/gio-tool-mkdir.c:56
 msgid ""
@@ -2150,7 +2140,7 @@ msgstr ""
 
 #: gio/gio-tool-monitor.c:39
 msgid "Monitor a directory (default: depends on type)"
-msgstr "Pārraudzīt mapi (noklusējuma: atkarīgs no tipa)"
+msgstr "Pārraudzīt direktoriju (noklusējuma: atkarīgs no tipa)"
 
 #: gio/gio-tool-monitor.c:41
 msgid "Monitor a file (default: depends on type)"
@@ -2168,7 +2158,7 @@ msgstr "Pārrauga datni tieši, bet neziņo par izmaiņām"
 #: gio/gio-tool-monitor.c:47
 msgid "Report moves and renames as simple deleted/created events"
 msgstr ""
-"Ziņot par pārvietošanām un pārsaukšanām kā par vienkāršiem dzēsts/izveidots "
+"Ziņot par pārvietošanām un pārdēvēšanām kā par vienkāršiem dzēsts/izveidots "
 "notikumiem"
 
 #: gio/gio-tool-monitor.c:49
@@ -2177,7 +2167,7 @@ msgstr "Novērot montēšanas notikumus"
 
 #: gio/gio-tool-monitor.c:211
 msgid "Monitor files or directories for changes."
-msgstr "Pārraudzīt datnes vai mapes pēc izmaiņām."
+msgstr "Pārraudzīt, vai nav izmaiņu datnēs vai direktorijos."
 
 #: gio/gio-tool-mount.c:65
 msgid "Mount as mountable"
@@ -2290,7 +2280,7 @@ msgstr ""
 #: gio/gio-tool-move.c:145
 #, c-format
 msgid "Target %s is not a directory"
-msgstr "Mērķis %s nav mape"
+msgstr "Mērķis %s nav direktorijs"
 
 #: gio/gio-tool-open.c:77
 msgid ""
@@ -2314,7 +2304,7 @@ msgstr "NOSAUKUMS"
 
 #: gio/gio-tool-rename.c:52
 msgid "Rename a file."
-msgstr "Pārsaukt datni."
+msgstr "Pārdēvēt datni."
 
 #: gio/gio-tool-rename.c:72
 msgid "Missing argument"
@@ -2327,7 +2317,7 @@ msgstr "Pārāk daudz argumentu"
 #: gio/gio-tool-rename.c:97
 #, c-format
 msgid "Rename successful. New uri: %s\n"
-msgstr "Pārsaukšana veiksmīga. Jaunais uri: %s\n"
+msgstr "Pārdēvēšana veiksmīga. Jaunais uri — %s\n"
 
 #: gio/gio-tool-save.c:52
 msgid "Only create if not existing"
@@ -2447,7 +2437,7 @@ msgstr "Nevar pārvietot datni uz tās sākotnējo vietu: "
 
 #: gio/gio-tool-trash.c:227
 msgid "Move/Restore files or directories to the trash."
-msgstr "Pārvietot/atjaunot datnes vai mapes uz miskasti."
+msgstr "Pārvietot/atjaunot datnes vai direktoriju uz miskasti."
 
 #: gio/gio-tool-trash.c:229
 msgid ""
@@ -2467,7 +2457,7 @@ msgstr "Sekot simboliskajām saitēm, montējumiem un saīsnēm"
 
 #: gio/gio-tool-tree.c:251
 msgid "List contents of directories in a tree-like format."
-msgstr "Uzskaitīt mapju saturu kokam līdzīgā formātā."
+msgstr "Uzskaitīt direktoriju saturu kokam līdzīgā formātā."
 
 #: gio/glib-compile-resources.c:142 gio/glib-compile-schemas.c:1514
 #, c-format
@@ -2487,12 +2477,12 @@ msgstr "Datne %s resursā parādās vairākas reizes"
 #: gio/glib-compile-resources.c:247
 #, c-format
 msgid "Failed to locate “%s” in any source directory"
-msgstr "Neizdevās atrast “%s” nevienā avotu mapē"
+msgstr "Neizdevās atrast “%s” nevienā avotu direktorijā"
 
 #: gio/glib-compile-resources.c:258
 #, c-format
 msgid "Failed to locate “%s” in current directory"
-msgstr "Neizdevās atrast “%s” pašreizējā mapē"
+msgstr "Neizdevās atrast “%s” pašreizējā direktorijā"
 
 #: gio/glib-compile-resources.c:292
 #, c-format
@@ -2539,13 +2529,14 @@ msgid ""
 "The directories to load files referenced in FILE from (default: current "
 "directory)"
 msgstr ""
-"Direktorijas, no kurām nolasīt datnes, kas ir norādītas DATNE (pēc "
-"noklusējuma pašreizējā direktorija)"
+"Direktoriji, no kuriem nolasīt datnes, kas ir norādītas DATNE (pēc "
+"noklusējuma pašreizējais direktorijs)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
-msgstr "MAPE"
+msgstr "DIREKTORIJS"
 
 #: gio/glib-compile-resources.c:824
 msgid ""
@@ -2591,6 +2582,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "C identifikatora nosaukums veidotajam pirmkodam"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFIKATORS"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Mērķa C kompilators (noklusējuma ir CC vides mainīgais)"
@@ -3069,7 +3064,7 @@ msgstr ""
 
 #: gio/glib-compile-schemas.c:2238
 msgid "You should give exactly one directory name"
-msgstr "Jums jānorāda tieši viens mapes nosaukums"
+msgstr "Jums jānorāda tieši viens direktorija nosaukums"
 
 #: gio/glib-compile-schemas.c:2285
 msgid "No schema files found: doing nothing."
@@ -3100,7 +3095,7 @@ msgstr "Saturošais montējums priekš datnes %s nav atrasts"
 
 #: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
-msgstr "Nevar pārsaukt saknes mapi"
+msgstr "Nevar pārdēvēt saknes direktoriju"
 
 #: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
@@ -3109,7 +3104,7 @@ msgstr "Kļūda, pārsaucot datni %s — %s"
 
 #: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
-msgstr "Nevar pārsaukt datni; datnes nosaukums jau eksistē"
+msgstr "Nevar pārdēvēt datni; datnes nosaukums jau eksistē"
 
 #: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
 #: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
@@ -3139,7 +3134,7 @@ msgstr "Nevar izveidot miskastes direktoriju %s — %s"
 #: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
-msgstr "Nevar atrast augšējā līmeņa mapi, lai izmestu miskastē %s"
+msgstr "Nevar atrast augšējā līmeņa direktoriju, lai izmestu miskastē %s"
 
 #: gio/glocalfile.c:2096
 #, c-format
@@ -3174,7 +3169,7 @@ msgstr "Nevar izmest miskastē datni %s"
 #: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
-msgstr "Kļūda, veidojot mapi %s — %s"
+msgstr "Kļūda, veidojot direktoriju %s — %s"
 
 #: gio/glocalfile.c:2446
 #, c-format
@@ -3193,7 +3188,7 @@ msgstr "Kļūda, pārvietojot datni %s — %s"
 
 #: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
-msgstr "Nevar pārvietot mapi virsū mapei"
+msgstr "Nevar pārvietot direktoriju pa virsu direktorijam"
 
 #: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
@@ -3400,7 +3395,7 @@ msgstr "Kļūda, atverot datni “%s” — %s"
 
 #: gio/glocalfileoutputstream.c:959
 msgid "Target file is a directory"
-msgstr "Mērķa datne ir mape"
+msgstr "Mērķa datne ir direktorijs"
 
 #: gio/glocalfileoutputstream.c:973
 msgid "Target file is not a regular file"
@@ -3594,7 +3589,7 @@ msgstr "Resursa datnes nevar pārdēvēt"
 #: gio/gresourcefile.c:753
 #, c-format
 msgid "The resource at “%s” is not a directory"
-msgstr "Resurss pie “%s” nav mape"
+msgstr "Resurss pie “%s” nav direktorijs"
 
 #: gio/gresourcefile.c:961
 msgid "Input stream doesn’t implement seek"
@@ -3870,7 +3865,7 @@ msgid ""
 msgstr ""
 "Lietojums:\n"
 "  gsettings --version\n"
-"  gsettings [--schemadir SHĒMAS_MAPE] KOMANDA [ARGUMENTI…]\n"
+"  gsettings [--schemadir SHĒMAS_DIR] KOMANDA [ARGUMENTI…]\n"
 "\n"
 "Commands:\n"
 "  help                      Rāda šo informāciju\n"
@@ -3901,14 +3896,14 @@ msgid ""
 "\n"
 msgstr ""
 "Lietojums:\n"
-"  gsettings [--schemadir SHĒMAS_MAPE] %s %s\n"
+"  gsettings [--schemadir SHĒMAS_DIR] %s %s\n"
 "\n"
 "%s\n"
 "\n"
 
 #: gio/gsettings-tool.c:716
 msgid "  SCHEMADIR A directory to search for additional schemas\n"
-msgstr "  SHĒMAS_MAPE Mape, kurā meklēt papildu shēmas\n"
+msgstr "  SHĒMAS_DIR direktorijs, kurā meklēt papildu shēmas\n"
 
 #: gio/gsettings-tool.c:724
 msgid ""
@@ -4002,7 +3997,7 @@ msgstr "nevarēja iegūt lokālo adresi — %s"
 #: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
-msgstr "nevarēja iegūt attālināto adresi — %s"
+msgstr "nevarēja iegūt attālo adresi — %s"
 
 #: gio/gsocket.c:2179
 #, c-format
@@ -4520,6 +4515,161 @@ msgstr "Palaist dbus servisu"
 msgid "Wrong args\n"
 msgstr "Nepareizi parametri\n"
 
+#: girepository/compiler/compiler.c:93
+#, c-format
+#| msgid "Failed to open file “%s”: %s"
+msgid "Failed to open ‘%s’: %s"
+msgstr "Neizdevās atvērt “%s” — %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+#| msgid "Could not create network monitor: %s"
+msgid "Error: Could not write the whole output: %s"
+msgstr "Kļūda: neizdevās rakstīt visu izvadi — %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+#| msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Kļūda: neizdevās pārdēvēt “%s” uz “%s” — %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "GIR meklēšanas ceļā iekļaut direktorijus"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Izvaddatne"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Koplietota bibliotēka"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Rādīt atkļūdošanas ziņojumus"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Rādīt detalizētus ziņojumus"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+#| msgid "Show program version and exit"
+msgid "Show program’s version number and exit"
+msgstr "Rādīt programmas versijas numuru un iziet"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+#| msgid "Error parsing parameter %d: %s\n"
+msgid "Error parsing arguments: %s"
+msgstr "Kļūda, parsējot  argumentus — %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Lūdzu, norādiet tieši vienu ievaddatni"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+#| msgid "Error opening file “%s”: %s"
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Kļūda, parsējot datni “%s” — %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+#| msgid "Failed to load info for handler “%s”"
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Neizdevās uzbūvēt typelib modulim “%s”"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+#| msgid "Unable to load ‘%s‘: %s"
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Nederīgs typelib modulim “%s” — %s"
+
+#: girepository/decompiler/decompiler.c:54
+#| msgid "Show extra information"
+msgid "Show all available information"
+msgstr "Rādīt visu pieejamo informāciju"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+#| msgid "Failed to fork (%s)"
+msgid "Failed to parse: %s"
+msgstr "Neizdevās parsēt — %s"
+
+#: girepository/decompiler/decompiler.c:87
+#| msgid "Show hidden files"
+msgid "No input files"
+msgstr "Nav ievaddatņu"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+#| msgid "Failed to create file “%s”: %s"
+msgid "Failed to read ‘%s’: %s"
+msgstr "Neizdevās lasīt “%s” — %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+#| msgid "Failed to create file “%s”: %s"
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Neizdevās izveidot typelib “%s” — %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+#| msgid "Failed to create temp file: %s"
+msgid "Failed to load typelib: %s"
+msgstr "Neizdevās ielādēt typelib — %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Brīdinājums: %u moduļi netika iekļauti"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Typelib versija, kuru izpētīt"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSIJA"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Saraksts ar koplietošanas bibliotēkām, kuras pieprasa typelib"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Saraksts ar citām typelibs, kuras pieprasa izpētītais typelib"
+
+#: girepository/inspector/inspector.c:75
+#| msgid "The attributes to get"
+msgid "The typelib to inspect"
+msgstr "typelib, kuru izpētīt"
+
+#: girepository/inspector/inspector.c:75
+#| msgid "NAME"
+msgid "NAMESPACE"
+msgstr "VĀRDTELPA"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Izpētīt GI typelib"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+#| msgid "Failed to read from file “%s”: %s"
+msgid "Failed to parse command line options: %s"
+msgstr "Neizdevās parsēt komandrindas opcijas — %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Lūdzu, norādiet tieši vienu vārdtelpu"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Lūdzu, norādiet --print-shlibs, --print-typelibs vai abus"
+
 #: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
@@ -5060,86 +5210,87 @@ msgstr "PM"
 msgid "Error opening directory “%s”: %s"
 msgstr "Kļūda, atverot direktoriju “%s” — %s"
 
-#: glib/gfileutils.c:716 glib/gfileutils.c:820
-#| msgid "Could not connect: "
-msgid "Could not allocate %"
-msgid_plural "Could not allocate %"
-msgstr[0] "Nevarēja piešķirt %"
-msgstr[1] "Nevarēja piešķirt %"
-msgstr[2] "Nevarēja piešķirt %"
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
+#, c-format
+#| msgid "Could not allocate %lu byte to read file “%s”"
+#| msgid_plural "Could not allocate %lu bytes to read file “%s”"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Nevarēja piešķirt %s, lai nolasītu datni “%s”"
 
-#: glib/gfileutils.c:733
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Kļūda, nolasot datni “%s” — %s"
 
-#: glib/gfileutils.c:769 glib/gfileutils.c:803
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Datne “%s” ir pārāk liela"
 
-#: glib/gfileutils.c:845
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Neizdevās nolasīt no datnes “%s” — %s"
 
-#: glib/gfileutils.c:895 glib/gfileutils.c:970 glib/gfileutils.c:1477
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Neizdevās atvērt datni “%s” — %s"
 
-#: glib/gfileutils.c:908
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "Neizdevās dabūt datnes “%s” atribūtus — fstat() neizdevās — %s"
 
-#: glib/gfileutils.c:939
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Neizdevās atvērt “%s” — fdopen() neizdevās — %s"
 
-#: glib/gfileutils.c:1040
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
-msgstr "Neizdevās pārsaukt datni “%s” uz “%s” — g_rename() neizdevās — %s"
+msgstr "Neizdevās pārdēvēt datni “%s” uz “%s” — g_rename() neizdevās — %s"
 
-#: glib/gfileutils.c:1139
+#: glib/gfileutils.c:1149
 #, c-format
-#| msgid "Failed to write file “%s”: write() failed: %s"
 msgid "Failed to write file “%s”: ftruncate() failed: %s"
 msgstr "Neizdevās rakstīt datnē “%s” — ftruncate() neizdevās — %s"
 
-#: glib/gfileutils.c:1184
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Neizdevās rakstīt datnē “%s” — write() neizdevās — %s"
 
-#: glib/gfileutils.c:1205
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Neizdevās rakstīt datnē “%s” — fsync() neizdevās — %s"
 
-#: glib/gfileutils.c:1366 glib/gfileutils.c:1783
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Neizdevās izveidot datni “%s” — %s"
 
-#: glib/gfileutils.c:1411
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "Nevarēja izdzēst esošo datni “%s” — g_unlink() neizdevās — %s"
 
-#: glib/gfileutils.c:1748
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Veidne “%s” ir nepareiza, nedrīkstētu saturēt “%s”"
 
-#: glib/gfileutils.c:1761
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Veidne “%s” nesatur XXXXXX"
 
-#: glib/gfileutils.c:2355 glib/gfileutils.c:2384
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Neizdevās nolasīt simbolisko saiti “%s” — %s"
@@ -6003,7 +6154,7 @@ msgstr "Nederīga virkne vidē — %s"
 #: glib/gspawn-win32.c:936
 #, c-format
 msgid "Invalid working directory: %s"
-msgstr "Nederīga darba mape — %s"
+msgstr "Nederīgs darba direktorijs — %s"
 
 #: glib/gspawn-win32.c:1001
 #, c-format
@@ -6337,19 +6488,19 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~| msgid "Could not connect: "
+#~ msgid "Could not allocate %"
+#~ msgid_plural "Could not allocate %"
+#~ msgstr[0] "Nevarēja piešķirt %"
+#~ msgstr[1] "Nevarēja piešķirt %"
+#~ msgstr[2] "Nevarēja piešķirt %"
+
 #~| msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
 #~ msgid ""
 #~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
 #~ msgstr ""
 #~ "METHOD_RETURN ziņojums — trūkst vai nav derīga REPLY_SERIAL galvenes lauks"
 
-#, c-format
-#~ msgid "Could not allocate %lu byte to read file “%s”"
-#~ msgid_plural "Could not allocate %lu bytes to read file “%s”"
-#~ msgstr[0] "Nevarēja piešķirt %lu baitu, lai nolasītu datni “%s”"
-#~ msgstr[1] "Nevarēja atrast %lu baitus, lai nolasītu datni “%s”"
-#~ msgstr[2] "Nevarēja atrast %lu baitus, lai nolasītu datni “%s”"
-
 #~ msgid "kb"
 #~ msgstr "kb"
 
@@ -6565,9 +6716,6 @@ msgstr "%.1f EB"
 #~ msgid "Mounted %s at %s\n"
 #~ msgstr "Montēja %s pie %s\n"
 
-#~ msgid "Failed to create temp file: %s"
-#~ msgstr "Neizdevās izveidot pagaidu datni — %s"
-
 #~ msgid "; ignoring override for this key.\n"
 #~ msgstr "; ignorē pārrakstīšanu šai atslēgai.\n"
 
@@ -6580,3 +6728,4 @@ msgstr "%.1f EB"
 #~ msgid "doing nothing.\n"
 #~ msgstr "neko nedarīt.\n"
 
+
index 06a1134..b45379c 100644 (file)
--- a/po/pl.po
+++ b/po/pl.po
@@ -1,20 +1,20 @@
 # Polish translation for glib.
-# Copyright © 2002-2023 the glib authors.
+# Copyright © 2002-2024 the glib authors.
 # This file is distributed under the same license as the glib package.
 # Zbigniew Chyla <chyla@alice.ci.pwr.wroc.pl>, 2002-2003.
 # Artur Flinta <aflinta@at.kernel.pl>, 2003-2006.
 # Tomasz Kłoczko <kloczek@rudy.mif.pg.gda.pl>, 2005.
 # Wadim Dziedzic <wdziedzic@aviary.pl>, 2007-2009.
 # Tomasz Dominikowski <dominikowski@gmail.com>, 2008-2009.
-# Piotr Drąg <piotrdrag@gmail.com>, 2009-2023.
-# Aviary.pl <community-poland@mozilla.org>, 2007-2023.
+# Piotr Drąg <piotrdrag@gmail.com>, 2009-2024.
+# Aviary.pl <community-poland@mozilla.org>, 2007-2024.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-08-31 20:16+0000\n"
-"PO-Revision-Date: 2023-09-02 15:38+0200\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-03-01 12:22+0000\n"
+"PO-Revision-Date: 2024-03-14 14:45+0100\n"
 "Last-Translator: Piotr Drąg <piotrdrag@gmail.com>\n"
 "Language-Team: Polish <community-poland@mozilla.org>\n"
 "Language: pl\n"
@@ -46,36 +46,40 @@ msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr ""
 "Odnalezienie domyślnego programu dla schematu URI „%s” się nie powiodło"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "Opcje GApplication:"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Wyświetla opcje GApplication"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr "Przechodzi do trybu usługi GApplication (używane z plików usług D-Bus)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Zastępuje identyfikator programu"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Wyświetla wersję programu"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Zastępuje działające wystąpienie"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Wyświetla pomoc"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[POLECENIE]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Wyświetla wersję"
 
@@ -130,7 +134,7 @@ msgid "APPID"
 msgstr "IDENTYFIKATOR-PROGRAMU"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "POLECENIE"
 
@@ -144,9 +148,13 @@ msgstr ""
 "Identyfikator programu w formacie usługi D-Bus (np. org.przykład."
 "przeglądarka)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "PLIK"
 
@@ -171,7 +179,7 @@ msgstr "PARAMETR"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Opcjonalny parametr do wywołania działania w formacie GVariant"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -185,12 +193,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Użycie:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Parametry:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[PARAMETRY…]"
 
@@ -283,78 +291,78 @@ msgstr ""
 "nierozpoznane polecenie: %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "Za duża wartość licznika przekazana do %s"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Szukanie nie jest obsługiwane przez podstawowy potok"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "Nie można skrócić GBufferedInputStream"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "Potok jest już zamknięty"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "Skracanie nie jest dozwolone na podstawowym potoku"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "Działanie zostało anulowane"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Nieprawidłowy obiekt, nie zainicjowano"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Niepełna sekwencja wielu bajtów na wejściu"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Brak wystarczającej ilości miejsca w miejscu docelowym"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Nieprawidłowa sekwencja bajtów na wejściu konwersji"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Błąd podczas konwersji: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Zainicjowanie, które można anulować nie jest obsługiwane"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "Konwersja z zestawu znaków „%s” na zestaw „%s” nie jest obsługiwana"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Nie można otworzyć konwertera z „%s” na „%s”"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "Typ %s"
@@ -368,44 +376,44 @@ msgstr "Nieznany typ"
 msgid "%s filetype"
 msgstr "Typ pliku %s"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials zawiera nieprawidłowe dane"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials nie jest zaimplementowane w tym systemie operacyjnym"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Platforma nie obsługuje GCredentials"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr ""
 "GCredentials nie zawiera identyfikatora procesu w tym systemie operacyjnym"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr ""
 "Fałszowanie danych uwierzytelniających nie jest możliwe w tym systemie "
 "operacyjnym"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "Nieoczekiwany, przedwczesny koniec potoku"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "Nieobsługiwany klucz „%s” we wpisie adresu „%s”"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr "Para klucz/wartość we wpisie adresu „%s” nie ma znaczenia"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -414,28 +422,28 @@ msgstr ""
 "Adres „%s” jest nieprawidłowy (wymaga dokładnie jednej ścieżki, katalogu, "
 "katalogu tymczasowego lub kluczy abstrakcyjnych)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Błąd w adresie „%s” — atrybut „%s” jest błędnie sformatowany"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Nieznany lub nieobsługiwany transport „%s” dla adresu „%s”"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "Element adresu „%s” nie zawiera dwukropka (:)"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr "Nazwa transportu w elemencie adresu „%s” nie może być pusta"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -444,7 +452,7 @@ msgstr ""
 "Para klucz/wartość %d, „%s” w elemencie adresu „%s” nie zawiera znaku "
 "równości"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
@@ -452,7 +460,7 @@ msgstr ""
 "Para klucz/wartość %d, „%s” w elemencie adresu „%s” nie może mieć pustego "
 "klucza"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -461,7 +469,7 @@ msgstr ""
 "Błąd podczas usuwania znaku sterującego klucza lub wartości w parze klucz/"
 "wartość %d, „%s” w elemencie adresu „%s”"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -470,85 +478,85 @@ msgstr ""
 "Błąd w adresie „%s” — transport systemu UNIX wymaga ustawienia dokładnie "
 "jednego z kluczy „path” lub „abstract”"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr ""
 "Błąd w adresie „%s” — brak atrybutu komputera lub jest błędnie sformatowany"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr ""
 "Błąd w adresie „%s” — brak atrybutu portu lub jest błędnie sformatowany"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Błąd w adresie „%s” — brak atrybutu pliku nonce lub jest błędnie sformatowany"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "Błąd podczas automatycznego uruchamiania: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "Błąd podczas otwierania pliku nonce „%s”: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Błąd podczas odczytywania pliku nonce „%s”: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr ""
 "Błąd podczas odczytywania pliku nonce „%s”, oczekiwano 16 bajtów, otrzymano "
 "%d"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr "Błąd podczas zapisywania zawartości pliku nonce „%s” do potoku:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "Podany adres jest pusty"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr ""
 "Nie można wywołać magistrali komunikatów, kiedy AT_SECURE jest ustawione"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr ""
 "Nie można wywołać magistrali komunikatów bez identyfikatora komputera: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr ""
 "Nie można automatycznie uruchomić usługi D-Bus bez zmiennej $DISPLAY "
 "środowiska X11"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Błąd podczas wywoływania wiersza poleceń „%s”: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Nie można ustalić adresu magistrali sesji (nie jest zaimplementowane dla "
 "tego systemu operacyjnego)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -557,7 +565,7 @@ msgstr ""
 "Nie można ustalić adresu magistrali ze zmiennej środowiskowej "
 "DBUS_STARTER_BUS_TYPE — nieznana wartość „%s”"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -565,21 +573,21 @@ msgstr ""
 "Nie można ustalić adresu magistrali, ponieważ nie ustawiono zmiennej "
 "środowiskowej DBUS_STARTER_BUS_TYPE"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Nieznany typ magistrali %d"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Oczekiwano braku zawartości podczas próby odczytania wiersza"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr ""
 "Oczekiwano braku zawartości podczas próby (bezpiecznego) odczytania wiersza"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -587,15 +595,15 @@ msgstr ""
 "Wyczerpano wszystkie dostępne mechanizmy uwierzytelniania (próby: %s, "
 "dostępne: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Oczekiwano braku zawartości podczas próby odczytania bajtu"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr "Identyfikatory użytkownika muszą być takie same dla partnera i serwera"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Anulowano przez GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -617,13 +625,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Błąd podczas tworzenia katalogu „%s”: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Działanie nie jest obsługiwane"
 
@@ -689,15 +697,15 @@ msgstr "Błąd podczas otwierania bazy kluczy „%s” do zapisania: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(Dodatkowo, uwolnienie blokady „%s” także się nie powiodło: %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "Połączenie jest zamknięte"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "Przekroczono czas oczekiwania"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
@@ -788,53 +796,66 @@ msgstr "Poddrzewo zostało już wyeksportowane dla %s"
 msgid "Object does not exist at path “%s”"
 msgstr "Obiekt nie istnieje w ścieżce „%s”"
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "typ jest NIEPRAWIDŁOWY"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
 msgstr ""
-"Komunikat METHOD_CALL: brak pola nagłówka PATH lub MEMBER albo jest "
-"nieprawidłowe"
+"Komunikat %s: pole nagłówka %s jest nieprawidłowe, oczekiwano wartość typu "
+"„%s”"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr ""
-"Komunikat METHOD_RETURN: brak pola nagłówka REPLY_SERIAL albo jest "
-"nieprawidłowe"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "Komunikat %s: brak pola nagłówka %s albo jest nieprawidłowe"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr ""
-"Komunikat o BŁĘDZIE: brak pola nagłówka REPLY_SERIAL lub ERROR_NAME albo "
-"jest nieprawidłowe"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "Komunikat %s: podano pole nagłówka INVALID"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
 msgstr ""
-"Komunikat SYGNAŁU: brak pola nagłówka PATH, INTERFACE lub MEMBER albo jest "
-"nieprawidłowe"
+"Komunikat %s: pole nagłówka PATH używa zastrzeżonej wartości /org/"
+"freedesktop/DBus/Local"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
 msgstr ""
-"Komunikat SYGNAŁU: pole nagłówka PATH używa zastrzeżonej wartości /org/"
-"freedesktop/DBus/Local"
+"Komunikat %s: pole nagłówka INTERFACE nie zawiera prawidłowej nazwy "
+"interfejsu"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
 msgstr ""
-"Komunikat SYGNAŁU: pole nagłówka INTERFACE używa zastrzeżonej wartości org."
+"Komunikat %s: pole nagłówka INTERFACE używa zastrzeżonej wartości org."
 "freedesktop.DBus.Local"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr ""
+"Komunikat %s: pole nagłówka MEMBER nie zawiera prawidłowej nazwy elementu"
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+"Komunikat %s: pole nagłówka ERROR_NAME nie zawiera prawidłowej nazwy błędu"
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "typ jest NIEPRAWIDŁOWY"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
@@ -842,12 +863,12 @@ msgstr[0] "Chciano odczytać %lu bajt, ale otrzymano tylko %lu"
 msgstr[1] "Chciano odczytać %lu bajty, ale otrzymano tylko %lu"
 msgstr[2] "Chciano odczytać %lu bajtów, ale otrzymano tylko %lu"
 
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr "Oczekiwano bajtu NUL po ciągu „%s”, ale odnaleziono bajt %d"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -857,22 +878,22 @@ msgstr ""
 "w wyrównaniu bajtu %d (długość ciągu wynosi %d). Prawidłowy ciąg UTF-8 do "
 "tego miejsca to „%s”"
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Wartość jest zagnieżdżona za głęboko"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr ""
 "Przetworzona wartość „%s” nie jest prawidłową ścieżką do obiektu usługi D-Bus"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "Przetworzona wartość „%s” nie jest prawidłowym podpisem usługi D-Bus"
 
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -888,7 +909,7 @@ msgstr[2] ""
 "Wystąpiła macierz o długości %u bajtów. Maksymalna długość to 2<<26 bajtów "
 "(64 MiB)."
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -897,18 +918,18 @@ msgstr ""
 "Wystąpiła macierz typu „a%c”, której oczekiwana długość jest wielokrotnością "
 "%u B, ale wynosi %u B"
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Puste struktury (krotki) nie są dozwolone na magistrali D-Bus"
 
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr ""
 "Przetworzona wartość „%s” dla wariantu nie jest prawidłowym podpisem usługi "
 "D-Bus"
 
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -916,7 +937,7 @@ msgstr ""
 "Błąd podczas deserializowania GVariant za pomocą ciągu typu „%s” z formatu "
 "przewodu usługi D-Bus"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -925,30 +946,30 @@ msgstr ""
 "Nieprawidłowa wartość kolejności bajtów. Oczekiwano 0x6c („l”) lub 0x42 "
 "(„B”), ale odnaleziono wartość 0x%02x"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr ""
 "Nieprawidłowa główna wersja protokołu. Oczekiwano 1, ale odnaleziono %d"
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "Odnaleziono nagłówek podpisu, ale nie jest podpisem typu"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr ""
 "Odnaleziono nagłówek podpisu z podpisem „%s”, ale treść komunikatu jest pusta"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr ""
 "Przetworzona wartość „%s” nie jest prawidłowym podpisem usługi D-Bus (dla "
 "treści)"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
@@ -959,11 +980,11 @@ msgstr[1] ""
 msgstr[2] ""
 "Brak nagłówka podpisu w komunikacie, ale treść komunikatu liczy %u bajtów"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Nie można deserializować komunikatu: "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -971,23 +992,23 @@ msgstr ""
 "Błąd podczas serializowania GVariant za pomocą ciągu typu „%s” z formatu "
 "przewodu usługi D-Bus"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
 msgstr ""
 "Liczba deskryptorów plików w komunikacie (%d) różni się od pola nagłówka (%d)"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Nie można serializować komunikatu: "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr "Treść komunikatu ma podpis „%s”, ale brak nagłówka podpisu"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -995,17 +1016,17 @@ msgid ""
 msgstr ""
 "Treść komunikatu ma podpis typu „%s”, ale podpis w polu nagłówka to „%s”"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr "Treść komunikatu jest pusta, ale podpis w polu nagłówka to „(%s)”"
 
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Błąd zwrotu z treścią typu „%s”"
 
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Błąd zwrotu z pustą treścią"
 
@@ -1027,22 +1048,22 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Nie można pobrać profilu sprzętu: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "Nie można wczytać pliku %s ani %s: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Błąd podczas wywoływania metody StartServiceByName dla %s: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Nieoczekiwana odpowiedź %d od metody StartServiceByName(\"%s\")"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1052,25 +1073,25 @@ msgstr ""
 "właściciela, a pośrednik został utworzony za pomocą flagi "
 "G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "Przestrzeń nazw abstrakcyjnych jest nieobsługiwana"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr "Nie można określić pliku nonce podczas tworzenia serwera"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "Błąd podczas zapisywania pliku nonce w „%s”: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "Ciąg „%s” nie jest prawidłowym GUID usługi D-Bus"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "Nie można nasłuchiwać na nieobsługiwanym transporcie „%s”"
@@ -1133,6 +1154,10 @@ msgstr "Łączy z magistralą sesji"
 msgid "Connect to given D-Bus address"
 msgstr "Łączy z podanym adresem usługi D-Bus"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADRES"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Opcje punktów końcowych połączenia:"
@@ -1362,72 +1387,73 @@ msgstr "Błąd: %s nie jest prawidłową znaną nazwą magistrali.\n"
 msgid "Not authorized to change debug settings"
 msgstr "Brak upoważnienia do zmiany ustawień debugowania"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Bez nazwy"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "Plik .desktop nie określa pola Exec"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Nie można odnaleźć terminala wymaganego przez program"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Nie odnaleziono programu „%s” w $PATH"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr ""
 "Nie można utworzyć katalogu użytkownika dla konfiguracji programu %s: %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr "Nie można utworzyć katalogu użytkownika dla konfiguracji MIME %s: %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "Brak identyfikatora w informacjach o programie"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Nie można utworzyć pliku .desktop dla użytkownika %s"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Niestandardowa definicja dla %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "napęd nie obsługuje wysunięcia"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "napęd nie obsługuje wysunięcia lub „eject_with_operation”"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "napęd nie obsługuje wykrywania nośnika"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "napęd nie obsługuje rozpoczęcia"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "napęd nie obsługuje zatrzymania"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "Mechanizm TLS nie obsługuje wiążącego pobierania TLS"
 
@@ -1440,27 +1466,27 @@ msgstr "Obsługa TLS jest niedostępna"
 msgid "DTLS support is not available"
 msgstr "Obsługa DTLS jest niedostępna"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Nie można obsłużyć wersji %d kodowania GEmblem"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Błędna liczba elementów (%d) w kodowaniu GEmblem"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Nie można obsłużyć wersji %d kodowania GEmblemedIcon"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Błędna liczba elementów (%d) w kodowaniu GEmblemedIcon"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Oczekiwano obiektu GEmblem dla GEmblemedIcon"
 
@@ -1468,131 +1494,136 @@ msgstr "Oczekiwano obiektu GEmblem dla GEmblemedIcon"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "Nie istnieje zawierający punkt montowania"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Nie można skopiować na katalog"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Nie można skopiować katalogu na katalog"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Plik docelowy istnieje"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Nie można skopiować katalogu rekurencyjnie"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "Kopiowanie zakresu pliku nie jest obsługiwane"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Błąd podczas dzielenia pliku: %s"
 
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "Wywołanie „splice” nie jest obsługiwane"
 
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr ""
 "Kopiowanie (reflink/clone) między punktami montowania nie jest obsługiwane"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "Kopiowanie (reflink/clone) nie jest obsługiwane lub jest nieprawidłowe"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "Kopiowanie (reflink/clone) nie jest obsługiwane lub nie zadziałało"
 
-#: gio/gfile.c:3395
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Nie można pobrać atrybutu %s"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Nie można skopiować pliku specjalnego"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Wprowadzono nieprawidłową wartość dowiązania symbolicznego"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Dowiązania symboliczne nie są obsługiwane"
 
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "Kosz nie jest obsługiwany"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "Nazwy plików nie mogą zawierać „%c”"
 
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr ""
 "Utworzenie katalogu tymczasowego dla szablonu „%s” się nie powiodło: %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "wolumin nie obsługuje montowania"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Żaden program nie jest zarejestrowany do obsługi tego pliku"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "Enumerator jest zamknięty"
 
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "Enumerator plików ma zaległe działanie"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "Enumerator plików jest już zamknięty"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Nie można obsłużyć wersji %d kodowania GFileIcon"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Błędny format danych wejściowych dla GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Potok nie obsługuje działania query_info"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Szukanie nie jest obsługiwane przez potok"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "Skracanie nie jest dozwolone na potoku wejściowym"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "Skracanie nie jest dozwolone na potoku"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Nieprawidłowa nazwa komputera"
 
@@ -1625,64 +1656,64 @@ msgstr "Odpowiedź pośrednika HTTP jest za duża"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "Serwer pośrednika HTTP nieoczekiwanie zamknął połączenie."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Błędna liczba elementów (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Brak typu dla nazwy klasy %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "Typ %s nie obsługuje interfejsu GIcon"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "Typ %s nie jest klasowy"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Błędny format numeru wersji: %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr "Typ %s nie obsługuje metody from_tokens() z interfejsu GIcon"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Nie można obsłużyć podanej wersji kodowania ikony"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Nie podano adresu"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "Długość %u jest za długa na adres"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "Adres ma bity ustawione poza długością przedrostka"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "Nie można przetworzyć „%s” jako maskę adresu IP"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Brak wystarczającej ilości miejsca dla adresu gniazda"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Nieobsługiwany adres gniazda"
 
@@ -1696,7 +1727,7 @@ msgstr "Potok wejściowy nie obsługuje odczytu"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "Potok ma zaległe działanie"
 
@@ -1713,7 +1744,7 @@ msgstr "Podąża za plikiem podczas przenoszenia"
 msgid "“version” takes no arguments"
 msgstr "„version” nie przyjmuje żadnych parametrów"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Użycie:"
 
@@ -1721,79 +1752,79 @@ msgstr "Użycie:"
 msgid "Print version information and exit."
 msgstr "Wyświetla informację o wersji i kończy działanie."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Polecenia:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Dołącza pliki na standardowym wyjściu"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Kopiuje jeden lub więcej plików"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Wyświetla informacje o położeniach"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Uruchamia program z pliku .desktop"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Wyświetla listę zawartości położeń"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Pobiera lub ustawia program obsługujący dla typu MIME"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Tworzy katalogi"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Monitoruje zmiany plików i katalogów"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Montuje lub odmontowuje położenia"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Przenosi jeden lub więcej plików"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Otwiera pliki za pomocą domyślnego programu"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Zmienia nazwę pliku"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Usuwa jeden lub więcej plików"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Odczytuje ze standardowego wejścia i zapisuje"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Ustawia atrybut pliku"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Przenosi pliki lub katalogi do kosza"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Wyświetla listę zawartości położeń w drzewie"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Polecenia:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "%s wyświetla szczegółową pomoc.\n"
@@ -1803,7 +1834,7 @@ msgid "Error writing to stdout"
 msgstr "Błąd podczas zapisywania do standardowego wyjścia"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1826,60 +1857,64 @@ msgstr ""
 "GIO zamiast plików lokalnych: przykładowo można użyć czegoś takiego jak\n"
 "smb://serwer/zasób/plik.txt jako położenia."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Nie podano położeń"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Brak katalogu docelowego"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Wyświetla postęp"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Pyta przed zastąpieniem"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Zachowuje wszystkie atrybuty"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Tworzy kopię zapasową istniejących plików docelowych"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Nigdy nie podąża za dowiązaniami symbolicznymi"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Używa domyślnych uprawnień dla elementu docelowego"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr "Używa domyślnych czasów modyfikacji plików dla elementu docelowego"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "Przesłano %s z %s (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "PLIK-ŹRÓDŁOWY"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "CEL"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Kopiuje jeden lub więcej PLIKÓW ŹRÓDŁOWYCH do PLIKÓW DOCELOWYCH."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1889,12 +1924,12 @@ msgstr ""
 "GIO zamiast plików lokalnych: przykładowo można użyć czegoś takiego jak\n"
 "smb://serwer/zasób/plik.txt jako położenia."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "Plik docelowy %s nie jest katalogiem"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: zastąpić „%s”? "
@@ -1935,52 +1970,52 @@ msgstr "wyświetlana nazwa: %s\n"
 msgid "edit name: %s\n"
 msgstr "nazwa modyfikacji: %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "nazwa: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "typ: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "rozmiar: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "ukryty\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "URI: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "lokalna ścieżka: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "punkt montowania systemu UNIX: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Atrybuty możliwe do ustawienia:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Przestrzeń nazw atrybutów możliwych do ustawienia:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Wyświetla informacje o położeniach."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2542,7 +2577,8 @@ msgid ""
 msgstr "Katalog, z którego wczytywać PLIKI (domyślnie bieżący katalog)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "KATALOG"
 
@@ -2591,6 +2627,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Nazwa identyfikatora języka C używana dla utworzonego kodu źródłowego"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTYFIKATOR"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "Docelowy kompilator języka C (domyślnie: zmienna środowiskowa CC)"
@@ -3103,126 +3143,126 @@ msgstr "Błąd podczas pobierania informacji o systemie plików dla %s: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "Nie odnaleziono punktu montowania zawierającego plik %s"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Nie można zmienić nazwy katalogu głównego"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Błąd podczas zmieniania nazwy pliku %s: %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Nie można zmienić nazwy pliku, plik o takiej nazwie już istnieje"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Nieprawidłowa nazwa pliku"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Błąd podczas otwierania pliku %s: %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Błąd podczas usuwania pliku %s: %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Błąd podczas przenoszenia pliku %s do kosza: %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Nie można utworzyć katalogu kosza %s: %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr "Nie można odnaleźć głównego katalogu dla kosza %s"
 
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr ""
 "Przenoszenie do kosza na wewnętrznych punktach montowania systemu nie jest "
 "obsługiwane"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr "Nie można odnaleźć lub utworzyć katalogu kosza %s do kosza %s"
 
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "Nie można utworzyć pliku informacji o koszu dla %s: %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr "Nie można przenieść pliku %s do kosza pomiędzy systemami plików"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Nie można przenieść pliku %s do kosza: %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Nie można przenieść pliku %s do kosza"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Błąd podczas tworzenia katalogu %s: %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "System plików nie obsługuje dowiązań symbolicznych"
 
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Błąd podczas tworzenia dowiązania symbolicznego %s: %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Błąd podczas przenoszenia pliku %s: %s"
 
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Nie można przenieść katalogu na katalog"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "Utworzenie pliku kopii zapasowej się nie powiodło"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Błąd podczas usuwania pliku docelowego: %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Przenoszenie między punktami montowania nie jest obsługiwane"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Nie można ustalić wykorzystania dysku %s: %s"
@@ -3244,118 +3284,118 @@ msgstr "Nieprawidłowa nazwa rozszerzonego atrybutu"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Błąd podczas ustawiania rozszerzonego atrybutu „%s”: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (nieprawidłowe kodowanie)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Błąd podczas pobierania informacji o pliku „%s”: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "Błąd podczas pobierania informacji o deskryptorze pliku: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Nieprawidłowy typ atrybutu (oczekiwano „uint32”)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Nieprawidłowy typ atrybutu (oczekiwano „uint64”)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Nieprawidłowy typ atrybutu (oczekiwano „byte string”)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "Nie można ustawić uprawnień na dowiązaniach symbolicznych"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Błąd podczas ustawiania uprawnień: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Błąd podczas ustawiania właściciela: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "dowiązanie symboliczne nie może być puste"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Błąd podczas ustawiania dowiązania symbolicznego: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr ""
 "Błąd podczas ustawiania dowiązania symbolicznego: plik nie jest dowiązaniem "
 "symbolicznym"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr "Dodatkowe nanosekundy %d dla czasu uniksowego %lld są ujemne"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr "Dodatkowe nanosekundy %d dla czasu uniksowego %lld osiągają 1 sekundę"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "Czas uniksowy %lld nie mieści się w 64 bitach"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr ""
 "Czas uniksowy %lld jest poza zakresem obsługiwanym przez system Windows"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "Nie można skonwertować nazwy pliku „%s” na kodowanie UTF-16"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "Nie można otworzyć pliku „%s”: błąd %lu systemu Windows"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr "Błąd podczas ustawiania czasu modyfikacji lub dostępu pliku „%s”: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "Błąd podczas ustawiania czasu modyfikacji lub dostępu: %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "Kontekst SELinux nie może być pusty"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "SELinux nie jest włączony w tym systemie"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Błąd podczas ustawiania kontekstu SELinux: %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "Ustawianie atrybutu %s nie jest obsługiwane"
@@ -3408,7 +3448,7 @@ msgid "Error truncating file: %s"
 msgstr "Błąd podczas skracania pliku: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Błąd podczas otwierania pliku „%s”: %s"
@@ -3430,27 +3470,27 @@ msgstr "Plik został zmieniony poza programem"
 msgid "Error removing old file: %s"
 msgstr "Błąd podczas usuwania starego pliku: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "Podano nieprawidłowy obiekt GSeekType"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Nieprawidłowe żądanie wyszukiwania"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "Nie można skrócić GMemoryInputStream"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Potok wyjściowy pamięci nie obsługuje zmiany rozmiaru"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Zmiana rozmiaru potoku wyjściowego pamięci się nie powiodła"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3458,32 +3498,32 @@ msgstr ""
 "Ilość pamięci wymagana dla przetworzenia zapisu jest większa od dostępnej "
 "przestrzeni adresowej"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Zażądano przejścia przed początkiem potoku"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Zażądano przejścia poza koniec potoku"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "punkt montowania nie obsługuje odmontowania"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "punkt montowania nie obsługuje wysunięcia"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "punkt montowania nie obsługuje odmontowania lub „unmount_with_operation”"
@@ -3491,42 +3531,42 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr "punkt montowania nie obsługuje wysunięcia lub „eject_with_operation”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "punkt montowania nie obsługuje ponownego montowania"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "punkt montowania nie obsługuje rozpoznania typu zawartości"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr ""
 "punkt montowania nie obsługuje synchronicznego rozpoznania typu zawartości"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Nazwa komputera „%s” zawiera „[”, ale nie „]”"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Sieć jest niedostępna"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Komputer jest niedostępny"
 
@@ -3554,7 +3594,7 @@ msgstr "Usługa NetworkManager nie jest uruchomiona"
 msgid "NetworkManager version too old"
 msgstr "Wersja usługi NetworkManager jest za stara"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Potok wyjściowy nie obsługuje zapisu"
 
@@ -3567,38 +3607,38 @@ msgstr "Suma wektorów przekazanych do %s jest za duża"
 msgid "Source stream is already closed"
 msgstr "Potok źródłowy jest już zamknięty"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Nieokreślone niepowodzenie wyszukania pośrednika"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Błąd podczas rozwiązywania „%s”: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s nie jest zaimplementowane"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Nieprawidłowa domena"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "Zasób w „%s” nie istnieje"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "Dekompresowanie zasobu w „%s” się nie powiodło"
@@ -3616,11 +3656,11 @@ msgstr "Zasób w „%s” nie jest katalogiem"
 msgid "Input stream doesn’t implement seek"
 msgstr "Potok wejściowy nie obsługuje szukania"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Wyświetla listę sekcji zawierających zasoby w PLIKU w formacie ELF"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3630,15 +3670,15 @@ msgstr ""
 "Jeśli podano SEKCJĘ, to wyświetla tylko zasoby w tej sekcji\n"
 "Jeśli podano ŚCIEŻKĘ, to wyświetla tylko pasujące zasoby"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "PLIK [ŚCIEŻKA]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SEKCJA"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3650,15 +3690,15 @@ msgstr ""
 "Jeśli podano ŚCIEŻKĘ, to wyświetla tylko pasujące zasoby\n"
 "Szczegóły zawierają sekcję, rozmiar i kompresję"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Wydobywa plik zasobu do standardowego wyjścia"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "PLIK ŚCIEŻKA"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3686,7 +3726,7 @@ msgstr ""
 "Polecenie „gresource help POLECENIE” wyświetla szczegółową pomoc.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3701,21 +3741,21 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SEKCJA    (Opcjonalna) nazwa sekcji formatu ELF\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  POLECENIE (Opcjonalne) polecenie do wyjaśnienia\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr ""
 "  PLIK      Plik w formacie ELF (plik binarny lub\n"
 "            biblioteka współdzielona)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3723,19 +3763,19 @@ msgstr ""
 "  PLIK      Plik w formacie ELF (plik binarny lub biblioteka\n"
 "            współdzielona) lub skompilowany plik zasobów\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[ŚCIEŻKA]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr "  ŚCIEŻKA   (Opcjonalna) ścieżka do zasobu (może być częściowa)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "ŚCIEŻKA"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  ŚCIEŻKA   Ścieżka do zasobu\n"
 
@@ -3969,217 +4009,217 @@ msgstr "Podano pustą nazwę schematu\n"
 msgid "No such key “%s”\n"
 msgstr "Brak klucza „%s”\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Nieprawidłowe gniazdo, nie zainicjowano"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Nieprawidłowe gniazdo, zainicjowanie się nie powiodło z powodu: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "Gniazdo jest już zamknięte"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1438
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "Przekroczono czas oczekiwania wejścia/wyjścia gniazda"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "tworzenie GSocket z fd: %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Nie można utworzyć gniazda: %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "Podano nieznaną rodzinę"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "Podano nieznany protokół"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr "Nie można używać działań datagramowych na niedatagramowych gniazdach."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr ""
 "Nie można używać działań datagramowych na gniazdach z ustawionym czasem "
 "oczekiwania."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "nie można uzyskać lokalnego adresu: %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "nie można uzyskać zdalnego adresu: %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "nie można nasłuchiwać: %s"
 
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Błąd podczas dowiązywania do adresu %s: %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Błąd podczas dołączania do grupy multicast: %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Błąd podczas opuszczania grupy multicast: %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Brak obsługi multicastu dla konkretnych źródeł"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Nieobsługiwana rodzina gniazda"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "konkretne źródła nie są adresem IPv4"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Nazwa interfejsu jest za długa"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Nie odnaleziono interfejsu: %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Brak obsługi multicastu IPv4 dla konkretnych źródeł"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Brak obsługi multicastu IPv6 dla konkretnych źródeł"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Błąd podczas akceptowania połączenia: %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Trwa połączenie"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Nie można uzyskać oczekującego błędu: "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Błąd podczas pobierania danych: %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Błąd podczas wysyłania danych: %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Nie można zamknąć gniazda: %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Błąd podczas zamykania gniazda: %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "Oczekiwanie na warunek gniazda: %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Nie można wysłać komunikatu: %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Wektory komunikatu są za duże"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Błąd podczas wysyłania komunikatu: %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "GSocketControlMessage nie jest obsługiwane w systemie Windows"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Błąd podczas pobierania komunikatu: %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Nie można odczytać danych uwierzytelniających gniazda: %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr ""
 "g_socket_get_credentials nie jest zaimplementowane dla tego systemu "
 "operacyjnego"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Nie można połączyć z serwerem pośrednika %s: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Nie można połączyć z %s: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Nie można połączyć: "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "Pośredniczenie przez połączenie niebędące TCP nie jest obsługiwane."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "Protokół pośrednika „%s” nie jest obsługiwany."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "Nasłuch jest już zamknięty"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "Dodane gniazdo jest zamknięte"
 
@@ -4271,97 +4311,97 @@ msgstr "Pośrednik SOCKSv5 nie obsługuje podanego typu adresu."
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "Nieznany błąd pośrednika SOCKSv5."
 
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr ""
 "Utworzenie potoku do komunikacji z procesem potomnym (%s) się nie powiodło"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Potoki nie są obsługiwane na tej platformie"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Nie można obsłużyć wersji %d kodowania GThemedIcon"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Nie odnaleziono prawidłowych adresów"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Błąd podczas odwrotnego rozwiązywania „%s”: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr ""
 "Błąd podczas przetwarzania wpisu DNS %s: błędnie sformatowany pakiet DNS"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Brak wpisu DNS żądanego typu dla „%s”"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "Nie można tymczasowo rozwiązać „%s”"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Błąd podczas rozwiązywania „%s”"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Błędnie sformatowany pakiet DNS"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Przetworzenie odpowiedzi DNS na „%s” się nie powiodło: "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Nie odnaleziono klucza prywatnego zakodowanego za pomocą PEM"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "Nie można odszyfrować klucza prywatnego zakodowanego za pomocą PEM"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "Nie można przetworzyć klucza prywatnego zakodowanego za pomocą PEM"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Nie odnaleziono certyfikatu zakodowanego za pomocą PEM"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "Nie można przetworzyć certyfikatów zakodowanych za pomocą PEM"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "Obecny mechanizm TLS nie obsługuje PKCS #12"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr ""
 "Ten mechanizm GTlsBackend nie obsługuje tworzenia certyfikatów PKCS #11"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4371,7 +4411,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4379,15 +4419,15 @@ msgstr ""
 "Kilka podanych haseł było niepoprawnych, dostęp zostanie zablokowany po "
 "dalszych niepowodzeniach."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "Podane hasło jest niepoprawne."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "Wysyłanie DP nie jest obsługiwane"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
@@ -4395,11 +4435,11 @@ msgstr[0] "Oczekiwano jeden komunikat kontrolny, otrzymano %d"
 msgstr[1] "Oczekiwano jeden komunikat kontrolny, otrzymano %d"
 msgstr[2] "Oczekiwano jeden komunikat kontrolny, otrzymano %d"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Nieoczekiwany typ podrzędnych danych"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
@@ -4407,115 +4447,128 @@ msgstr[0] "Oczekiwano jedno fd, a otrzymano %d\n"
 msgstr[1] "Oczekiwano jedno fd, a otrzymano %d\n"
 msgstr[2] "Oczekiwano jedno fd, a otrzymano %d\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Pobrano nieprawidłowe fd"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "Odbieranie DP nie jest obsługiwane"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Błąd podczas wysyłania danych uwierzytelniających: "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr ""
 "Błąd podczas sprawdzania, czy zmienna SO_PASSCRED została włączona dla "
 "gniazda: %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Błąd podczas włączania zmiennej SO_PASSCRED: %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Oczekiwano odczytania pojedynczego bajtu dla odbieranych danych "
 "uwierzytelniających, ale odczytano zero bajtów"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Nie oczekiwano komunikatu kontrolnego, a otrzymano %d"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Błąd podczas wyłączania zmiennej SO_PASSCRED: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Błąd podczas odczytywania z deskryptora pliku: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Błąd podczas zamykania deskryptora pliku: %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "Katalog główny systemu plików"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Błąd podczas zapisywania do deskryptora pliku: %s"
 
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr ""
 "Abstrakcyjne adresy gniazd domen systemu UNIX nie są obsługiwane w tym "
 "systemie"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "wolumin nie obsługuje wysunięcia"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "wolumin nie obsługuje wysunięcia lub „eject_with_operation”"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr "Program „%s” w obiekcie programu nie ma czasowników"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+"Program „%s” i program obsługujący „%s” w obiekcie programu nie mają "
+"czasowników"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Błąd podczas odczytywania z pliku obsługi: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Błąd podczas zamykania pliku obsługi: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Błąd podczas zapisywania do pliku obsługi: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Brak wystarczającej ilości pamięci"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Błąd wewnętrzny: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Wymagane jest danych wejściowych"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Nieprawidłowe skompresowane dane"
 
@@ -4543,149 +4596,287 @@ msgstr "Uruchamia usługę D-Bus"
 msgid "Wrong args\n"
 msgstr "Błędne parametry\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Otwarcie „%s” się nie powiodło: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Błąd: nie można zapisać całego wyjścia: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Błąd: zmiana nazwy „%s” na „%s” się nie powiodła: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Dołącza katalogi w ścieżce wyszukiwania GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Plik wyjściowy"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Biblioteka współdzielona"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Wyświetla komunikaty debugowania"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Wyświetla więcej komunikatów"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Wyświetla numer wersji programu i kończy działanie"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Błąd podczas przetwarzania parametrów: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Proszę podać dokładnie jeden plik wejściowy"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Błąd podczas przetwarzania pliku „%s”: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Zbudowanie typelib dla modułu „%s” się nie powiodło"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Nieprawidłowe typelib dla modułu „%s”: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Wyświetla wszystkie dostępne informacje"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Przetworzenie się nie powiodło: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Brak plików wejściowych"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Odczytanie „%s” się nie powiodło: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Utworzenie typelib „%s” się nie powiodło: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Wczytanie typelib się nie powiodło: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Ostrzeżenie, liczba pominiętych modułów: %u"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Wersja typelib do zbadania"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "WERSJA"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Wyświetla listę bibliotek współdzielonych wymaganych przez typelib"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Wyświetla listę innych typelib wymaganych przez badane typelib"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "Typelib do zbadania"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "PRZESTRZEŃ-NAZW"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "— bada typelib GI"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Przetworzenie opcji wiersza poleceń się nie powiodło: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Proszę podać dokładnie jedną przestrzeń nazw"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Proszę podać --print-shlibs, --print-typelibs lub obie opcje"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Nieoczekiwany atrybut „%s” dla elementu „%s”"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "Nie odnaleziono atrybutu „%s” dla elementu „%s”"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Nieoczekiwany znacznik „%s”, oczekiwano znacznika „%s”"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Nieoczekiwany znacznik „%s” wewnątrz „%s”"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Nieprawidłowa data/czas „%s” w pliku zakładek"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr "Nie można odnaleźć prawidłowego pliku zakładek w katalogach danych"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Zakładka dla adresu URI „%s” już istnieje"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Nie odnaleziono zakładki dla adresu URI „%s”"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Nie zdefiniowano typu MIME w zakładce dla adresu URI „%s”"
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "Nie zdefiniowano prywatnej flagi w zakładce dla adresu URI „%s”"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "Nie ustawiono grup w zakładce dla adresu URI „%s”"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr "Żaden program o nazwie „%s” nie zarejestrował zakładki dla „%s”"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr "Rozwinięcie wiersza exec „%s” z adresem URI „%s” się nie powiodło"
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Nieprzedstawialny znak na wejściu konwersji"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Na końcu wejścia występuje sekwencja odpowiadająca części znaku"
 
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr "Nie można skonwertować napisu zastępczego „%s” na zestaw znaków „%s”"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Osadzony bajt NUL na wejściu konwersji"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Osadzony bajt NUL na wyjściu konwersji"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr ""
 "Adres URI „%s” nie jest bezwzględnym adresem URI, używającym schematu „file”"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "Adres URI „%s” jest nieprawidłowy"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "Nazwa komputera w adresie URI „%s” jest nieprawidłowa"
 
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "Adres URI „%s” zawiera nieprawidłowe znaki sterujące"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "Ścieżka „%s” nie jest ścieżką bezwzględną"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %-d %b %Y, %H∶%M∶%S"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%-d %b %Y"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H∶%M∶%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%-I∶%M∶%S %p"
@@ -4706,62 +4897,62 @@ msgstr "%-I∶%M∶%S %p"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "styczeń"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "luty"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "marzec"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "kwiecień"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "czerwiec"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "lipiec"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "sierpień"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "wrzesień"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "październik"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "listopad"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "grudzień"
@@ -4783,132 +4974,132 @@ msgstr "grudzień"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "sty"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "lut"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "kwi"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "cze"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "lip"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "sie"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "wrz"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "paź"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "lis"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "gru"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "poniedziałek"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "wtorek"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "środa"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "czwartek"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "piątek"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "sobota"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "niedziela"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "pon"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "wto"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "śro"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "czw"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "pią"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "sob"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "nie"
@@ -4930,62 +5121,62 @@ msgstr "nie"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "stycznia"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "lutego"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "marca"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "kwietnia"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "maja"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "czerwca"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "lipca"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "sierpnia"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "września"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "października"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "listopada"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "grudnia"
@@ -5007,202 +5198,208 @@ msgstr "grudnia"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "sty"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "lut"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "kwi"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "maj"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "cze"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "lip"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "sie"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "wrz"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "paź"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "lis"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "gru"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "AM"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "PM"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Błąd podczas otwierania katalogu „%s”: %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "Nie można przydzielić %lu bajtu do odczytu pliku „%s”"
-msgstr[1] "Nie można przydzielić %lu bajtów do odczytu pliku „%s”"
-msgstr[2] "Nie można przydzielić %lu bajtów do odczytu pliku „%s”"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Nie można przydzielić %s do odczytu pliku „%s”"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Błąd podczas odczytywania pliku „%s”: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Plik „%s” jest za duży"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Odczytanie z pliku „%s” się nie powiodło: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Otwarcie pliku „%s” się nie powiodło: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr ""
 "Uzyskanie atrybutów pliku „%s” się nie powiodło: funkcja fstat() zwróciła "
 "błąd: %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr ""
 "Otwarcie pliku „%s” się nie powiodło: funkcja fdopen() zwróciła błąd: %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr ""
 "Zmiana nazwy pliku „%s” na „%s” się nie powiodła: funkcja g_rename() "
 "zwróciła błąd: %s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr ""
+"Zapisanie pliku „%s” się nie powiodło: funkcja ftruncate() zwróciła błąd: %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr ""
 "Zapisanie pliku „%s” się nie powiodło: funkcja write() zwróciła błąd: %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr ""
 "Zapisanie pliku „%s” się nie powiodło: funkcja fsync() zwróciła błąd: %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Utworzenie pliku „%s” się nie powiodło: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr ""
 "Nie można usunąć istniejącego pliku „%s”: funkcja g_unlink() zwróciła błąd: "
 "%s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Szablon „%s” jest nieprawidłowy, nie powinien on zawierać „%s”"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Szablon „%s” nie zawiera XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Odczytanie dowiązania symbolicznego „%s” się nie powiodło: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "Nie można otworzyć konwertera z „%s” na „%s”: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr ""
 "Nie można wykonać surowego odczytu w zmiennej g_io_channel_read_line_string"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "W buforze odczytu pozostały nieskonwertowane dane"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "Na końcu kanału występuje sekwencja odpowiadająca części znaku"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Nie można wykonać surowego odczytu w zmiennej g_io_channel_read_to_end"
 
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr ""
 "Nie można odnaleźć prawidłowego pliku klucza w przeszukiwanych katalogach"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "To nie jest zwykły plik"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5210,45 +5407,45 @@ msgstr ""
 "Plik klucza zawiera wiersz „%s”, który nie jest parą klucz-wartość, grupą "
 "lub komentarzem"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Nieprawidłowa nazwa grupy: %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Plik klucza nie rozpoczyna się od grupy"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Nieprawidłowa nazwa klucza: %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "Plik klucza zawiera nieobsługiwane kodowanie „%s”"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Plik klucza nie zawiera grupy „%s”"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Plik klucza nie zawiera klucza „%s” w grupie „%s”"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr ""
 "Plik klucza zawiera klucz „%s” o wartości „%s”, która nie jest zapisana "
 "w UTF-8"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
@@ -5256,7 +5453,7 @@ msgstr ""
 "Plik klucza zawiera klucz „%s”, który ma wartość niemożliwą do "
 "zinterpretowania."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5265,36 +5462,36 @@ msgstr ""
 "Plik klucza zawiera klucz „%s” w grupie „%s”, która ma wartość niemożliwą do "
 "zinterpretowania."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr "Klucz „%s” w grupie „%s” ma wartość „%s”, podczas gdy oczekiwano %s"
 
-#: glib/gkeyfile.c:4356
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Plik klucza zawiera znak sterujący na końcu linii"
 
-#: glib/gkeyfile.c:4378
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr "Plik klucza zawiera nieprawidłową sekwencję sterującą „%s”"
 
-#: glib/gkeyfile.c:4530
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "Nie można zinterpretować „%s” jako liczby."
 
-#: glib/gkeyfile.c:4544
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "Wartość całkowita „%s” jest spoza dopuszczalnego zakresu"
 
-#: glib/gkeyfile.c:4577
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "Nie można zinterpretować „%s” jako liczby zmiennoprzecinkowej."
 
-#: glib/gkeyfile.c:4616
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "Nie można zinterpretować „%s” jako wartości logicznej."
@@ -5317,34 +5514,34 @@ msgstr ""
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "Otwarcie pliku „%s” się nie powiodło: funkcja open() zwróciła błąd: %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Błąd w %d. wierszu przy %d. znaku: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr ""
 "Nazwa zawiera nieprawidłowy tekst zakodowany za pomocą UTF-8 — nieprawidłowe "
 "„%s”"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "„%s” nie jest prawidłową nazwą"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "„%s” nie jest prawidłową nazwą: „%c”"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Błąd w %d. wierszu: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5354,7 +5551,7 @@ msgstr ""
 "liczba, będąca częścią odniesienia do znaku (np. &#234;) — być może liczba "
 "jest za duża"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5364,24 +5561,24 @@ msgstr ""
 "został użyty znak &, który nie miał oznaczać jednostki — należy go zapisać "
 "jako &amp;"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "Odniesienie do znaku „%-.*s” nie jest zapisem dozwolonego znaku"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Napotkano pustą jednostkę „&;”; poprawnymi jednostkami są: &amp; &quot; &lt; "
 "&gt; &apos;"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "Nazwa jednostki „%-.*s” nie jest znana"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5389,11 +5586,11 @@ msgstr ""
 "Jednostka nie jest zakończona średnikiem; najprawdopodobniej został użyty "
 "znak &, który nie miał oznaczać jednostki — należy go zapisać jako &amp;"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Dokument musi rozpoczynać się jakimś elementem (np. <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5402,7 +5599,7 @@ msgstr ""
 "Znak „%s” nie powinien występować po znaku „<”; nie może on rozpoczynać "
 "nazwy elementu"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5411,12 +5608,12 @@ msgstr ""
 "Nieoczekiwany znak „%s”, oczekiwano znaku „>”, aby zakończyć znacznik „%s” "
 "pustego elementu"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "Za dużo atrybutów w elemencie „%s”"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5424,7 +5621,7 @@ msgstr ""
 "Nieoczekiwany znak „%s”; po nazwie atrybutu „%s” elementu „%s” oczekiwano "
 "znaku „=”"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5435,7 +5632,7 @@ msgstr ""
 "początkowy elementu „%s” lub opcjonalnie atrybutu; być może w nazwie "
 "atrybutu został użyty nieprawidłowy znak"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5444,7 +5641,7 @@ msgstr ""
 "Nieoczekiwany znak „%s”; oczekiwano otwierającego znaku cudzysłowu po znaku "
 "równości podczas podawania wartości atrybutu „%s” elementu „%s”"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5453,7 +5650,7 @@ msgstr ""
 "Znak „%s” nie jest znakiem, który może pojawić się po sekwencji „</”; „%s” "
 "nie może rozpoczynać nazwy elementu"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5462,26 +5659,26 @@ msgstr ""
 "Znak „%s” nie jest znakiem, który może wystąpić po domykającej nazwie "
 "elementu „%s”; dopuszczalnym znakiem jest „>”"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "Element „%s” został zamknięty, ale brak obecnie otwartego elementu"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr ""
 "Element „%s” został zamknięty, ale obecnie otwartym elementem jest „%s”"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Dokument jest pusty lub zawiera tylko spacje"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr "Zaraz po znaku „<” nastąpił nieoczekiwany koniec dokumentu"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5490,7 +5687,7 @@ msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu, gdy pewne elementy są wciąż otwarte "
 "— „%s” był ostatnim otwartym elementem"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5499,21 +5696,21 @@ msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu; oczekiwano znaku „>”, kończącego "
 "znacznik <%s/>"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr "Nastąpił nieoczekiwany koniec dokumentu wewnątrz nazwy elementu"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr "Nastąpił nieoczekiwany koniec dokumentu wewnątrz nazwy atrybutu"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu wewnątrz znacznika otwierającego "
 "element."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5521,265 +5718,265 @@ msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu po znaku równości występującym po "
 "nazwie atrybutu; brak wartości atrybutu"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr "Nastąpił nieoczekiwany koniec dokumentu wewnątrz wartości atrybutu"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu wewnątrz znacznika domykającego "
 "elementu „%s”"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu wewnątrz znacznika domykającego "
 "nieotwartego elementu"
 
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Nastąpił nieoczekiwany koniec dokumentu wewnątrz komentarza lub instrukcji "
 "przetwarzania"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[OPCJA…]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Opcje pomocy:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Wyświetla opcje pomocy"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Wyświetla wszystkie opcje pomocy"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Opcje programu:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Opcje:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "Nie można przetworzyć wartości całkowitej „%s” dla %s"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "Wartość całkowita „%s” dla %s jest spoza dopuszczalnego zakresu"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "Nie można przetworzyć podwójnej wartości liczbowej „%s” dla %s"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr ""
 "Podwójna wartość liczbowa „%s” dla %s jest spoza dopuszczalnego zakresu"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Błąd podczas przetwarzania opcji %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Brak parametru dla %s"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Nieznana opcja %s"
 
-#: glib/gregex.c:480
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "uszkodzony obiekt"
 
-#: glib/gregex.c:482
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "brak pamięci"
 
-#: glib/gregex.c:497
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "błąd wewnętrzny"
 
-#: glib/gregex.c:499
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr "wzorzec zawiera elementy nieobsługiwane w dopasowywaniu częściowym"
 
-#: glib/gregex.c:501
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "odniesienia wstecz jako warunki nie są obsługiwane w dopasowywaniu częściowym"
 
-#: glib/gregex.c:507
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "osiągnięto limit rekurencji"
 
-#: glib/gregex.c:509
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "błędne wyrównanie"
 
-#: glib/gregex.c:511
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "pętla rekurencji"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:514
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr "zażądano trybu dopasowywania, który nie został skompilowany dla JIT"
 
-#: glib/gregex.c:535 glib/gregex.c:1851
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "nieznany błąd"
 
-#: glib/gregex.c:556
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ na końcu wzoru"
 
-#: glib/gregex.c:560
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c na końcu wzoru"
 
-#: glib/gregex.c:565
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "nierozpoznany znak po \\"
 
-#: glib/gregex.c:569
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "liczby w operatorze {} nie są w kolejności"
 
-#: glib/gregex.c:573
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "liczba za duża w kwantyfikatorze {}"
 
-#: glib/gregex.c:577
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "brak kończącego znaku „]” dla klasy znaku"
 
-#: glib/gregex.c:581
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "nieprawidłowa sekwencja sterująca w klasie znaku"
 
-#: glib/gregex.c:585
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "zakres klasy znaków nie jest w kolejności"
 
-#: glib/gregex.c:590
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "nic do powtórzenia"
 
-#: glib/gregex.c:594
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "nierozpoznany znak po (? lub (?-"
 
-#: glib/gregex.c:598
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr "Klasy nazwane z użyciem POSIX są obsługiwane tylko wewnątrz klasy"
 
-#: glib/gregex.c:602
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "elementy porównujące POSIX nie są obsługiwane"
 
-#: glib/gregex.c:608
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr "brak znaku kończącego )"
 
-#: glib/gregex.c:612
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "odniesienie do nieistniejącego podwzoru"
 
-#: glib/gregex.c:616
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "brakujący znak „)” po komentarzu"
 
-#: glib/gregex.c:620
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "wyrażenie regularne jest za duże"
 
-#: glib/gregex.c:624
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "błędna liczba lub nazwa za (?("
 
-#: glib/gregex.c:628
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "asercja „lookbehind” nie ma stałej długości"
 
-#: glib/gregex.c:632
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "zależna grupa zawiera więcej niż dwie gałęzie"
 
-#: glib/gregex.c:636
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "za (?( oczekiwano asercji"
 
-#: glib/gregex.c:640
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "liczbowe odniesienie nie może wynosić zero"
 
-#: glib/gregex.c:644
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "nieznana nazwa klasy POSIX"
 
-#: glib/gregex.c:649
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "wartość znaku w sekwencji \\x{...} jest za duża"
 
-#: glib/gregex.c:653
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "znak \\C nie jest dozwolony w asercji „lookbehind”"
 
-#: glib/gregex.c:657
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "brak terminatora w nazwie podwzoru"
 
-#: glib/gregex.c:661
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "dwa podwzory mają tę samą nazwę"
 
-#: glib/gregex.c:665
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "błędna sekwencja \\P lub \\p"
 
-#: glib/gregex.c:669
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "nieznana nazwa właściwości za \\P lub \\p"
 
-#: glib/gregex.c:673
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "nazwa podwzoru jest za długa (maksymalnie 32 znaki)"
 
-#: glib/gregex.c:677
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "za dużo nazwanych podwzorów (maksymalnie 10000)"
 
-#: glib/gregex.c:681
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "wartość ósemkowa jest większa niż \\377"
 
-#: glib/gregex.c:685
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "grupa DEFINE zawiera więcej niż jedną gałąź"
 
-#: glib/gregex.c:689
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "niespójne opcje NEWLINE"
 
-#: glib/gregex.c:693
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5787,241 +5984,241 @@ msgstr ""
 "po \\g nie następuje nazwa lub liczba w nawiasach, nawiasach ostrych, "
 "cytowana, ani zwykła liczba"
 
-#: glib/gregex.c:698
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "parametr nie jest dozwolony dla (*ACCEPT), (*FAIL) lub (*COMMIT)"
 
-#: glib/gregex.c:702
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "nie rozpoznano (*VERB)"
 
-#: glib/gregex.c:706
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "liczba jest za duża"
 
-#: glib/gregex.c:710
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "brak nazwy podwzoru po (?&"
 
-#: glib/gregex.c:714
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr "różne nazwy dla podwzorów tej samej liczby nie są dozwolone"
 
-#: glib/gregex.c:718
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) musi mieć parametr"
 
-#: glib/gregex.c:722
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "po \\c musi być znak ASCII"
 
-#: glib/gregex.c:726
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "po \\k nie następuje nazwa w nawiasach, nawiasach ostrych, ani cytowana"
 
-#: glib/gregex.c:730
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N nie jest obsługiwane w klasie"
 
-#: glib/gregex.c:734
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "nazwa jest za długa w (*MARK), (*PRUNE), (*SKIP) lub (*THEN)"
 
-#: glib/gregex.c:738 glib/gregex.c:874
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "przepełnienie kodu"
 
-#: glib/gregex.c:742
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "nierozpoznany znak po (?P"
 
-#: glib/gregex.c:746
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "przekroczono przestrzeń roboczą kompilacji"
 
-#: glib/gregex.c:750
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "nie odnaleziono wcześniej sprawdzonego podwzoru"
 
-#: glib/gregex.c:873 glib/gregex.c:1135 glib/gregex.c:2457
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "Błąd podczas dopasowywania wyrażenia regularnego %s: %s"
 
-#: glib/gregex.c:1735
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "Biblioteka PCRE została skompilowana bez obsługi UTF-8"
 
-#: glib/gregex.c:1743
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "Biblioteka PCRE została skompilowana za pomocą niezgodnych opcji"
 
-#: glib/gregex.c:1860
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr "Błąd kompilacji wyrażenia regularnego „%s” przy znaku %s: %s"
 
-#: glib/gregex.c:2900
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "oczekiwano cyfry szesnastkowej lub znaku „}”"
 
-#: glib/gregex.c:2916
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "oczekiwano cyfry szesnastkowej"
 
-#: glib/gregex.c:2956
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "brak znaku „<” w odniesieniu symbolicznym"
 
-#: glib/gregex.c:2965
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "niezakończone odniesienie symboliczne"
 
-#: glib/gregex.c:2972
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "odniesienie symboliczne o zerowej długości"
 
-#: glib/gregex.c:2983
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "oczekiwano cyfry"
 
-#: glib/gregex.c:3001
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "niedozwolone odniesienie symboliczne"
 
-#: glib/gregex.c:3064
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "pominięto końcowe „\\”"
 
-#: glib/gregex.c:3068
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "nieznana sekwencja sterująca"
 
-#: glib/gregex.c:3078
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr "Błąd podczas przetwarzania tekstu zastępczego „%s” przy znaku %lu: %s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Cytowany znak nie rozpoczyna się znakiem cytowania"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr ""
 "W wierszu poleceń lub innym napisie cytowanym jak w powłoce wystąpił "
 "niesparowany znak cytowania"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr ""
 "Tekst zakończył się bezpośrednio po znaku „\\” (wartością tekstu było „%s”)."
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Tekst zakończył się przed odnalezieniem domykającego znaku cytowania dla %c "
 "(tekstem jest „%s”)"
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Tekst jest pusty (lub zawiera tylko spacje)"
 
-#: glib/gspawn.c:320
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "Odczytanie danych z procesu potomnego (%s) się nie powiodło"
 
-#: glib/gspawn.c:473
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr ""
 "Nieoczekiwany błąd podczas odczytywania danych z procesu potomnego (%s)"
 
-#: glib/gspawn.c:558
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Nieoczekiwany błąd w waitpid() (%s)"
 
-#: glib/gspawn.c:1180 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Proces potomny został zakończony z kodem %ld"
 
-#: glib/gspawn.c:1188
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Proces potomny został zakończony sygnałem %ld"
 
-#: glib/gspawn.c:1195
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Proces potomny został zatrzymany sygnałem %ld"
 
-#: glib/gspawn.c:1202
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "Proces potomny został nieprawidłowo zakończony"
 
-#: glib/gspawn.c:2032 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr ""
 "Odczytanie danych z potoku łączącego z procesem potomnym (%s) się nie "
 "powiodło"
 
-#: glib/gspawn.c:2404
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "Wywołanie procesu potomnego „%s” (%s) się nie powiodło"
 
-#: glib/gspawn.c:2530
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Rozdzielenie procesu (%s) się nie powiodło"
 
-#: glib/gspawn.c:2690 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "Zmiana katalogu na „%s” (%s) się nie powiodła"
 
-#: glib/gspawn.c:2700
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "Wykonanie procesu potomnego „%s” (%s) się nie powiodło"
 
-#: glib/gspawn.c:2710
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr ""
 "Otwarcie pliku do ponownego mapowania deskryptora pliku (%s) się nie powiodło"
 
-#: glib/gspawn.c:2718
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr ""
 "Powielenie deskryptora pliku dla procesu potomnego (%s) się nie powiodło"
 
-#: glib/gspawn.c:2727
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Rozdzielenie procesu potomnego (%s) się nie powiodło"
 
-#: glib/gspawn.c:2735
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr ""
 "Zamknięcie deskryptora pliku dla procesu potomnego (%s) się nie powiodło"
 
-#: glib/gspawn.c:2743
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Podczas wykonywania procesu potomnego „%s” wystąpił nieznany błąd"
 
-#: glib/gspawn.c:2767
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr ""
@@ -6080,78 +6277,78 @@ msgstr ""
 "Podczas odczytu danych z procesu potomnego w g_io_channel_win32_poll() "
 "wystąpił nieznany błąd"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "Pusty ciąg nie jest liczbą"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "„%s” nie jest liczbą ze znakiem"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "Liczba „%s” jest poza zakresem [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "„%s” nie jest liczbą bez znaku"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "Nieprawidłowe „%-encoding” w adresie URI"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Niedozwolony znak w adresie URI"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Znaki niebędące UTF-8 w adresie URI"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Nieprawidłowy adres IPv6 „%.*s” w adresie URI"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Niedozwolony zakodowany adres IP „%.*s” w adresie URI"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Niedozwolona umiędzynarodowiona nazwa komputera „%.*s” w adresie URI"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Nie można przetworzyć portu „%.*s” w adresie URI"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "Port „%.*s” w adresie URI jest poza zakresem"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "Adres URI „%s” nie jest bezwzględnym adresem URI"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "Adres URI „%s” nie ma składnika komputera"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "Adres URI nie jest bezwzględny i nie podano podstawy adresu URI"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "Brak „=” i wartości parametru"
 
@@ -6232,64 +6429,64 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
+msgid "kbit"
 msgstr "kb"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
+msgid "Mbit"
 msgstr "Mb"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
+msgid "Gbit"
 msgstr "Gb"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
+msgid "Tbit"
 msgstr "Tb"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
+msgid "Pbit"
 msgstr "Pb"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
+msgid "Ebit"
 msgstr "Eb"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
+msgid "Kibit"
 msgstr "Kib"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
+msgid "Mibit"
 msgstr "Mib"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
+msgid "Gibit"
 msgstr "Gib"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
+msgid "Tibit"
 msgstr "Tib"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
+msgid "Pibit"
 msgstr "Pib"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
+msgid "Eibit"
 msgstr "Eib"
 
 #: glib/gutils.c:3056
index 8b4936b..1c1b308 100644 (file)
--- a/po/pt.po
+++ b/po/pt.po
@@ -6,14 +6,15 @@
 # Sérgio Cardeira <cardeira.sergio@gmail.com>, 2016.
 # Tiago Santos <tiagofsantos81@sapo.pt>, 2014, 2015, 2016.
 # Juliano de Souza Camargo <julianosc@protonmail.com>, 2020.
-# Hugo Carvalho <hugokarvalho@hotmail.com>, 2020, 2021, 2022, 2023.
+# Hugo Carvalho <hugokarvalho@hotmail.com>, 2020, 2021, 2022, 2023, 2024.
+# João Carvalhinho <joao.carvalhinho@gmail.com>, 2024.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: 3.12\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-07-28 12:53+0000\n"
-"PO-Revision-Date: 2023-08-04 16:53+0100\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-05-02 15:38+0000\n"
+"PO-Revision-Date: 2024-05-06 22:21+0100\n"
 "Last-Translator: Hugo Carvalho <hugokarvalho@hotmail.com>\n"
 "Language-Team: Portuguese <https://l10n.gnome.org/teams/pt/>\n"
 "Language: pt\n"
@@ -21,7 +22,7 @@ msgstr ""
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Poedit 3.3.2\n"
+"X-Generator: Poedit 3.4.2\n"
 
 #: gio/gappinfo.c:339
 msgid "Setting default applications not supported yet"
@@ -42,38 +43,42 @@ msgstr ""
 msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr "Falha ao encontrar uma aplicação predefinida para o esquema URI '%s'"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "GApplication Options:"
 msgstr "Opções GApplication:"
 
-#: gio/gapplication.c:506
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Mostrar opções GApplication"
 
-#: gio/gapplication.c:551
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr ""
 "Entrar em modo de serviço GApplication (utilizar a partir de ficheiros D-Bus "
 "de serviço)"
 
-#: gio/gapplication.c:563
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Ignorar o ID da aplicação"
 
 #: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Mostra a versão da aplicação"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Substituir a instância em execução"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Imprimir a ajuda"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[COMANDO]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Imprimir versão"
 
@@ -127,7 +132,7 @@ msgid "APPID"
 msgstr "IDAPLICAÇÃO"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "COMANDO"
 
@@ -141,9 +146,13 @@ msgstr ""
 "Identificador de aplicação em formato D-Bus (por ex: org.exemplo."
 "visualizador)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "FICHEIRO"
 
@@ -167,7 +176,7 @@ msgstr "PARÂMETRO"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Parâmetro opcional para a invocação da ação, em formato GVariant"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -181,12 +190,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Utilização:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Argumentos:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[ARGS…]"
 
@@ -279,78 +288,78 @@ msgstr ""
 "comando desconhecido: %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
 #: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
-#: gio/ginputstream.c:1056 gio/goutputstream.c:225 gio/goutputstream.c:1052
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "Valor de contagem demasiado grande passado para %s"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Procura não é suportada no fluxo base"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "Impossível truncar um GBufferedInputStream"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1246 gio/giostream.c:302
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
 #: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "O fluxo já se encontra fechado"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "Truncar não é suportado no fluxo base"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "A operação foi cancelada"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Objeto inválido, não inicializado"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Sequência multibyte inválida na entrada"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Espaço insuficiente no destino"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:450 glib/gconvert.c:882
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
 #: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Sequência de bytes inválida na origem da conversão"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:458 glib/gconvert.c:796
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Erro durante a conversão: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1164
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Não é suportada a inicialização cancelável"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:323 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "Conversão do conjunto de caracteres “%s” para “%s” não é suportada"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:327
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Impossível abrir conversor de “%s” para “%s”"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "Tipo %s"
@@ -364,41 +373,41 @@ msgstr "Tipo desconhecido"
 msgid "%s filetype"
 msgstr "Tipo de ficheiro %s"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials contém dados inválidos"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials não está implementado neste SO"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Não existe suporte para GCredentials na sua plataforma"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr "GCredentials não contém um ID de processo neste SO"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr "Simular credenciais não é possível neste SO"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "Final precoce de fluxo inesperado"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "Chave “%s” não suportada na entrada de endereço “%s”"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr "Combinação chave/valor sem sentido na entrada de endereço “%s”"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -407,28 +416,28 @@ msgstr ""
 "Endereço “%s” é inválido (é necessário um de caminho, dir, tmpdir ou chaves "
 "abstratas)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Erro no endereço “%s” - o atributo “%s” está mal formado"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Transporte “%s” desconhecido ou não suportado para o endereço “%s”"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "Elemento “%s” de endereço não contém dois-pontos (:)"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr "Nome do transporte no elemento “%s” endereço não pode ser vazio"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -437,14 +446,14 @@ msgstr ""
 "Par chave/valor %d, “%s”, no elemento “%s” de endereço, não contém um sinal "
 "de igual"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
 msgstr ""
 "Par chave/valor %d, “%s”, no elemento “%s” de endereço não pode ser vazio"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -453,7 +462,7 @@ msgstr ""
 "Erro ao desfazer o escape de chave ou valor no par Chave/Valor %d, “%s”, no "
 "elemento “%s” de endereço"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -462,78 +471,78 @@ msgstr ""
 "Erro no endereço “%s” — o transporte unix requer que exatamente uma das "
 "chaves “path” ou “abstract” esteja definida"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr "Erro no endereço “%s” — o atributo host está em falta ou mal formado"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr "Erro no endereço “%s” — o atributo port está em falta ou mal formado"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Erro no endereço “%s” — o atributo noncefile está em falta ou mal formado"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "Erro ao autoiniciar: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "Erro ao abrir o ficheiro nonce “%s”: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Erro ao ler do ficheiro nonce “%s”: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr "Erro ao ler do ficheiro nonce “%s”, esperados 16 bytes, obtidos %d"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr "Erro ao escrever o conteúdo do ficheiro nonce “%s” para o fluxo:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "O endereço indicado está vazio"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr ""
 "Impossível criar um canal de mensagem quando o AT_SECURE está configurado"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr "Impossível criar um canal de mensagem sem um id de máquina: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "Não foi possível lançar automaticamente o D-Bus sem o $DISPLAY X-11"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Erro ao criar uma linha de comando “%s”: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Impossível determinar o endereço do canal de sessão (não implementado para "
 "este SO)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7326
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7346
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -542,7 +551,7 @@ msgstr ""
 "Impossível determinar o endereço de canal a partir da variável de sessão "
 "DBUS_STARTER_BUS_TYPE — valor “%s” desconhecido"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7335
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7355
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -550,20 +559,20 @@ msgstr ""
 "Impossível determinar o endereço do canal porque a variável de ambiente "
 "DBUS_STARTER_BUS_TYPE não está definida"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Tipo de canal %d desconhecido"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Falta de conteúdo inesperada ao tentar ler uma linha"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr "Falta de conteúdo inesperada ao tentar ler uma linha (em segurança)"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -571,16 +580,16 @@ msgstr ""
 "Esgotados todos os mecanismos de autenticação disponíveis (tentados: %s) "
 "(disponíveis: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Falta de conteúdo inesperada ao tentar ler um byte"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr ""
 "As IDs dos utilizadores devem ser as mesmas para os pares e para o servidor"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Cancelado via GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -602,13 +611,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Erro ao criar o diretório “%s”: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1102 gio/gfile.c:1340
-#: gio/gfile.c:1478 gio/gfile.c:1716 gio/gfile.c:1771 gio/gfile.c:1829
-#: gio/gfile.c:1913 gio/gfile.c:1970 gio/gfile.c:2034 gio/gfile.c:2089
-#: gio/gfile.c:3949 gio/gfile.c:4088 gio/gfile.c:4500 gio/gfile.c:4970
-#: gio/gfile.c:5382 gio/gfile.c:5467 gio/gfile.c:5557 gio/gfile.c:5654
-#: gio/gfile.c:5741 gio/gfile.c:5842 gio/gfile.c:9000 gio/gfile.c:9090
-#: gio/gfile.c:9174 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Operação não suportada"
 
@@ -673,21 +682,21 @@ msgstr "Erro ao abrir o chaveiro “%s” para escrita: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(adicionalmente, também falhou a libertação para “%s”: %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2393
 msgid "The connection is closed"
 msgstr "A ligação está fechada"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "Foi atingido o tempo de expiração"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2516
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
 "Foram encontrados parâmetros não suportados ao construir a ligação de cliente"
 
-#: gio/gdbusconnection.c:4267 gio/gdbusconnection.c:4621
+#: gio/gdbusconnection.c:4278 gio/gdbusconnection.c:4632
 #, c-format
 msgid ""
 "No such interface “org.freedesktop.DBus.Properties” on object at path %s"
@@ -695,132 +704,155 @@ msgstr ""
 "Não existe o ambiente “org.freedesktop.DBus.Properties” no objeto no caminho "
 "%s"
 
-#: gio/gdbusconnection.c:4412
+#: gio/gdbusconnection.c:4423
 #, c-format
 msgid "No such property “%s”"
 msgstr "Não existe a propriedade “%s”"
 
-#: gio/gdbusconnection.c:4424
+#: gio/gdbusconnection.c:4435
 #, c-format
 msgid "Property “%s” is not readable"
 msgstr "A propriedade “%s” não pode ser lida"
 
-#: gio/gdbusconnection.c:4435
+#: gio/gdbusconnection.c:4446
 #, c-format
 msgid "Property “%s” is not writable"
 msgstr "A propriedade “%s” não pode ser escrita"
 
-#: gio/gdbusconnection.c:4455
+#: gio/gdbusconnection.c:4466
 #, c-format
 msgid "Error setting property “%s”: Expected type “%s” but got “%s”"
 msgstr ""
 "Erro ao definir a propriedade “%s”: esperado o tipo “%s”, obtido o “%s”"
 
-#: gio/gdbusconnection.c:4560 gio/gdbusconnection.c:4775
-#: gio/gdbusconnection.c:6752
+#: gio/gdbusconnection.c:4571 gio/gdbusconnection.c:4786
+#: gio/gdbusconnection.c:6766
 #, c-format
 msgid "No such interface “%s”"
 msgstr "Não existe o ambiente “%s”"
 
-#: gio/gdbusconnection.c:4991 gio/gdbusconnection.c:7266
+#: gio/gdbusconnection.c:5002 gio/gdbusconnection.c:7286
 #, c-format
 msgid "No such interface “%s” on object at path %s"
 msgstr "Não existe o ambiente “%s” no objeto no caminho %s"
 
-#: gio/gdbusconnection.c:5092
+#: gio/gdbusconnection.c:5103
 #, c-format
 msgid "No such method “%s”"
 msgstr "Não existe o método “%s”"
 
-#: gio/gdbusconnection.c:5123
+#: gio/gdbusconnection.c:5134
 #, c-format
 msgid "Type of message, “%s”, does not match expected type “%s”"
 msgstr "Tipo de mensagem, “%s”, não corresponde ao tipo “%s” esperado"
 
-#: gio/gdbusconnection.c:5326
+#: gio/gdbusconnection.c:5337
 #, c-format
 msgid "An object is already exported for the interface %s at %s"
 msgstr "Já existe um objeto exportado para o ambiente %s em %s"
 
-#: gio/gdbusconnection.c:5553
+#: gio/gdbusconnection.c:5567
 #, c-format
 msgid "Unable to retrieve property %s.%s"
 msgstr "Impossível obter propriedade %s.%s"
 
-#: gio/gdbusconnection.c:5609
+#: gio/gdbusconnection.c:5623
 #, c-format
 msgid "Unable to set property %s.%s"
 msgstr "Impossível definir propriedade %s.%s"
 
-#: gio/gdbusconnection.c:5788
+#: gio/gdbusconnection.c:5802
 #, c-format
 msgid "Method “%s” returned type “%s”, but expected “%s”"
 msgstr "O método “%s” devolveu o tipo “%s”, mas era esperado “%s”"
 
-#: gio/gdbusconnection.c:6864
+#: gio/gdbusconnection.c:6878
 #, c-format
 msgid "Method “%s” on interface “%s” with signature “%s” does not exist"
 msgstr "O método “%s” no ambiente “%s” com a assinatura “%s” não existe"
 
-#: gio/gdbusconnection.c:6985
+#: gio/gdbusconnection.c:6999
 #, c-format
 msgid "A subtree is already exported for %s"
 msgstr "Já existe uma subárvore exportada para %s"
 
-#: gio/gdbusconnection.c:7274
+#: gio/gdbusconnection.c:7294
 #, c-format
 msgid "Object does not exist at path “%s”"
 msgstr "O objeto não existe no caminho \"%s\""
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "tipo é INVÁLIDO"
-
-#: gio/gdbusmessage.c:1317
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing"
-msgstr "Mensagem METHOD_CALL: falta campo de cabeçalho PATH ou MEMBER"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
+msgstr ""
+"Mensagem %s: %s campo de cabeçalho é inválido; um valor do tipo ‘%s’ era "
+"esperado"
 
-#: gio/gdbusmessage.c:1328
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
-msgstr "Mensagem ETHOD_RETURN: falta campo de cabeçalho REPLY_SERIAL"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "Mensagem %s: falta campo de cabeçalho %s ou é inválido"
 
-#: gio/gdbusmessage.c:1340
-msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
-msgstr "Mensagem ERROR: Falta campo de cabeçalho REPLY_SERIAL ou ERROR_NAME"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "Mensagem %s: fornecido um campo de cabeçalho INVALIDO"
 
-#: gio/gdbusmessage.c:1353
-msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
-msgstr "Mensagem SIGNAL: falta campo de cabeçalho PATH, INTERFACE ou MEMBER"
+#: gio/gdbusmessage.c:1424
+#, c-format
+msgid ""
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
+msgstr ""
+"Mensagem %s: o campo de cabeçalho PATH está a utilizar o valor reservado /"
+"org/freedesktop/DBus/Local"
 
-#: gio/gdbusmessage.c:1361
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
 msgstr ""
-"Mensagem SIGNAL: o campo de cabeçalho PATH está a utilizar o valor "
-"reservado /org/freedesktop/DBus/Local"
+"Mensagem %s: campo de cabeçalho de INTERFACE não contem um nome de interface "
+"válido"
 
-#: gio/gdbusmessage.c:1369
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
 msgstr ""
-"Mensagem SIGNAL: o campo de cabeçalho INTERFACE está a utilizar o valor "
+"Mensagem %s: o campo de cabeçalho INTERFACE está a utilizar o valor "
 "reservado org.freedesktop.DBus.Local"
 
-#: gio/gdbusmessage.c:1417 gio/gdbusmessage.c:1477
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr ""
+"Mensagem %s: campo de cabeçalho de MEMBER não contem um nome de membro válido"
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+"Mensagem %s: campo de cabeçalho ERRO_NAME não contém um nome de erro válido"
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "tipo é INVÁLIDO"
+
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
 msgstr[0] "Tentativa de ler %lu byte mas só obtido %lu"
 msgstr[1] "Tentativa de ler %lu bytes mas só obtidos %lu"
 
-#: gio/gdbusmessage.c:1431
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr "Esperado o byte NUL após a cadeia “%s” mas encontrado o byte %d"
 
-#: gio/gdbusmessage.c:1450
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -830,21 +862,21 @@ msgstr ""
 "de bytes %d (comprimento da cadeia é %d). A cadeia UTF-8 válida até esse "
 "ponto era “%s”"
 
-#: gio/gdbusmessage.c:1514 gio/gdbusmessage.c:1790 gio/gdbusmessage.c:2001
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Origem do valor muito antiga"
 
-#: gio/gdbusmessage.c:1682
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr "Valor processado “%s” não é um caminho de objeto D-Bus válido"
 
-#: gio/gdbusmessage.c:1706
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "Valor processado “%s” não é uma assinatura D-Bus válida"
 
-#: gio/gdbusmessage.c:1757
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -857,7 +889,7 @@ msgstr[1] ""
 "Encontrado um vetor de %u bytes de comprimento. Tamanho máximo é 2<<26 bytes "
 "(64MiB)."
 
-#: gio/gdbusmessage.c:1777
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -866,16 +898,16 @@ msgstr ""
 "Encontrado um vetor de tipo \"a%c\", esperado um comprimento múltiplo de %u "
 "bytes, obtidos %u bytes de comprimento"
 
-#: gio/gdbusmessage.c:1931 gio/gdbusmessage.c:2650
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Estruturas vazias (tuples) não são permitidas no D-Bus"
 
-#: gio/gdbusmessage.c:1985
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr "Valor processado “%s” para variante não é uma assinatura D-Bus válida"
 
-#: gio/gdbusmessage.c:2026
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -883,7 +915,7 @@ msgstr ""
 "Erro ao remover serialização GVariant com a cadeia de tipo “%s” do formato "
 "de ligação D-Bus"
 
-#: gio/gdbusmessage.c:2211
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -892,28 +924,28 @@ msgstr ""
 "Valor de \"endianness\" inválido. Esperado 0x6c (“l”) ou 0x42 (“B”) mas "
 "obtido o valor 0x%02x"
 
-#: gio/gdbusmessage.c:2230
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr "Versão principal de protocolo inválida. Esperada 1 mas obtida %d"
 
-#: gio/gdbusmessage.c:2288 gio/gdbusmessage.c:2886
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "Assinatura de cabeçalho encontrada, mas não do tipo assinatura"
 
-#: gio/gdbusmessage.c:2300
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr ""
 "Assinatura de cabeçalho com a assinatura “%s” encontrada, mas o corpo da "
 "mensagem está vazio"
 
-#: gio/gdbusmessage.c:2315
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr "Valor processado “%s” não é uma assinatura D-Bus válida (para corpo)"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
@@ -924,11 +956,11 @@ msgstr[1] ""
 "Nenhum cabeçalho de assinatura na mensagem mas o corpo da mensagem tem %u "
 "bytes"
 
-#: gio/gdbusmessage.c:2357
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Impossível remover serialização da mensagem: "
 
-#: gio/gdbusmessage.c:2703
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -936,7 +968,7 @@ msgstr ""
 "Erro ao serializar GVariant com a cadeia de tipo “%s” para o formato de "
 "ligação D-Bus"
 
-#: gio/gdbusmessage.c:2840
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
@@ -944,18 +976,18 @@ msgstr ""
 "Número de descritores de ficheiro na mensagem (%d) difere do campo no "
 "cabeçalho (%d)"
 
-#: gio/gdbusmessage.c:2848
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Impossível serializar a mensagem: "
 
-#: gio/gdbusmessage.c:2901
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr ""
 "O corpo da mensagem tem a assinatura “%s” mas não existe a assinatura de "
 "cabeçalho"
 
-#: gio/gdbusmessage.c:2911
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -964,19 +996,19 @@ msgstr ""
 "O corpo da mensagem tem o tipo de assinatura “%s”, mas a assinatura no campo "
 "de cabeçalho é “%s”"
 
-#: gio/gdbusmessage.c:2927
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr ""
 "O corpo da mensagem está vazio mas a assinatura no campo de cabeçalho é "
 "“(%s)”"
 
-#: gio/gdbusmessage.c:3482
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Resposta de erro com corpo do tipo “%s”"
 
-#: gio/gdbusmessage.c:3490
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Resposta de erro com corpo vazio"
 
@@ -997,22 +1029,22 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Impossível obter o perfil de equipamento: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "Incapaz de carregar %s ou %s: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Erro ao invocar StartServiceByName para %s: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Resposta %d inesperada do método StartServiceByName(“%s”)"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1021,25 +1053,25 @@ msgstr ""
 "Impossível invocar o método; o proxy é para o nome conhecido %s sem um dono "
 "e o proxy foi construído com o parâmetro G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "Não é suportado nome de espaço abstrato"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr "Impossível especificar ficheiro nonce ao criar um servidor"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "Erro ao escrever no ficheiro nonce em “%s”: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "A cadeia “%s” não é um GUID D-Bus válido"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "Impossível ouvir no transporte não suportado “%s”"
@@ -1102,6 +1134,10 @@ msgstr "Ligar ao bus de sessão"
 msgid "Connect to given D-Bus address"
 msgstr "Ligar ao endereço D-Bus especificado"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ENDEREÇO"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Opções de destino da ligação:"
@@ -1331,72 +1367,73 @@ msgstr "Erro: %s não é um nome de canal válido\n"
 msgid "Not authorized to change debug settings"
 msgstr "Não autorizado a alterar as definições de depuração"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Sem nome"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "Ficheiro do ambiente de trabalho não especificou campo Exec"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Impossível encontrar o terminal necessário à aplicação"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Programa '%s' não encontrado em $PATH"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr ""
 "Impossível criar a pasta de configurações de utilizador da aplicação %s: %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr "Impossível criar a pasta de configurações MIME do utilizador %s: %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "Informação da aplicação não possui um identificador"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Impossível criar ficheiro do ambiente de trabalho do utilizador %s"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Definição personalizada de %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "a unidade não implementa a ejeção"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "a unidade não implementa eject ou eject_with_operation"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "a unidade não implementa a verificação de existência de suportes"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "a unidade não implementa a reprodução"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "a unidade não implementa a paragem"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "O suporte TLS não implementa a recuperação de fomatos TLS"
 
@@ -1409,27 +1446,27 @@ msgstr "O suporte TLS não está disponível"
 msgid "DTLS support is not available"
 msgstr "O suporte DTLS não está disponível"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Impossível manipular a versão %d da codificação GEmblem"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Número de blocos (%d) mal-formado na codificação GEmblem"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Impossível manipular a versão %d da codificação GEmblemedIcon"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Número de blocos (%d) mal-formado na codificação GEmblemedIcon"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Esperado um GEmblem para o GEmblemedIcon"
 
@@ -1437,129 +1474,134 @@ msgstr "Esperado um GEmblem para o GEmblemedIcon"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1601
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "Montagem contida não existe"
 
-#: gio/gfile.c:2648 gio/glocalfile.c:2518
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Impossível copiar sobre um diretório"
 
-#: gio/gfile.c:2708
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Impossível copiar uma pasta sobre uma pasta"
 
-#: gio/gfile.c:2716
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Ficheiro de destino já existe"
 
-#: gio/gfile.c:2735
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Impossível copiar diretório recursivamente"
 
-#: gio/gfile.c:3044 gio/gfile.c:3092
+#: gio/gfile.c:3050 gio/gfile.c:3098
 #, c-format
 msgid "Copy file range not supported"
 msgstr "Copiar intervalo de ficheiros não suportado"
 
-#: gio/gfile.c:3050 gio/gfile.c:3161
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Erro ao dividir o ficheiro: %s"
 
-#: gio/gfile.c:3157
+#: gio/gfile.c:3163
 msgid "Splice not supported"
 msgstr "Dividir ficheiros não é suportado"
 
-#: gio/gfile.c:3321
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr "Copiar (reflink/clonar) entre montados não é suportado"
 
-#: gio/gfile.c:3325
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "Copiar (reflink/clonar) não é suportado ou é inválido"
 
-#: gio/gfile.c:3330
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "Copiar (reflink/clonar) não é suportado ou falhou"
 
-#: gio/gfile.c:3395
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Impossível buscar atributo %s"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Impossível copiar ficheiro especial"
 
-#: gio/gfile.c:4314
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Dado um valor de ligação simbólica inválida"
 
-#: gio/gfile.c:4324 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Ligações simbólicas não são suportadas"
 
-#: gio/gfile.c:4611
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "Não existe suporte para o lixo"
 
-#: gio/gfile.c:4723
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "Nomes de ficheiros não podem conter “%c”"
 
-#: gio/gfile.c:7155 gio/gfile.c:7281
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr "Falha ao criar um diretório temporário para o modelo \"%s\": %s"
 
-#: gio/gfile.c:7599 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "unidade não implementa a montagem"
 
-#: gio/gfile.c:7713 gio/gfile.c:7790
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Não existe nenhuma aplicação registada para gerir este ficheiro"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "Enumerador está fechado"
 
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:425 gio/gfileenumerator.c:525
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "Enumerador de ficheiro tem uma operação por terminar"
 
-#: gio/gfileenumerator.c:416 gio/gfileenumerator.c:516
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "Enumerador de ficheiro já está fechado"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Impossível manipular a versão %d da codificação GFileIcon"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Dados de entrada mal-formados para o GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:397
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Fluxo não suporta query_info"
 
-#: gio/gfileinputstream.c:328 gio/gfileiostream.c:382
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Fluxo não suporta procura"
 
-#: gio/gfileinputstream.c:372
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "Fluxo de entrada não permite truncar"
 
-#: gio/gfileiostream.c:458 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "Fluxo não suporta truncar"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:535 gio/gresolver.c:688
-#: glib/gconvert.c:1842
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Nome de máquina inválido"
 
@@ -1592,64 +1634,64 @@ msgstr "Resposta de proxy HTTP demasiado grande"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "O servidor proxy HTTP fechou a ligação inesperadamente."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Número incorreto de blocos (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Nenhum tipo para o nome da classe %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "O tipo %s não implementa o ambiente GIcon"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "O tipo %s não possui uma classe"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Número de versão mal-formado: %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr "O tipo %s não implementa from_tokens() no ambiente GIcon"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Impossível manipular a versão especificada da codificação do ícone"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Nenhum endereço especificado"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "Comprimento %u é demasiado extenso para um endereço"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "Endereço tem bits definidos para lá do comprimento do prefixo"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "Impossível processar “%s” como a máscara de endereço IP"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Espaço insuficiente para o endereço do socket"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Endereço de socket não suportado"
 
@@ -1663,7 +1705,7 @@ msgstr "Fluxo de entrada não implementa a leitura"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1256 gio/giostream.c:312 gio/goutputstream.c:2218
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "Fluxo tem uma operação por terminar"
 
@@ -1679,7 +1721,7 @@ msgstr "Manter com o ficheiro depois de mover"
 msgid "“version” takes no arguments"
 msgstr "“versão” não recebe argumentos"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Utilização:"
 
@@ -1687,79 +1729,79 @@ msgstr "Utilização:"
 msgid "Print version information and exit."
 msgstr "Imprimir informação de versão e sair."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Comandos:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Concatenar ficheiros para a saída predefinida"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Copiar um ou mais ficheiros"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Mostrar informação sobre as localizações"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Iniciar uma aplicação a partir de um ficheiro desktop"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Lista de conteúdos das localizações"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Obter ou definir o manuseador mimetype"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Criar diretórios"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Monitorizar ficheiros e diretórios por mudanças"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Montar ou desmontar as localizações"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Mover um ou mais ficheiros"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Abrir ficheiros com a aplicação pré-definida"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Renomear um ficheiro"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Apagar um ou mais ficheiros"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Ler da entrada predefinida e guardar"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Definir um atributo de ficheiro"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Mover ficheiros ou diretórios para o lixo"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Listar os conteúdos das localizações numa árvore"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Comandos:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "Utilizar %s para obter ajuda detalhada.\n"
@@ -1769,7 +1811,7 @@ msgid "Error writing to stdout"
 msgstr "Erro ao escrever no stdout"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
 #: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
@@ -1792,60 +1834,64 @@ msgstr ""
 "utilizando localizações GIO em vez de ficheiros locais: por exemplo\n"
 "pode utilizar smb://server/resource/ficheiro.txt como localização."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
 #: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Nenhuma localização fornecida"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Nenhum diretório destino"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Mostrar progresso"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Pedir confirmação antes de sobrescrever"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Preservar todos os atributos"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Criar cópia de segurança dos ficheiros existentes do destino"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Nunca seguir ligações simbólicas"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Usar permissões predefinidas para o destino"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr "Usar carimbo de hora da modificação por omissão no destino"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "Transferido %s de %s (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "FONTE"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "DESTINO"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Copiar um ou mais ficheiros da FONTE para o DESTINO."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1855,12 +1901,12 @@ msgstr ""
 "GIO ao invés de ficheiros locais: a exemplo, pode usar algo feito \n"
 "smb://server/resource/file.txt como localização."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "Destino %s\" não é um diretório"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: sobrescrever“%s”? "
@@ -1889,62 +1935,64 @@ msgstr "Não seguir ligações simbólicas"
 msgid "attributes:\n"
 msgstr "atributos:\n"
 
+#. Translators: This is a noun and represents and attribute of a file
 #: gio/gio-tool-info.c:166
 #, c-format
 msgid "display name: %s\n"
 msgstr "nome de apresentação: %s\n"
 
+#. Translators: This is a noun and represents and attribute of a file
 #: gio/gio-tool-info.c:176
 #, c-format
 msgid "edit name: %s\n"
 msgstr "nome de edição: %s\n"
 
-#: gio/gio-tool-info.c:184
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "nome: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "tipo: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "tamanho: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "escondido\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "uri: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "caminho local: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "montagem unix: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Atributos definíveis:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Espaço de nomes de atributos graváveis:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Mostrar informação sobre as localizações."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2502,7 +2550,8 @@ msgstr ""
 "(predefinição: diretório atual)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "PASTA"
 
@@ -2553,6 +2602,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Nome do identificador C utilizado no código fonte gerado"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFICADOR"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "O compilador C de destino (padrão: a variável de ambiente CC)"
@@ -3067,126 +3120,126 @@ msgstr "Erro ao obter a informação do sistema de ficheiros para %s: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1148
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "Montagem que contém o ficheiro %s não encontrada"
 
-#: gio/glocalfile.c:1171
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Impossível renomear o diretório raiz"
 
-#: gio/glocalfile.c:1189 gio/glocalfile.c:1212
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Erro ao renomear o ficheiro %s: %s"
 
-#: gio/glocalfile.c:1196
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Impossível renomear o ficheiro, o nome já existe"
 
-#: gio/glocalfile.c:1209 gio/glocalfile.c:2412 gio/glocalfile.c:2440
-#: gio/glocalfile.c:2579 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Nome de ficheiro inválido"
 
-#: gio/glocalfile.c:1377 gio/glocalfile.c:1388
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Erro ao abrir o ficheiro %s: %s"
 
-#: gio/glocalfile.c:1513
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Erro ao remover o ficheiro %s: %s"
 
-#: gio/glocalfile.c:2007 gio/glocalfile.c:2018 gio/glocalfile.c:2045
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Erro ao enviar o ficheiro %s para o lixo: %s"
 
-#: gio/glocalfile.c:2065
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Impossível criar o diretório de lixo %s: %s"
 
-#: gio/glocalfile.c:2086
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr "Impossível encontrar o diretório de topo para o lixo %s"
 
-#: gio/glocalfile.c:2094
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr "Impossível enviar para o lixo montagens internas do sistema"
 
-#: gio/glocalfile.c:2180 gio/glocalfile.c:2208
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr "Impossível encontrar ou criar o diretório de lixo %s para o lixo %s"
 
-#: gio/glocalfile.c:2252
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "Impossível criar o ficheiro de informação do lixo para %s: %s"
 
-#: gio/glocalfile.c:2323
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr ""
 "Impossível enviar o ficheiro %s para o lixo através dos limites do sistema "
 "de ficheiros"
 
-#: gio/glocalfile.c:2327 gio/glocalfile.c:2383
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Impossível enviar o ficheiro %s para o lixo: %s"
 
-#: gio/glocalfile.c:2389
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Impossível enviar o ficheiro %s para o lixo"
 
-#: gio/glocalfile.c:2415
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Erro ao criar o diretório %s: %s"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "O sistema de ficheiros não suporta ligações simbólicas"
 
-#: gio/glocalfile.c:2447
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Erro ao criar ligação simbólica %s: %s"
 
-#: gio/glocalfile.c:2490 gio/glocalfile.c:2525 gio/glocalfile.c:2582
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Erro ao mover o ficheiro %s: %s"
 
-#: gio/glocalfile.c:2513
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Impossível mover uma pasta sobre uma pasta"
 
-#: gio/glocalfile.c:2539 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "Falha ao criar o ficheiro de cópia de segurança"
 
-#: gio/glocalfile.c:2558
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Erro ao remover o ficheiro de destino: %s"
 
-#: gio/glocalfile.c:2572
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Não é suportado mover entre montados"
 
-#: gio/glocalfile.c:2748
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Impossível determinar a utilização de disco de %s: %s"
@@ -3208,117 +3261,117 @@ msgstr "Nome de atributo extendido inválido"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Erro ao definir o atributo extendido “%s”: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (codificação inválida)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Erro ao obter informação para o ficheiro “%s”: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "Erro ao obter informação sobre o descritor do ficheiro: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Tipo de atributo inválido (esperado um uint32)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Tipo de atributo inválido (esperado um uint64)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Tipo de atributo inválido (esperado uma cadeia byte)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "Impossível definir permissões em ligações simbólicas"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Erro ao definir as permissões: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Erro ao definir o dono: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "ligação simbólica tem de ser não-NULL"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Erro ao definir a ligação simbólica: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr ""
 "Erro ao definir a ligação simbólica: ficheiro não é uma ligação simbólica"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr "Nanosegundos %d extras para a data/hora UNIX %lld são negativos"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr "Nanosegundos %d extras para a data/hora UNIX %lld atinge 1 segundo"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "Data/hora UNIX %lld não cabem em 64 bits"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr "Data/hora UNIX %lld estão fora do alcance suportado pelo Windows"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "Nome de ficheiro “%s” não pode ser convertido para UTF-16"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "Ficheiro “%s” não pode ser aberto: erro do Windows %lu"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr ""
 "Erro ao definir ou modificar a hora de acesso para o ficheiro “%s”: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "Erro ao definir a hora de modificação ou acesso: %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "O contexto SELinux tem de ser não-NULL"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "O SELinux não está ativo neste sistema"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Erro ao definir o contexto SELinux: %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "Não é suportada a definição do atributo %s"
@@ -3371,7 +3424,7 @@ msgid "Error truncating file: %s"
 msgstr "Erro ao truncar ficheiro: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Erro ao abrir o ficheiro “%s”: %s"
@@ -3393,27 +3446,27 @@ msgstr "O ficheiro foi alterado externamente"
 msgid "Error removing old file: %s"
 msgstr "Erro ao remover o ficheiro antigo: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "Fornecido um GSeekType inválido"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Pedido de procura inválido"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "Impossível truncar um GMemoryInputStream"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Fluxo de saída de memória não é redimensionável"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Falha ao redimensionar fluxo de saída de memória"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3421,32 +3474,32 @@ msgstr ""
 "Quantidade de memória necessária para processar a escrita é maior do que o "
 "espaço de endereçamento disponível"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Pedida uma procura para antes do início do fluxo"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Pedida uma procura para depois do final do fluxo"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "dispositivo montado não implementa “desmontar”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "dispositivo montado não implementa “ejetar”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "dispositivo montado não implementa “desmontar” ou “desmontar_com_operacao”"
@@ -3454,42 +3507,42 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr "dispositivo montado não implementa “eject” ou “eject_with_operation”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "dispositivo montado não implementa “remontar”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "dispositivo montado não implementa deteção do tipo de conteúdo"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr ""
 "dispositivo montado não implementa deteção síncrona do tipo de conteúdo"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Nome de máquina “%s” contém “[” mas não “]”"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Rede inacessível"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Servidor inacessível"
 
@@ -3517,7 +3570,7 @@ msgstr "Gestor de rede não está em execução"
 msgid "NetworkManager version too old"
 msgstr "Versão do gestor de rede demasiado antiga"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Fluxo de saída não implementa a escrita"
 
@@ -3530,60 +3583,60 @@ msgstr "Soma dos vetores passados ao %s demasiado longa"
 msgid "Source stream is already closed"
 msgstr "Fluxo de origem já está fechado"
 
-#: gio/gproxyaddressenumerator.c:329 gio/gproxyaddressenumerator.c:347
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Falha de pesquisa de proxy não especificada"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:478 gio/gthreadedresolver.c:317 gio/gthreadedresolver.c:338
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Erro ao resolver “%s”: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:547 gio/gresolver.c:707
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s não implementado"
 
-#: gio/gresolver.c:1076 gio/gresolver.c:1128
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Domínio inválido"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:478 gio/gresourcefile.c:602
-#: gio/gresourcefile.c:753
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "O recurso em “%s” não existe"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "Falha ao descomprimir o recurso em “%s”"
 
-#: gio/gresourcefile.c:659
+#: gio/gresourcefile.c:663
 msgid "Resource files cannot be renamed"
 msgstr "Os ficheiros de recurso não podem ser renomeados"
 
-#: gio/gresourcefile.c:749
+#: gio/gresourcefile.c:753
 #, c-format
 msgid "The resource at “%s” is not a directory"
 msgstr "O recurso em “%s” não é um diretório"
 
-#: gio/gresourcefile.c:957
+#: gio/gresourcefile.c:961
 msgid "Input stream doesn’t implement seek"
 msgstr "Fluxo de entrada não implementa procura"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Lista secções que contêm recursos num FICHEIRO elf"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3593,15 +3646,15 @@ msgstr ""
 "Se for especificada uma SECÇÃO, apenas listar recursos nesta secção\n"
 "Se for especificado uma LOCALIZAÇÃO, apenas listar recursos que coincidam"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "FICHEIRO [LOCALIZAÇÃO]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SECÇÃO"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3613,15 +3666,15 @@ msgstr ""
 "Se for especificado uma LOCALIZAÇÃO, apenas listar recursos que coincidam\n"
 "Detalhes incluem a secção, tamanho e compressão"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Extrair um ficheiro de recurso para o terminal"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "LOCALIZAÇÃO FICHEIRO"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3649,7 +3702,7 @@ msgstr ""
 "Utilize \"gresource help COMANDO\" para obter ajuda detalhada.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3664,20 +3717,20 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SECÇÃO    Um nome (opcional) de secção elf\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  COMANDO   O comando (opcional) a ser explicado\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr ""
 "  FICHEIRO  Um ficheiro elf (um binário ou uma biblioteca partilhada)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3685,20 +3738,20 @@ msgstr ""
 "  FICHEIRO  Um ficheiro elf (um binário ou uma biblioteca partilhada)\n"
 "            ou um ficheiro de recurso compilado\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[LOCALIZAÇÃO]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr ""
 "  LOCALIZAÇÃO   Uma localização (opcional) de recurso (pode ser parcial)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "LOCALIZAÇÃO"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  LOCALIZAÇÃO   Uma localização de recurso\n"
 
@@ -3929,215 +3982,215 @@ msgstr "Indicado um nome de esquema vazio\n"
 msgid "No such key “%s”\n"
 msgstr "Não existe a chave “%s”\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Socket inválido, não inicializado"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Socket inválido, a inicialização falhou devido a: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "Socket já está fechado"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3238 gio/gsocket.c:4469 gio/gsocket.c:4527
-#: gio/gthreadedresolver.c:1438
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "Tempo expirou no I/O de socket"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "a criar o GSocket do fd: %s"
 
-#: gio/gsocket.c:646 gio/gsocket.c:714 gio/gsocket.c:721
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Impossível criar socket: %s"
 
-#: gio/gsocket.c:714
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "Foi especificada uma família desconhecida"
 
-#: gio/gsocket.c:721
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "Foi especificado um protocolo desconhecido"
 
-#: gio/gsocket.c:1190
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr "Impossível utilizar operações datagram em sockets não datagram."
 
-#: gio/gsocket.c:1207
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr ""
 "Impossível utilizar operações datagram num socket com um tempo de expiração "
 "definido."
 
-#: gio/gsocket.c:2014
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "impossível obter o endereço local: %s"
 
-#: gio/gsocket.c:2060
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "impossível obter o endereço remoto: %s"
 
-#: gio/gsocket.c:2126
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "impossível escutar: %s"
 
-#: gio/gsocket.c:2230
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Erro ao ligar-se ao endereço: %s: %s"
 
-#: gio/gsocket.c:2405 gio/gsocket.c:2442 gio/gsocket.c:2552 gio/gsocket.c:2577
-#: gio/gsocket.c:2644 gio/gsocket.c:2702 gio/gsocket.c:2720
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Erro ao juntar-se a um grupo multicast: %s"
 
-#: gio/gsocket.c:2406 gio/gsocket.c:2443 gio/gsocket.c:2553 gio/gsocket.c:2578
-#: gio/gsocket.c:2645 gio/gsocket.c:2703 gio/gsocket.c:2721
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Erro ao sair do grupo multicast: %s"
 
-#: gio/gsocket.c:2407
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Suporte indisponível para multicast específico da origem"
 
-#: gio/gsocket.c:2554
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Família de socket não suportada"
 
-#: gio/gsocket.c:2579
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "fonte-específica não é um endereço IPv4"
 
-#: gio/gsocket.c:2603
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Nome de ambiente demasiado extenso"
 
-#: gio/gsocket.c:2616 gio/gsocket.c:2670
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Ambiente não encontrado: %s"
 
-#: gio/gsocket.c:2646
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Suporte indisponível para difusão de fonte-específica IPv4"
 
-#: gio/gsocket.c:2704
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Suporte indisponível para difusão de fonte-específica IPv6"
 
-#: gio/gsocket.c:2937
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Erro ao aceitar a ligação: %s"
 
-#: gio/gsocket.c:3063
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Ligação em curso"
 
-#: gio/gsocket.c:3114
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Impossível obter o erro pendente: "
 
-#: gio/gsocket.c:3303
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Erro ao receber os dados: %s"
 
-#: gio/gsocket.c:3500
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Erro ao enviar os dados: %s"
 
-#: gio/gsocket.c:3687
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Impossível desligar o socket: %s"
 
-#: gio/gsocket.c:3768
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Erro ao fechar o socket: %s"
 
-#: gio/gsocket.c:4462
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "A aguardar pela condição do socket: %s"
 
-#: gio/gsocket.c:4852 gio/gsocket.c:4868 gio/gsocket.c:4881
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Incapaz de enviar a mensagem: %s"
 
-#: gio/gsocket.c:4853 gio/gsocket.c:4869 gio/gsocket.c:4882
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Vectores de mensagem demasiado grandes"
 
-#: gio/gsocket.c:4898 gio/gsocket.c:4900 gio/gsocket.c:5047 gio/gsocket.c:5132
-#: gio/gsocket.c:5310 gio/gsocket.c:5350 gio/gsocket.c:5352
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Erro ao enviar a mensagem: %s"
 
-#: gio/gsocket.c:5074
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "GSocketControlMessage não é suportada em Windows"
 
-#: gio/gsocket.c:5547 gio/gsocket.c:5623 gio/gsocket.c:5849
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Erro ao receber a mensagem: %s"
 
-#: gio/gsocket.c:6134 gio/gsocket.c:6145 gio/gsocket.c:6208
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Impossível ler as credenciais do socket: %s"
 
-#: gio/gsocket.c:6217
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr "g_socket_get_credentials não implementado neste SO"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Impossível ligar ao servidor de proxy %s: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Impossível ligar a %s: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Impossível ligar: "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "Não há suporte à realização de proxy sobre ligações não-TCP."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "O protocolo de proxy “%s” não é suportado."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "A escuta já se encontra fechada"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "Socket adicionado está fechado"
 
@@ -4230,94 +4283,94 @@ msgstr "Proxy SOCKSv5 não suporta o tipo de endereço indicado."
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "Erro de proxy SOCKSv5 desconhecido."
 
-#: gio/gtestdbus.c:614 glib/gspawn-win32.c:433
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr "Falha ao criar canal para comunicar com sub processo (%s)"
 
-#: gio/gtestdbus.c:621
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Os canais não são suportados nesta plataforma"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Impossível manipular a versão %d da codificação GThemedIcon"
 
-#: gio/gthreadedresolver.c:319
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Não foram encontrados endereços válidos"
 
-#: gio/gthreadedresolver.c:514
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Erro ao realizar a resolução invertida de “%s”: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:737 gio/gthreadedresolver.c:759
-#: gio/gthreadedresolver.c:813 gio/gthreadedresolver.c:860
-#: gio/gthreadedresolver.c:889 gio/gthreadedresolver.c:901
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr "Erro ao analisar o registo DNS %s: pacote DNS malformado"
 
-#: gio/gthreadedresolver.c:959 gio/gthreadedresolver.c:1096
-#: gio/gthreadedresolver.c:1194 gio/gthreadedresolver.c:1244
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Nenhum registo DNS do tipo pedido para “%s”"
 
-#: gio/gthreadedresolver.c:964 gio/gthreadedresolver.c:1199
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "Temporariamente indisponível para resolver “%s”"
 
-#: gio/gthreadedresolver.c:969 gio/gthreadedresolver.c:1204
-#: gio/gthreadedresolver.c:1300
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Erro ao resolver “%s”"
 
-#: gio/gthreadedresolver.c:983 gio/gthreadedresolver.c:1007
-#: gio/gthreadedresolver.c:1032 gio/gthreadedresolver.c:1047
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Pacote DNS malformado"
 
-#: gio/gthreadedresolver.c:1089
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Falha ao analisar a resposta do DNS para \"%s\": "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Nenhuma chave privada codificada PEM encontrada"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "Impossível desencriptar a chave privada codificada PEM"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "Impossível processar a chave privada codificada PEM"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Nenhum certificado codificado PEM encontrado"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "Impossível processar certificado codificado PEM"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "O backend TLS atual não suporta o PKCS #12"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr "Este GTlsBackend não suporta a criação de certificados PKCS # 11"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4327,7 +4380,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4335,138 +4388,151 @@ msgstr ""
 "Foram introduzidas várias palavras-passe incorretas e o seu acesso será "
 "vedado após falhas adicionais."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "A palavra-passe introduzida está incorreta."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "O envio de FD não é suportado"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:602
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "Era esperada 1 mensagem de controlo, obtida %d"
 msgstr[1] "Era esperada 1 mensagem de controlo, obtidas %d"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:614
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Tipo inesperado de dados basilares"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "Esperado um fd, obtido %d\n"
 msgstr[1] "Esperado um fd, obtidos %d\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Recebido um fd inválido"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "A receção FD não é suportada"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Erro ao enviar as credenciais: "
 
-#: gio/gunixconnection.c:542
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr "Erro ao verificar se SO_PASSCRED está ativo para o socket: %s"
 
-#: gio/gunixconnection.c:558
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Erro ao ativar SO_PASSCRED: %s"
 
-#: gio/gunixconnection.c:587
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Deveria ler um único byte para receber credenciais mas foram lidos zero bytes"
 
-#: gio/gunixconnection.c:628
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Não eram esperadas mensagens de controlo, obtidas %d"
 
-#: gio/gunixconnection.c:653
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Erro ao desativar SO_PASSCRED: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Erro ao ler do descritor do ficheiro: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Erro ao fechar o descritor do ficheiro: %s"
 
-#: gio/gunixmounts.c:2826 gio/gunixmounts.c:2879
+#: gio/gunixmounts.c:2897 gio/gunixmounts.c:2950
 msgid "Filesystem root"
 msgstr "Raiz do sistema de ficheiros"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Erro ao escrever no descritor do ficheiro: %s"
 
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr ""
 "Endereços abstratos de sockets de domínio UNIX não são suportados neste "
 "sistema"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "unidade não implementa a ejeção"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "unidade não implementa eject ou eject_with_operation"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr "A aplicação ‘%s’ no objecto da aplicação não contem verbos"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+"A aplicação ‘%s’ e on controlador ‘%s’ no objecto da aplicação não contem "
+"verbos"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Erro ao ler do manipulador: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Erro ao fechar o manipulador: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Erro ao escrever no manipulador: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Memória livre insuficiente"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Erro interno: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Necessita de mais dados"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Dados comprimidos inválidos"
 
@@ -4494,150 +4560,288 @@ msgstr "Executar um serviço dbus"
 msgid "Wrong args\n"
 msgstr "Argumentos incorretos\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Falha ao abrir ‘%s’: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Erro, impossível escrever o resultado completo: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Erro: Falha ao renomear ‘%s’ para ‘%s’: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Incluir directorias no caminho de pesquisa GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Ficheiro de resultado"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Biblioteca partilhada"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Mostrar mensagem de depuração"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Mostrar mensagem de forma detalhada"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Mostrar a versão da aplicação e sair"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Erro ao processar os argumentos: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Especifique exatamente um ficheiro de entrada"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Erro ao abrir o ficheiro ‘%s’: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Falha ao criar a Typelib para o módulo ’%s’"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Typelib inválida para o módulo '%s': %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Mostrar toda a informação"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Falha ao processar: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Sem ficheiro de entrada"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Falha ao ler ‘%s’: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Falha ao criar a typelib ‘%s’: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Falha ao carregar a typelib: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Aviso: %u módulos omitidos"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Versão Typelib para inspeccionar"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSAO"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Lista as bibliotecas partilhadas que o Typelib requere"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Lista outras Typelibs que a Typelib inspeccionada requere"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "A typelib a inspeccionar"
+
+#: girepository/inspector/inspector.c:75
+msgid "NAMESPACE"
+msgstr "NAMESPACE"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Inspecciona GY Typelib"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Falha ao processar as opções da linha de comandos: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Especifica exactamente um namespace"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Especifica"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Atributo “%s” inesperado para o elemento “%s”"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "Atributo “%s” do elemento “%s” não foi encontrado"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Etiqueta “%s” inesperada, esperada a etiqueta “%s”"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Etiqueta “%s” inesperada dentro de “%s”"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Data/hora “%s” inválida no ficheiro marcado"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr ""
 "Não foi encontrado nenhum ficheiro de marcador válido nos pastas de dados"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Já existe um marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Não foi encontrado nenhum marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Nenhum tipo MIME definido no marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "Nenhum sinal privado definido no marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "Nenhum grupo definido no marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr "Nenhuma aplicação denominada “%s” registou um marcador para “%s”"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr "Falha ao expandir a linha de execução “%s” com o URI “%s”"
 
-#: glib/gconvert.c:469
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Sequência inválida na conversão da entrada"
 
-#: glib/gconvert.c:496 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
 #: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Sequência de caracteres parcial no final da origem"
 
-#: glib/gconvert.c:767
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr ""
 "Impossível converter contingência “%s” para conjunto de caracteres “%s”"
 
-#: glib/gconvert.c:939
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Sequência de bytes nula na origem da conversão"
 
-#: glib/gconvert.c:960
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Sequência de bytes nula na saída da conversão"
 
-#: glib/gconvert.c:1698
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr "O URI “%s” não é um URI absoluto que utiliza o esquema “file”"
 
-#: glib/gconvert.c:1728
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "O URI “%s” é inválido"
 
-#: glib/gconvert.c:1741
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "O nome de máquina do URI “%s” é inválido"
 
-#: glib/gconvert.c:1758
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "O URI “%s” contém caracteres mascarados inválidos"
 
-#: glib/gconvert.c:1832
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "O nome de caminho “%s” não é um caminho absoluto"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %d %b %Y %T %Z"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%y/%m/%d"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%I:%M:%S %p"
@@ -4658,62 +4862,62 @@ msgstr "%I:%M:%S %p"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "Janeiro"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "Fevereiro"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "Março"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "Abril"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "Maio"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "Junho"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "Julho"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "Agosto"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "Setembro"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "Outubro"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "Novembro"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "Dezembro"
@@ -4735,132 +4939,132 @@ msgstr "Dezembro"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "Jan"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "Fev"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "Mar"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "Abr"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "Mai"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "Jun"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "Jul"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "Ago"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "Set"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "Out"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "Nov"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "Dez"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "2ª feira"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "3ª feira"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "4ª feira"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "5ª feira"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "6ª feira"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "Sábado"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "Domingo"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "2ª"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "3ª"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "4ª"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "5ª"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "6ª"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "Sáb"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "Dom"
@@ -4882,62 +5086,62 @@ msgstr "Dom"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "Janeiro"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "Fevereiro"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "Março"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "Abril"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "Maio"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "Junho"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "Julho"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "Agosto"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "Setembro"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "Outubro"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "Novembro"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "Dezembro"
@@ -4959,191 +5163,197 @@ msgstr "Dezembro"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "Jan"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "Fev"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "Mar"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "Abr"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "Mai"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "Jun"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "Jul"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "Ago"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "Set"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "Out"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "Nov"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "Dez"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "AM"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "PM"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Erro ao abrir o diretório “%s”: %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "Impossível alocar %lu byte para ler o ficheiro “%s”"
-msgstr[1] "Impossível alocar %lu bytes para ler o ficheiro “%s”"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Impossível alocar %s para ler o ficheiro “%s”"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Erro ao ler o ficheiro %s: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Ficheiro “%s” é demasiado grande"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Falha ao ler do ficheiro “%s”: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Falha ao abrir o ficheiro “%s”: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "Falha ao obter atributos do ficheiro “%s”: falha no fstat(): %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Falha ao abrir o ficheiro “%s”: falha no fdopen(): %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "Falha ao renomear o ficheiro “%s” para “%s”: falha no g_rename(): %s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "Falha ao escrever o ficheiro “%s”: falha no ftruncate(): %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Falha ao escrever o ficheiro “%s”: falha no write(): %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Falha ao escrever o ficheiro “%s”: falha no fsync(): %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Falha ao criar o ficheiro “%s”: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "Impossível remover o ficheiro “%s” existente: falha no g_unlink(): %s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Modelo “%s” inválido, não deveria conter um “%s”"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Modelo “%s” não contém XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Falha ao ler a ligação simbólica “%s”: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "Impossível abrir conversor de “%s” para “%s”: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr ""
 "Impossível efetuar uma leitura em bruto em g_io_channel_read_line_string"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "Dados residuais não convertidos no buffer de leitura"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "Canal termina num carácter parcial"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Impossível efetuar uma leitura em bruto em g_io_channel_read_to_end"
 
-#: glib/gkeyfile.c:802
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr "Impossível encontrar um ficheiro de chave válido nas pastas procuradas"
 
-#: glib/gkeyfile.c:839
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "Não é um ficheiro normal"
 
-#: glib/gkeyfile.c:1297
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5151,49 +5361,49 @@ msgstr ""
 "O ficheiro de chave contém a linha “%s” que não é um par chave-valor, grupo "
 "ou comentário"
 
-#: glib/gkeyfile.c:1354
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Nome de grupo inválido: %s"
 
-#: glib/gkeyfile.c:1378
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Ficheiro de chave não começa com um grupo"
 
-#: glib/gkeyfile.c:1402
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Nome de chave inválida: %.*s"
 
-#: glib/gkeyfile.c:1430
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "Ficheiro de chave contém uma codificação não suportada “%s”"
 
-#: glib/gkeyfile.c:1678 glib/gkeyfile.c:1851 glib/gkeyfile.c:3298
-#: glib/gkeyfile.c:3400 glib/gkeyfile.c:3505 glib/gkeyfile.c:3634
-#: glib/gkeyfile.c:3777 glib/gkeyfile.c:4026 glib/gkeyfile.c:4100
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Ficheiro de chave não possui um grupo “%s”"
 
-#: glib/gkeyfile.c:1806
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Ficheiro de chave não possui a chave “%s” no grupo “%s”"
 
-#: glib/gkeyfile.c:1968 glib/gkeyfile.c:2084
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr "Ficheiro de chave contém a chave “%s” com o valor “%s” que não é UTF-8"
 
-#: glib/gkeyfile.c:1988 glib/gkeyfile.c:2104 glib/gkeyfile.c:2543
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
 msgstr "Ficheiro de chaves contém a chave “%s” cujo valor não é interpretável."
 
-#: glib/gkeyfile.c:2758 glib/gkeyfile.c:3127
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5202,37 +5412,37 @@ msgstr ""
 "Ficheiro de chave contém a chave “%s” no grupo “%s” que tem um valor que não "
 "pode ser interpretado."
 
-#: glib/gkeyfile.c:2836 glib/gkeyfile.c:2913
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr "Chave “%s” no grupo “%s” tem o valor “%s” onde %s era esperado"
 
-#: glib/gkeyfile.c:4353
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Ficheiro de chave contém caracteres mascarados no final da linha"
 
-#: glib/gkeyfile.c:4375
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr ""
 "Ficheiro de chave contém uma sequência de caracteres mascarados inválida “%s”"
 
-#: glib/gkeyfile.c:4520
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "Impossível interpretar o valor “%s” como um numérico."
 
-#: glib/gkeyfile.c:4534
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "Valor inteiro “%s” para além do limite permitido"
 
-#: glib/gkeyfile.c:4567
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "Impossível interpretar o valor “%s” como um número vírgula flutuante."
 
-#: glib/gkeyfile.c:4606
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "Impossível interpretar o valor “%s” como lógico."
@@ -5252,32 +5462,32 @@ msgstr "Falha ao mapear %s%s%s%s: falha no mmap(): %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "Falha ao abrir o ficheiro “%s”: falha no open(): %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Erro na linha %d, carácter %d: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "Texto codificado em UTF-8 no nome inválido — “%s” inválido"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "“%s” não é um nome válido"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "“%s” não é um nome válido: “%c”"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Erro na linha %d: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5287,7 +5497,7 @@ msgstr ""
 "referência de carácter (&#234; por exemplo) — talvez o dígito seja demasiado "
 "grande"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5297,24 +5507,24 @@ msgstr ""
 "utilizado um carácter “i comercial” sem intenção de iniciar uma entidade — "
 "mascare-o como &amp;"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "Referência de carácter “%-.*s” não codifica um carácter permitido"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Entidade vazia “&;” avistada; entidades válidas são: &amp; &quot; &lt; &gt; "
 "&apos;"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "Nome de entidade “%-.*s” é desconhecido"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5323,11 +5533,11 @@ msgstr ""
 "carácter “e comercial” sem intenção de iniciar uma entidade — mascare-o como "
 "&amp;"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Documento tem de começar com um elemento (ex. <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5336,7 +5546,7 @@ msgstr ""
 "“%s” não é um carácter válido após um carácter “<”; pode não iniciar um nome "
 "de elemento"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5345,12 +5555,12 @@ msgstr ""
 "Carácter estranho “%s”, era esperado um carácter “>” para terminar a "
 "etiqueta de elemento vazio “%s”"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "Demasiados atributos no elemento “%s”"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5358,7 +5568,7 @@ msgstr ""
 "Carácter estranho “%s”, era esperado um “=” após o nome do atributo “%s” do "
 "elemento “%s”"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5369,7 +5579,7 @@ msgstr ""
 "etiqueta inicial do elemento “%s”, ou opcionalmente um atributo; talvez "
 "tenha sido utilizado um carácter inválido no nome de um atributo"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5378,7 +5588,7 @@ msgstr ""
 "Carácter estranho “%s”, era esperada uma abertura de aspa após o sinal de "
 "igual ao atribuir valor ao atributo “%s” do elemento “%s”"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5387,7 +5597,7 @@ msgstr ""
 "“%s” não é um carácter válido após os caracteres \"</\"; “%s” pode não "
 "iniciar o nome de um elemento"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5396,25 +5606,25 @@ msgstr ""
 "“%s” não é um carácter válido após o nome do elemento de fecho “%s”; o "
 "carácter permitido é “>”"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "Elemento “%s” foi fechado, nenhum elemento está atualmente aberto"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr "Elemento “%s” foi fechado, mas o elemento atualmente aberto é “%s”"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Documento estava vazio ou só continha espaços"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr "Documento terminou inesperadamente logo após um carácter menor que “<”"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5423,7 +5633,7 @@ msgstr ""
 "Documento terminou inesperadamente com elementos ainda abertos — “%s” foi o "
 "último elemento aberto"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5432,21 +5642,21 @@ msgstr ""
 "Documento terminou inesperadamente, era esperado um maior que \">\" para "
 "terminar a etiqueta <%s/>"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr "Documento terminou inesperadamente dentro do nome de um elemento"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr "Documento terminou inesperadamente dentro do nome de um atributo"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr ""
 "Documento terminou inesperadamente dentro da etiqueta de abertura de um "
 "elemento."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5454,270 +5664,266 @@ msgstr ""
 "Documento terminou inesperadamente após o sinal de igual posterior a um nome "
 "de atributo; nenhum valor de atributo"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr "Documento terminou inesperadamente dentro do valor de um atributo"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr ""
 "Documento terminou inesperadamente dentro da etiqueta de fecho do elemento "
 "“%s”"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
 "Documento terminou inesperadamente dentro da etiqueta de fecho do elemento "
 "para um elemento não aberto"
 
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Documento terminou inesperadamente dentro de um comentário ou instrução de "
 "processamento"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[OPÇÃO...]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Opções de ajuda:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Mostrar as opções de ajuda"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Mostrar todas as opções de ajuda"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Opções da aplicação:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Opções:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "Impossível processar o valor inteiro “%s” para %s"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "Valor inteiro “%s” para %s para lá do limite permitido"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr "Impossível processar o valor de dupla precisão “%s” para %s"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "Valor de dupla precisão “%s” para %s para lá do limite permitido"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Erro ao processar a opção %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Argumento em falta para %s"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Opção %s desconhecida"
 
-#: glib/gregex.c:479
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "objeto corrompido"
 
-#: glib/gregex.c:481
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "sem memória livre"
 
-#: glib/gregex.c:487
-msgid "backtracking limit reached"
-msgstr "limite de retroceder alcançado"
-
-#: glib/gregex.c:498
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "erro interno"
 
-#: glib/gregex.c:500
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr "o padrão contém itens não suportados para comparação parcial"
 
-#: glib/gregex.c:502
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "referências anteriores como condições não são suportadas para comparação "
 "parcial"
 
-#: glib/gregex.c:508
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "alcançado o limite de recursividade"
 
-#: glib/gregex.c:510
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "desvio inválido"
 
-#: glib/gregex.c:512
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "recursão infinita"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:515
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr ""
 "é solicitado o modo de correspondência que não foi compilado para o EIC"
 
-#: glib/gregex.c:536 glib/gregex.c:1838
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "erro desconhecido"
 
-#: glib/gregex.c:557
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ no final do padrão"
 
-#: glib/gregex.c:561
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c no final do padrão"
 
-#: glib/gregex.c:566
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "carácter desconhecido após \\"
 
-#: glib/gregex.c:570
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "números fora da ordem no quantificador {}"
 
-#: glib/gregex.c:574
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "número demasiado grande no quantificador {}"
 
-#: glib/gregex.c:578
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "falta o ] de fecho da classe de carácter"
 
-#: glib/gregex.c:582
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "sequência de escape inválida na classe de carácter"
 
-#: glib/gregex.c:586
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "intervalo fora da ordem na classe de carácter"
 
-#: glib/gregex.c:591
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "nada a repetir"
 
-#: glib/gregex.c:595
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "carácter desconhecido após (? or (?-"
 
-#: glib/gregex.c:599
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr "Classes denominadas POSIX apenas são suportadas dentro de uma classe"
 
-#: glib/gregex.c:603
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "Não são suportados os elementos de junção POSIX"
 
-#: glib/gregex.c:609
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr "falta o ) de fecho"
 
-#: glib/gregex.c:613
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "referência a padrão inexistente"
 
-#: glib/gregex.c:617
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "falta o ) após o comentário"
 
-#: glib/gregex.c:621
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "expressão regular demasiado extensa"
 
-#: glib/gregex.c:625
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "número ou nome mal formado após (?("
 
-#: glib/gregex.c:629
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "asserção de verificação anterior não é de largura fixa"
 
-#: glib/gregex.c:633
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "grupo condicional contém mais de dois ramos"
 
-#: glib/gregex.c:637
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "esperada uma asserção após (?("
 
-#: glib/gregex.c:641
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "uma referência numerada não pode ser zero"
 
-#: glib/gregex.c:645
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "nome de classe POSIX desconhecido"
 
-#: glib/gregex.c:650
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "valor do carácter na sequência \\x{...} é demasiado grande"
 
-#: glib/gregex.c:654
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C não é permitido numa asserção de verificação anterior"
 
-#: glib/gregex.c:658
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "falta o terminador no nome do subpadrão"
 
-#: glib/gregex.c:662
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "dois subpadrões denominados têm o mesmo nome"
 
-#: glib/gregex.c:666
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "sequência \\P ou \\p mal formada"
 
-#: glib/gregex.c:670
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "nome de propriedade desconhecido após \\P ou \\p"
 
-#: glib/gregex.c:674
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "nome do subpadrão é demasiado extenso (máximo de 32 caracteres)"
 
-#: glib/gregex.c:678
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "demasiados subpadrões denominados (máximo de 10.000)"
 
-#: glib/gregex.c:682
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "valor octal é maior do que \\377"
 
-#: glib/gregex.c:686
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "Grupo DEFINE contém mais de um ramo"
 
-#: glib/gregex.c:690
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "opções de NEWLINE inconsistentes"
 
-#: glib/gregex.c:694
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5725,233 +5931,233 @@ msgstr ""
 "\\g não é seguido de um nome ou número delimitado por chavetas, parenteses "
 "ou aspas ou um número simples"
 
-#: glib/gregex.c:699
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "não é permitido um argumento para (*ACCEPT), (*FAIL), ou (*COMMIT)"
 
-#: glib/gregex.c:703
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB) não é reconhecido"
 
-#: glib/gregex.c:707
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "número é demasiado grande"
 
-#: glib/gregex.c:711
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "falta o nome do subpadrão após (?&"
 
-#: glib/gregex.c:715
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr "não são permitidos nomes diferentes para subpadrões do mesmo número"
 
-#: glib/gregex.c:719
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) tem de ter um argumento"
 
-#: glib/gregex.c:723
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "\\c não pode ser seguido de um carácter ASCII"
 
-#: glib/gregex.c:727
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "\\k não é seguido de um nome delimitado por chavetas, parenteses angulares "
 "ou aspas"
 
-#: glib/gregex.c:731
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N não é suportado numa classe"
 
-#: glib/gregex.c:735
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "nome é demasiado extenso em (*MARK), (*PRUNE), (*SKIP), ou (*THEN)"
 
-#: glib/gregex.c:739 glib/gregex.c:875
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "código fora dos limites"
 
-#: glib/gregex.c:743
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "carácter desconhecido após (?P"
 
-#: glib/gregex.c:747
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "derramou fora da área de trabalho de compilação"
 
-#: glib/gregex.c:751
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "subpadrão referenciado previamente verificado não foi encontrado"
 
-#: glib/gregex.c:874 glib/gregex.c:1121 glib/gregex.c:2444
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "Erro ao comparar a expressão regular %s: %s"
 
-#: glib/gregex.c:1721
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "Biblioteca PCRE está compilada sem suporte UTF8"
 
-#: glib/gregex.c:1729
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "Biblioteca PCRE está compilada com opções incompatíveis"
 
-#: glib/gregex.c:1847
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr "Erro ao compilar a expressão regular '%s' no carácter %s: %s"
 
-#: glib/gregex.c:2887
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "esperado um dígito hexadecimal ou \"}\""
 
-#: glib/gregex.c:2903
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "esperado um dígito hexadecimal"
 
-#: glib/gregex.c:2943
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "falta “<” na referência simbólica"
 
-#: glib/gregex.c:2952
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "referência simbólica por terminar"
 
-#: glib/gregex.c:2959
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "referência simbólica de tamanho zero"
 
-#: glib/gregex.c:2970
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "esperado um dígito"
 
-#: glib/gregex.c:2988
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "referência simbólica ilegal"
 
-#: glib/gregex.c:3051
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "“\\” final a mais"
 
-#: glib/gregex.c:3055
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "sequência de escape desconhecida"
 
-#: glib/gregex.c:3065
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr "Erro ao processar o texto de substituição “%s” no carácter %lu: %s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Texto citado não é iniciado com um carácter de aspa"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr "Aspa sem par na linha de comando ou outro texto de consola citado"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr "Texto terminou após um carácter “\\”. (O texto era “%s”)"
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Texto terminou antes de ser encontrada a aspa equivalente para %c. (O texto "
 "era “%s”)"
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Texto estava vazio (ou apenas continha espaços)"
 
-#: glib/gspawn.c:319
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "Falha ao ler dados de sub processo (%s)"
 
-#: glib/gspawn.c:471
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr "Erro inesperado ao ler dados de sub processo (%s)"
 
-#: glib/gspawn.c:556
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Erro inesperado em waitpid() (%s)"
 
-#: glib/gspawn.c:1175 glib/gspawn-win32.c:1575
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Sub processo terminou com o código %ld"
 
-#: glib/gspawn.c:1183
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Sub processo morto com o sinal %ld"
 
-#: glib/gspawn.c:1190
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Sub processo parado com o sinal %ld"
 
-#: glib/gspawn.c:1197
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "O sub processo terminou anormalmente"
 
-#: glib/gspawn.c:2027 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "Falha ao ler de canal acima (%s)"
 
-#: glib/gspawn.c:2399
+#: glib/gspawn.c:2003
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "Falha ao criar sub processo “%s” (%s)"
 
-#: glib/gspawn.c:2525
+#: glib/gspawn.c:2127
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Falha ao bifurcar \"fork\" (%s)"
 
-#: glib/gspawn.c:2685 glib/gspawn-win32.c:503
+#: glib/gspawn.c:2288 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "Falha ao ir para o diretório “%s” (%s)"
 
-#: glib/gspawn.c:2695
+#: glib/gspawn.c:2298
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "Falha ao executar o sub processo “%s” (%s)"
 
-#: glib/gspawn.c:2705
+#: glib/gspawn.c:2308
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr "Falha ao abrir o ficheiro para remapear o descritor do ficheiro (%s)"
 
-#: glib/gspawn.c:2713
+#: glib/gspawn.c:2316
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr "Falha ao duplicar descritor do ficheiro para o sub processo (%s)"
 
-#: glib/gspawn.c:2722
+#: glib/gspawn.c:2325
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Falha ao efetuar fork de sub processo (%s)"
 
-#: glib/gspawn.c:2730
+#: glib/gspawn.c:2333
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr "Falha ao fechar o descritor de ficheiro para sub processo (%s)"
 
-#: glib/gspawn.c:2738
+#: glib/gspawn.c:2341
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Erro desconhecido ao executar sub processo “%s”"
 
-#: glib/gspawn.c:2762
+#: glib/gspawn.c:2365
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr "Falha ao ler dados suficientes de canal pid acima (%s)"
@@ -6007,78 +6213,78 @@ msgid ""
 msgstr ""
 "Erro inesperado no g_io_channel_win32_poll() ao ler dados de um sub processo"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "Cadeia vazia não é um número"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "“%s” não é um número com sinal"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "Número “%s” está fora do limite [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "“%s” não é um valor sem sinal"
 
-#: glib/guri.c:318
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "%-encoding inválido no URI"
 
-#: glib/guri.c:335
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Carácter ilegal no URI"
 
-#: glib/guri.c:369
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Caracteres non-UTF-8 no URI"
 
-#: glib/guri.c:549
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Endereço IPv6 inválido ‘%.*s’ no URI"
 
-#: glib/guri.c:604
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Endereço IP codificado ilegal ‘%.*s’ no URI"
 
-#: glib/guri.c:616
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Nome de máquina ilegalmente internacionalizado '%.*s' no URI"
 
-#: glib/guri.c:648 glib/guri.c:660
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Impossível processar porto ‘%.*s’ no URI"
 
-#: glib/guri.c:667
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "Porto ‘%.*s’ no URI fora de alcance"
 
-#: glib/guri.c:1230 glib/guri.c:1294
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "URI ‘%s’ não é um URI absoluto"
 
-#: glib/guri.c:1236
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "URI ‘%s’ não possui uma componente destino"
 
-#: glib/guri.c:1466
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "URI não é absoluto, e nenhuma base URI foi fornecida"
 
-#: glib/guri.c:2252
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "‘=’ e valor de parâmetro em falta"
 
@@ -6159,65 +6365,65 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "kb"
+msgid "kbit"
+msgstr "kbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "Mb"
+msgid "Mbit"
+msgstr "Mbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "Gb"
+msgid "Gbit"
+msgstr "Gbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "Tb"
+msgid "Tbit"
+msgstr "Tbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "Pb"
+msgid "Pbit"
+msgstr "Pbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "Eb"
+msgid "Ebit"
+msgstr "Ebit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "Kib"
+msgid "Kibit"
+msgstr "Kibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "Mib"
+msgid "Mibit"
+msgstr "Mibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "Gib"
+msgid "Gibit"
+msgstr "Gibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "Tib"
+msgid "Tibit"
+msgstr "Tibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "Pib"
+msgid "Pibit"
+msgstr "Pibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "Eib"
+msgid "Eibit"
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6322,6 +6528,54 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~ msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing"
+#~ msgstr "Mensagem ETHOD_RETURN: falta campo de cabeçalho REPLY_SERIAL"
+
+#~ msgid "ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing"
+#~ msgstr "Mensagem ERROR: Falta campo de cabeçalho REPLY_SERIAL ou ERROR_NAME"
+
+#~ msgid "SIGNAL message: PATH, INTERFACE or MEMBER header field is missing"
+#~ msgstr "Mensagem SIGNAL: falta campo de cabeçalho PATH, INTERFACE ou MEMBER"
+
+#~ msgid "backtracking limit reached"
+#~ msgstr "limite de retroceder alcançado"
+
+#~ msgid "kb"
+#~ msgstr "kb"
+
+#~ msgid "Mb"
+#~ msgstr "Mb"
+
+#~ msgid "Gb"
+#~ msgstr "Gb"
+
+#~ msgid "Tb"
+#~ msgstr "Tb"
+
+#~ msgid "Pb"
+#~ msgstr "Pb"
+
+#~ msgid "Eb"
+#~ msgstr "Eb"
+
+#~ msgid "Kib"
+#~ msgstr "Kib"
+
+#~ msgid "Mib"
+#~ msgstr "Mib"
+
+#~ msgid "Gib"
+#~ msgstr "Gib"
+
+#~ msgid "Tib"
+#~ msgstr "Tib"
+
+#~ msgid "Pib"
+#~ msgstr "Pib"
+
+#~ msgid "Eib"
+#~ msgstr "Eib"
+
 #~ msgid "GApplication options"
 #~ msgstr "Opções GApplication"
 
@@ -6532,9 +6786,6 @@ msgstr "%.1f EB"
 #~ msgid "Error setting attribute: %s\n"
 #~ msgstr "Erro ao definir o atributo: %s\n"
 
-#~ msgid "Failed to create temp file: %s"
-#~ msgstr "Falha ao criar o ficheiro temporário: %s"
-
 #~ msgid "; ignoring override for this key.\n"
 #~ msgstr "; a ignorar a sobreposição para esta chave.\n"
 
index b159cc3..329b451 100644 (file)
 msgid ""
 msgstr ""
 "Project-Id-Version: glib\n"
-"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues\n"
-"POT-Creation-Date: 2023-08-31 11:01+0000\n"
-"PO-Revision-Date: 2023-09-17 22:27-0300\n"
-"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
+"Report-Msgid-Bugs-To: https://gitlab.gnome.org/GNOME/glib/issues/new\n"
+"POT-Creation-Date: 2024-03-27 18:59+0000\n"
+"PO-Revision-Date: 2024-04-04 18:01-0300\n"
+"Last-Translator: Leônidas Araújo <leorusvellt@hotmail.com>\n"
 "Language-Team: Brazilian Portuguese <https://br.gnome.org/traducao>\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: Gtranslator 45.alpha0\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+"X-Generator: Poedit 3.4.2\n"
 "X-Project-Style: gnome\n"
 "X-DL-Team: pt_BR\n"
 "X-DL-Module: glib\n"
@@ -60,38 +60,42 @@ msgstr "Falha ao encontrar o aplicativo padrão para o tipo de conteúdo '%s'"
 msgid "Failed to find default application for URI Scheme ‘%s’"
 msgstr "Falha ao encontrar o aplicativo padrão para o Esquema de URI “%s”"
 
-#: gio/gapplication.c:502
-msgid "GApplication options"
-msgstr "Opções do GApplication"
+#: gio/gapplication.c:507
+msgid "GApplication Options:"
+msgstr "Opções do GApplication:"
 
-#: gio/gapplication.c:502
+#: gio/gapplication.c:507
 msgid "Show GApplication options"
 msgstr "Mostra as opções do GApplication"
 
-#: gio/gapplication.c:547
+#: gio/gapplication.c:552
 msgid "Enter GApplication service mode (use from D-Bus service files)"
 msgstr ""
 "Digite o modo de serviço do GApplication (usar dos arquivos de serviços do D-"
 "Bus)"
 
-#: gio/gapplication.c:559
+#: gio/gapplication.c:564
 msgid "Override the application’s ID"
 msgstr "Substitui ID do aplicativo"
 
-#: gio/gapplication.c:571
+#: gio/gapplication.c:575
+msgid "Print the application version"
+msgstr "Imprimir a versão do aplicativo"
+
+#: gio/gapplication.c:587
 msgid "Replace the running instance"
 msgstr "Substitui a instância em execução"
 
-#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:229
-#: gio/gresource-tool.c:496 gio/gsettings-tool.c:586
+#: gio/gapplication-tool.c:47 gio/gapplication-tool.c:48 gio/gio-tool.c:230
+#: gio/gresource-tool.c:497 gio/gsettings-tool.c:586
 msgid "Print help"
 msgstr "Exibe a ajuda"
 
-#: gio/gapplication-tool.c:49 gio/gresource-tool.c:497 gio/gresource-tool.c:565
+#: gio/gapplication-tool.c:49 gio/gresource-tool.c:498 gio/gresource-tool.c:566
 msgid "[COMMAND]"
 msgstr "[COMANDO]"
 
-#: gio/gapplication-tool.c:51 gio/gio-tool.c:230
+#: gio/gapplication-tool.c:51 gio/gio-tool.c:231
 msgid "Print version"
 msgstr "Exibe a versão"
 
@@ -145,7 +149,7 @@ msgid "APPID"
 msgstr "APPID"
 
 #: gio/gapplication-tool.c:74 gio/gapplication-tool.c:137 gio/gdbus-tool.c:108
-#: gio/gio-tool.c:226
+#: gio/gio-tool.c:259 gio/glib-compile-resources.c:834
 msgid "COMMAND"
 msgstr "COMANDO"
 
@@ -158,9 +162,13 @@ msgid "Application identifier in D-Bus format (eg: org.example.viewer)"
 msgstr ""
 "Identificador do aplicativo em formato D-Bus (ex: org.exemplo.visualizador)"
 
+#. Translators: commandline placeholder
 #: gio/gapplication-tool.c:76 gio/glib-compile-resources.c:822
 #: gio/glib-compile-resources.c:828 gio/glib-compile-resources.c:858
-#: gio/gresource-tool.c:503 gio/gresource-tool.c:569
+#: gio/gresource-tool.c:504 gio/gresource-tool.c:570
+#: girepository/compiler/compiler.c:148 girepository/compiler/compiler.c:149
+#: girepository/compiler/compiler.c:168 girepository/decompiler/decompiler.c:52
+#: girepository/decompiler/decompiler.c:65
 msgid "FILE"
 msgstr "ARQUIVO"
 
@@ -186,7 +194,7 @@ msgstr "PARÂMETRO"
 msgid "Optional parameter to the action invocation, in GVariant format"
 msgstr "Parâmetro opcional para a invocação da ação, em formato GVariant"
 
-#: gio/gapplication-tool.c:100 gio/gresource-tool.c:534
+#: gio/gapplication-tool.c:100 gio/gresource-tool.c:535
 #: gio/gsettings-tool.c:678
 #, c-format
 msgid ""
@@ -200,12 +208,12 @@ msgstr ""
 msgid "Usage:\n"
 msgstr "Uso:\n"
 
-#: gio/gapplication-tool.c:118 gio/gresource-tool.c:559
+#: gio/gapplication-tool.c:118 gio/gresource-tool.c:560
 #: gio/gsettings-tool.c:713
 msgid "Arguments:\n"
 msgstr "Argumentos:\n"
 
-#: gio/gapplication-tool.c:137 gio/gio-tool.c:226
+#: gio/gapplication-tool.c:137 gio/gio-tool.c:259
 msgid "[ARGS…]"
 msgstr "[ARGUMENTOS…]"
 
@@ -299,78 +307,78 @@ msgstr ""
 "comando não reconhecido: %s\n"
 "\n"
 
-#: gio/gbufferedinputstream.c:422 gio/gbufferedinputstream.c:500
-#: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:650
-#: gio/ginputstream.c:1052 gio/goutputstream.c:225 gio/goutputstream.c:1051
-#: gio/gpollableinputstream.c:221 gio/gpollableoutputstream.c:293
+#: gio/gbufferedinputstream.c:421 gio/gbufferedinputstream.c:499
+#: gio/ginputstream.c:181 gio/ginputstream.c:381 gio/ginputstream.c:651
+#: gio/ginputstream.c:1056 gio/goutputstream.c:227 gio/goutputstream.c:1052
+#: gio/gpollableinputstream.c:217 gio/gpollableoutputstream.c:289
 #, c-format
 msgid "Too large count value passed to %s"
 msgstr "Valor muito alto passado para %s"
 
-#: gio/gbufferedinputstream.c:893 gio/gbufferedoutputstream.c:577
-#: gio/gdataoutputstream.c:564
+#: gio/gbufferedinputstream.c:892 gio/gbufferedoutputstream.c:579
+#: gio/gdataoutputstream.c:557
 msgid "Seek not supported on base stream"
 msgstr "Não há suporte à busca no fluxo base"
 
-#: gio/gbufferedinputstream.c:940
+#: gio/gbufferedinputstream.c:939
 msgid "Cannot truncate GBufferedInputStream"
 msgstr "Não é possível truncar GBufferedInputStream"
 
-#: gio/gbufferedinputstream.c:985 gio/ginputstream.c:1241 gio/giostream.c:302
-#: gio/goutputstream.c:2200
+#: gio/gbufferedinputstream.c:984 gio/ginputstream.c:1246 gio/giostream.c:317
+#: gio/goutputstream.c:2208
 msgid "Stream is already closed"
 msgstr "O fluxo já está fechado"
 
-#: gio/gbufferedoutputstream.c:614 gio/gdataoutputstream.c:594
+#: gio/gbufferedoutputstream.c:616 gio/gdataoutputstream.c:587
 msgid "Truncate not supported on base stream"
 msgstr "Não há suporte para truncar fluxo base"
 
-#: gio/gcancellable.c:326 gio/gdbusconnection.c:1867 gio/gdbusprivate.c:1434
-#: gio/gsimpleasyncresult.c:873 gio/gsimpleasyncresult.c:899
+#: gio/gcancellable.c:326 gio/gdbusconnection.c:1844 gio/gdbusprivate.c:1434
+#: gio/gsimpleasyncresult.c:871 gio/gsimpleasyncresult.c:897
 #, c-format
 msgid "Operation was cancelled"
 msgstr "A operação foi cancelada"
 
-#: gio/gcharsetconverter.c:262
+#: gio/gcharsetconverter.c:272
 msgid "Invalid object, not initialized"
 msgstr "Objeto inválido, não inicializado"
 
-#: gio/gcharsetconverter.c:283 gio/gcharsetconverter.c:311
+#: gio/gcharsetconverter.c:293 gio/gcharsetconverter.c:321
 msgid "Incomplete multibyte sequence in input"
 msgstr "Sequência de bytes incompleta na entrada"
 
-#: gio/gcharsetconverter.c:317 gio/gcharsetconverter.c:326
+#: gio/gcharsetconverter.c:327 gio/gcharsetconverter.c:336
 msgid "Not enough space in destination"
 msgstr "Espaço insuficiente no destino"
 
-#: gio/gcharsetconverter.c:344 gio/gdatainputstream.c:850
-#: gio/gdatainputstream.c:1268 glib/gconvert.c:451 glib/gconvert.c:883
-#: glib/giochannel.c:1576 glib/giochannel.c:1618 glib/giochannel.c:2478
-#: glib/gutf8.c:892 glib/gutf8.c:1346
+#: gio/gcharsetconverter.c:354 gio/gdatainputstream.c:842
+#: gio/gdatainputstream.c:1260 glib/gconvert.c:360 glib/gconvert.c:792
+#: glib/giochannel.c:1565 glib/giochannel.c:1607 glib/giochannel.c:2467
+#: glib/gutf8.c:958 glib/gutf8.c:1412
 msgid "Invalid byte sequence in conversion input"
 msgstr "Sequência de bytes inválida na entrada de conversão"
 
-#: gio/gcharsetconverter.c:349 glib/gconvert.c:459 glib/gconvert.c:797
-#: glib/giochannel.c:1583 glib/giochannel.c:2493
+#: gio/gcharsetconverter.c:359 glib/gconvert.c:368 glib/gconvert.c:706
+#: glib/giochannel.c:1572 glib/giochannel.c:2482
 #, c-format
 msgid "Error during conversion: %s"
 msgstr "Erro durante a conversão: %s"
 
-#: gio/gcharsetconverter.c:447 gio/gsocket.c:1151
+#: gio/gcharsetconverter.c:457 gio/gsocket.c:1217
 msgid "Cancellable initialization not supported"
 msgstr "Sem suporte a inicialização cancelável"
 
-#: gio/gcharsetconverter.c:458 glib/gconvert.c:324 glib/giochannel.c:1404
+#: gio/gcharsetconverter.c:468 glib/gconvert.c:233 glib/giochannel.c:1393
 #, c-format
 msgid "Conversion from character set “%s” to “%s” is not supported"
 msgstr "Não há suporte à conversão do conjunto de caracteres “%s” para “%s”"
 
-#: gio/gcharsetconverter.c:462 glib/gconvert.c:328
+#: gio/gcharsetconverter.c:472 glib/gconvert.c:237
 #, c-format
 msgid "Could not open converter from “%s” to “%s”"
 msgstr "Não foi possível abrir conversor de “%s” para “%s”"
 
-#: gio/gcontenttype.c:472
+#: gio/gcontenttype.c:470
 #, c-format
 msgid "%s type"
 msgstr "tipo %s"
@@ -384,44 +392,44 @@ msgstr "Tipo desconhecido"
 msgid "%s filetype"
 msgstr "tipo de arquivo %s"
 
-#: gio/gcredentials.c:337
+#: gio/gcredentials.c:327
 msgid "GCredentials contains invalid data"
 msgstr "GCredentials contém dados inválidos"
 
-#: gio/gcredentials.c:397 gio/gcredentials.c:688
+#: gio/gcredentials.c:387 gio/gcredentials.c:678
 msgid "GCredentials is not implemented on this OS"
 msgstr "GCredentials não está implementado neste SO"
 
-#: gio/gcredentials.c:552 gio/gcredentials.c:570
+#: gio/gcredentials.c:542 gio/gcredentials.c:560
 msgid "There is no GCredentials support for your platform"
 msgstr "Não há suporte ao GCredentials para sua plataforma"
 
-#: gio/gcredentials.c:628
+#: gio/gcredentials.c:618
 msgid "GCredentials does not contain a process ID on this OS"
 msgstr "GCredentials não contém um ID de processo neste SO"
 
-#: gio/gcredentials.c:682
+#: gio/gcredentials.c:672
 msgid "Credentials spoofing is not possible on this OS"
 msgstr ""
 "Não é possível fazer uso de falsificação de credenciais neste sistema "
 "operacional"
 
-#: gio/gdatainputstream.c:306
+#: gio/gdatainputstream.c:298
 msgid "Unexpected early end-of-stream"
 msgstr "Fim do fluxo inesperadamente prematuro"
 
-#: gio/gdbusaddress.c:168 gio/gdbusaddress.c:240 gio/gdbusaddress.c:327
+#: gio/gdbusaddress.c:165 gio/gdbusaddress.c:237 gio/gdbusaddress.c:324
 #, c-format
 msgid "Unsupported key “%s” in address entry “%s”"
 msgstr "Não há suporte a chave “%s” na entrada de endereço “%s”"
 
-#: gio/gdbusaddress.c:181
+#: gio/gdbusaddress.c:178
 #, c-format
 msgid "Meaningless key/value pair combination in address entry “%s”"
 msgstr ""
 "Combinação de pares chave/valor sem sentido na entrada de endereço “%s”"
 
-#: gio/gdbusaddress.c:190
+#: gio/gdbusaddress.c:187
 #, c-format
 msgid ""
 "Address “%s” is invalid (need exactly one of path, dir, tmpdir, or abstract "
@@ -430,28 +438,28 @@ msgstr ""
 "O endereço “%s” é inválido (é necessário exatamente um dentre: caminho, "
 "diretório, diretório temporário ou chaves abstratas)"
 
-#: gio/gdbusaddress.c:255 gio/gdbusaddress.c:266 gio/gdbusaddress.c:281
-#: gio/gdbusaddress.c:342 gio/gdbusaddress.c:353
+#: gio/gdbusaddress.c:252 gio/gdbusaddress.c:263 gio/gdbusaddress.c:278
+#: gio/gdbusaddress.c:339 gio/gdbusaddress.c:350
 #, c-format
 msgid "Error in address “%s” — the “%s” attribute is malformed"
 msgstr "Erro no endereço “%s” — o atributo “%s” está malformado"
 
-#: gio/gdbusaddress.c:423 gio/gdbusaddress.c:682
+#: gio/gdbusaddress.c:420 gio/gdbusaddress.c:679
 #, c-format
 msgid "Unknown or unsupported transport “%s” for address “%s”"
 msgstr "Transporte desconhecido ou sem suporte “%s” para o endereço “%s”"
 
-#: gio/gdbusaddress.c:467
+#: gio/gdbusaddress.c:464
 #, c-format
 msgid "Address element “%s” does not contain a colon (:)"
 msgstr "O elemento endereço “%s” não contém um caractere de dois-pontos (:)"
 
-#: gio/gdbusaddress.c:476
+#: gio/gdbusaddress.c:473
 #, c-format
 msgid "Transport name in address element “%s” must not be empty"
 msgstr "O nome do transporte no elemento de endereço “%s” não pode estar vazio"
 
-#: gio/gdbusaddress.c:497
+#: gio/gdbusaddress.c:494
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” does not contain an equal "
@@ -460,7 +468,7 @@ msgstr ""
 "O par chave/valor %d, “%s”, no elemento endereço “%s”, não contém um sinal "
 "de igual"
 
-#: gio/gdbusaddress.c:508
+#: gio/gdbusaddress.c:505
 #, c-format
 msgid ""
 "Key/Value pair %d, “%s”, in address element “%s” must not have an empty key"
@@ -468,7 +476,7 @@ msgstr ""
 "O par chave/valor %d, “%s”, no elemento endereço “%s”, não pode ter uma "
 "chave vazia"
 
-#: gio/gdbusaddress.c:522
+#: gio/gdbusaddress.c:519
 #, c-format
 msgid ""
 "Error unescaping key or value in Key/Value pair %d, “%s”, in address element "
@@ -477,7 +485,7 @@ msgstr ""
 "Erro ao distinguir a chave sem escape ou valor no par chave/valor %d, “%s”, "
 "no elemento endereço “%s”"
 
-#: gio/gdbusaddress.c:590
+#: gio/gdbusaddress.c:587
 #, c-format
 msgid ""
 "Error in address “%s” — the unix transport requires exactly one of the keys "
@@ -486,84 +494,84 @@ msgstr ""
 "Erro no endereço “%s” — o transporte Unix requer exatamente uma das chaves "
 "“path” ou “abstract” sejam definidas"
 
-#: gio/gdbusaddress.c:625
+#: gio/gdbusaddress.c:622
 #, c-format
 msgid "Error in address “%s” — the host attribute is missing or malformed"
 msgstr ""
 "Erro no endereço “%s” — o atributo servidor está faltando ou malformado"
 
-#: gio/gdbusaddress.c:639
+#: gio/gdbusaddress.c:636
 #, c-format
 msgid "Error in address “%s” — the port attribute is missing or malformed"
 msgstr "Erro no endereço “%s” — o atributo porta está faltando ou malformado"
 
-#: gio/gdbusaddress.c:653
+#: gio/gdbusaddress.c:650
 #, c-format
 msgid "Error in address “%s” — the noncefile attribute is missing or malformed"
 msgstr ""
 "Erro no endereço “%s” — o atributo do arquivo de valor de uso único está "
 "faltando ou malformado"
 
-#: gio/gdbusaddress.c:674
+#: gio/gdbusaddress.c:671
 msgid "Error auto-launching: "
 msgstr "Erro ao iniciar automaticamente: "
 
-#: gio/gdbusaddress.c:727
+#: gio/gdbusaddress.c:724
 #, c-format
 msgid "Error opening nonce file “%s”: %s"
 msgstr "Erro ao abrir arquivo de valor de uso único “%s”: %s"
 
-#: gio/gdbusaddress.c:746
+#: gio/gdbusaddress.c:743
 #, c-format
 msgid "Error reading from nonce file “%s”: %s"
 msgstr "Erro ao ler arquivo de valor de uso único “%s”: %s"
 
-#: gio/gdbusaddress.c:755
+#: gio/gdbusaddress.c:752
 #, c-format
 msgid "Error reading from nonce file “%s”, expected 16 bytes, got %d"
 msgstr ""
 "Erro ao ler o arquivo de valor de uso único “%s”; era esperado 16 bytes, mas "
 "foi obtido %d"
 
-#: gio/gdbusaddress.c:773
+#: gio/gdbusaddress.c:770
 #, c-format
 msgid "Error writing contents of nonce file “%s” to stream:"
 msgstr "Erro ao gravar o arquivo de valor de uso único “%s” no fluxo:"
 
-#: gio/gdbusaddress.c:988
+#: gio/gdbusaddress.c:985
 msgid "The given address is empty"
 msgstr "O endereço fornecido está vazio"
 
-#: gio/gdbusaddress.c:1101
+#: gio/gdbusaddress.c:1098
 #, c-format
 msgid "Cannot spawn a message bus when AT_SECURE is set"
 msgstr ""
 "Não é possível chamar um barramento de mensagens quando AT_SECURE está "
 "definido"
 
-#: gio/gdbusaddress.c:1108
+#: gio/gdbusaddress.c:1105
 msgid "Cannot spawn a message bus without a machine-id: "
 msgstr ""
 "Não foi possível chamar um barramento de mensagens sem um ID de máquina: "
 
-#: gio/gdbusaddress.c:1115
+#: gio/gdbusaddress.c:1112
 #, c-format
 msgid "Cannot autolaunch D-Bus without X11 $DISPLAY"
 msgstr "Não foi possível iniciar automaticamente o D-Bus sem X11 $DISPLAY"
 
-#: gio/gdbusaddress.c:1157
+#: gio/gdbusaddress.c:1154
 #, c-format
 msgid "Error spawning command line “%s”: "
 msgstr "Erro ao chamar a linha de comandos “%s”: "
 
-#: gio/gdbusaddress.c:1226
+#: gio/gdbusaddress.c:1223
 #, c-format
 msgid "Cannot determine session bus address (not implemented for this OS)"
 msgstr ""
 "Não foi possível determinar o endereço de barramento da sessão (sem "
 "implementação para este SO)"
 
-#: gio/gdbusaddress.c:1380 gio/gdbusconnection.c:7339
+#: gio/gdbusaddress.c:1377 gio/gdbusconnection.c:7339
 #, c-format
 msgid ""
 "Cannot determine bus address from DBUS_STARTER_BUS_TYPE environment variable "
@@ -572,7 +580,7 @@ msgstr ""
 "Não foi possível determinar o endereço de barramento da variável de ambiente "
 "DBUS_STARTER_BUS_TYPE — valor desconhecido “%s”"
 
-#: gio/gdbusaddress.c:1389 gio/gdbusconnection.c:7348
+#: gio/gdbusaddress.c:1386 gio/gdbusconnection.c:7348
 msgid ""
 "Cannot determine bus address because the DBUS_STARTER_BUS_TYPE environment "
 "variable is not set"
@@ -580,20 +588,20 @@ msgstr ""
 "Não foi possível determinar o endereço do barramento porque a variável de "
 "ambiente DBUS_STARTER_BUS_TYPE não está definida"
 
-#: gio/gdbusaddress.c:1399
+#: gio/gdbusaddress.c:1396
 #, c-format
 msgid "Unknown bus type %d"
 msgstr "Tipo de barramento %d desconhecido"
 
-#: gio/gdbusauth.c:294
+#: gio/gdbusauth.c:292
 msgid "Unexpected lack of content trying to read a line"
 msgstr "Falta de conteúdo inesperada ao tentar ler uma linha"
 
-#: gio/gdbusauth.c:338
+#: gio/gdbusauth.c:336
 msgid "Unexpected lack of content trying to (safely) read a line"
 msgstr "Falta de conteúdo inesperada ao tentar (seguramente) ler uma linha"
 
-#: gio/gdbusauth.c:482
+#: gio/gdbusauth.c:480
 #, c-format
 msgid ""
 "Exhausted all available authentication mechanisms (tried: %s) (available: %s)"
@@ -601,15 +609,15 @@ msgstr ""
 "Foram esgotados todos mecanismos de autenticação disponíveis (tentado: %s) "
 "(disponível: %s)"
 
-#: gio/gdbusauth.c:1045
+#: gio/gdbusauth.c:1043
 msgid "Unexpected lack of content trying to read a byte"
 msgstr "Falta de conteúdo inesperada ao tentar ler um byte"
 
-#: gio/gdbusauth.c:1195
+#: gio/gdbusauth.c:1193
 msgid "User IDs must be the same for peer and server"
 msgstr "IDs de usuário devem ser o mesmo para a ponta e o servidor"
 
-#: gio/gdbusauth.c:1207
+#: gio/gdbusauth.c:1205
 msgid "Cancelled via GDBusAuthObserver::authorize-authenticated-peer"
 msgstr "Cancelado via GDBusAuthObserver::authorize-authenticated-peer"
 
@@ -631,13 +639,13 @@ msgstr ""
 msgid "Error creating directory “%s”: %s"
 msgstr "Erro ao criar o diretório “%s”: %s"
 
-#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1095 gio/gfile.c:1333
-#: gio/gfile.c:1471 gio/gfile.c:1709 gio/gfile.c:1764 gio/gfile.c:1822
-#: gio/gfile.c:1906 gio/gfile.c:1963 gio/gfile.c:2027 gio/gfile.c:2082
-#: gio/gfile.c:3797 gio/gfile.c:3937 gio/gfile.c:4349 gio/gfile.c:4819
-#: gio/gfile.c:5230 gio/gfile.c:5315 gio/gfile.c:5405 gio/gfile.c:5502
-#: gio/gfile.c:5589 gio/gfile.c:5690 gio/gfile.c:8819 gio/gfile.c:8909
-#: gio/gfile.c:8993 gio/win32/gwinhttpfile.c:453
+#: gio/gdbusauthmechanismsha1.c:368 gio/gfile.c:1105 gio/gfile.c:1343
+#: gio/gfile.c:1481 gio/gfile.c:1718 gio/gfile.c:1773 gio/gfile.c:1831
+#: gio/gfile.c:1915 gio/gfile.c:1972 gio/gfile.c:2036 gio/gfile.c:2091
+#: gio/gfile.c:3969 gio/gfile.c:4108 gio/gfile.c:4515 gio/gfile.c:4980
+#: gio/gfile.c:5392 gio/gfile.c:5477 gio/gfile.c:5567 gio/gfile.c:5664
+#: gio/gfile.c:5751 gio/gfile.c:5850 gio/gfile.c:9004 gio/gfile.c:9094
+#: gio/gfile.c:9178 gio/win32/gwinhttpfile.c:453
 msgid "Operation not supported"
 msgstr "Operação sem suporte"
 
@@ -702,15 +710,15 @@ msgstr "Erro ao abrir o chaveiro “%s” para escrita: "
 msgid "(Additionally, releasing the lock for “%s” also failed: %s) "
 msgstr "(Adicionalmente, liberar o bloqueio de “%s” também falhou: %s) "
 
-#: gio/gdbusconnection.c:590 gio/gdbusconnection.c:2415
+#: gio/gdbusconnection.c:585 gio/gdbusconnection.c:2392
 msgid "The connection is closed"
 msgstr "A conexão está fechada"
 
-#: gio/gdbusconnection.c:1899
+#: gio/gdbusconnection.c:1876
 msgid "Timeout was reached"
 msgstr "O tempo limite foi alcançado"
 
-#: gio/gdbusconnection.c:2538
+#: gio/gdbusconnection.c:2515
 msgid ""
 "Unsupported flags encountered when constructing a client-side connection"
 msgstr ""
@@ -801,67 +809,81 @@ msgstr "Uma subárvore já foi exportada para %s"
 msgid "Object does not exist at path “%s”"
 msgstr "O objeto não existe no caminho “%s”"
 
-#: gio/gdbusmessage.c:1306
-msgid "type is INVALID"
-msgstr "o tipo é INVALID"
-
-#: gio/gdbusmessage.c:1324
-msgid "METHOD_CALL message: PATH or MEMBER header field is missing or invalid"
+#: gio/gdbusmessage.c:1351
+#, c-format
+msgid "%s message: %s header field is invalid; expected a value of type ‘%s’"
 msgstr ""
-"Mensagem de METHOD_CALL: O campo de cabeçalho PATH ou MEMBER está faltando "
-"ou é inválido"
+"Mensagem %s: o campo de cabeçalho %s é inválido; esperado um valor do tipo "
+"'%s'"
 
-#: gio/gdbusmessage.c:1340
-msgid "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
-msgstr ""
-"Mensagem de METHOD_RETURN: O campo de cabeçalho REPLY_SERIAL está faltando "
-"ou é inválido"
+#: gio/gdbusmessage.c:1374
+#, c-format
+msgid "%s message: %s header field is missing or invalid"
+msgstr "Mensagem %s: o campo de cabeçalho %s está faltando ou é inválido"
 
-#: gio/gdbusmessage.c:1360
-msgid ""
-"ERROR message: REPLY_SERIAL or ERROR_NAME header field is missing or invalid"
-msgstr ""
-"Mensagem de ERROR: O campo de cabeçalho REPLY_SERIAL ou ERROR_NAME está "
-"faltando ou é inválido"
+#: gio/gdbusmessage.c:1413
+#, c-format
+msgid "%s message: INVALID header field supplied"
+msgstr "Mensagem %s: campo de cabeçalho inválido fornecido"
 
-#: gio/gdbusmessage.c:1384
+#: gio/gdbusmessage.c:1424
+#, c-format
 msgid ""
-"SIGNAL message: PATH, INTERFACE or MEMBER header field is missing or invalid"
+"%s message: PATH header field is using the reserved value /org/freedesktop/"
+"DBus/Local"
 msgstr ""
-"Mensagem de SIGNAL: O campo de cabeçalho PATH, INTERFACE ou MEMBER está "
-"faltando ou é inválido"
+"Mensagem %s: o campo do cabeçalho PATH está usando o valor reservado /org/"
+"freedesktop/DBus/Local"
 
-#: gio/gdbusmessage.c:1392
+#: gio/gdbusmessage.c:1437
+#, c-format
 msgid ""
-"SIGNAL message: The PATH header field is using the reserved value /org/"
-"freedesktop/DBus/Local"
+"%s message: INTERFACE header field does not contain a valid interface name"
 msgstr ""
-"Mensagem de SIGNAL: O campo de cabeçalho PATH está usando o valor reservado /"
-"org/freedesktop/DBus/Local"
+"Mensagem %s: o campo do cabeçalho INTERFACE não contém um nome de interface "
+"válido"
 
-#: gio/gdbusmessage.c:1400
+#: gio/gdbusmessage.c:1446
+#, c-format
 msgid ""
-"SIGNAL message: The INTERFACE header field is using the reserved value org."
+"%s message: INTERFACE header field is using the reserved value org."
 "freedesktop.DBus.Local"
 msgstr ""
-"Mensagem de SIGNAL: O campo de cabeçalho INTERFACE está usando o valor "
-"reservado org.freedesktop.DBus.Local"
+"Mensagem %s: o campo do cabeçalho INTERFACE está usando o valor reservado "
+"org.freedesktop.DBus.Local"
+
+#: gio/gdbusmessage.c:1459
+#, c-format
+msgid "%s message: MEMBER header field does not contain a valid member name"
+msgstr ""
+"Mensagem %s: o campo do cabeçalho MEMBER não contém um nome de membro válido"
+
+#: gio/gdbusmessage.c:1472
+#, c-format
+msgid "%s message: ERROR_NAME header field does not contain a valid error name"
+msgstr ""
+"Mensagem %s: o campo de cabeçalho ERROR_NAME não contém um nome de erro "
+"válido"
+
+#: gio/gdbusmessage.c:1511
+msgid "type is INVALID"
+msgstr "o tipo é INVALID"
 
-#: gio/gdbusmessage.c:1449 gio/gdbusmessage.c:1509
+#: gio/gdbusmessage.c:1581 gio/gdbusmessage.c:1641
 #, c-format
 msgid "Wanted to read %lu byte but only got %lu"
 msgid_plural "Wanted to read %lu bytes but only got %lu"
 msgstr[0] "Ao tentar ler %lu byte obteve-se %lu"
 msgstr[1] "Ao tentar ler %lu bytes obteve-se %lu"
 
-#: gio/gdbusmessage.c:1463
+#: gio/gdbusmessage.c:1595
 #, c-format
 msgid "Expected NUL byte after the string “%s” but found byte %d"
 msgstr ""
 "Era esperado um byte NUL (nulo) após o texto “%s”, mas foi localizado o byte "
 "%d"
 
-#: gio/gdbusmessage.c:1482
+#: gio/gdbusmessage.c:1614
 #, c-format
 msgid ""
 "Expected valid UTF-8 string but found invalid bytes at byte offset %d "
@@ -871,21 +893,21 @@ msgstr ""
 "posição %d (tamanho do texto é %d). O texto UTF-8 válido até este ponto era "
 "“%s”"
 
-#: gio/gdbusmessage.c:1546 gio/gdbusmessage.c:1822 gio/gdbusmessage.c:2033
+#: gio/gdbusmessage.c:1678 gio/gdbusmessage.c:1954 gio/gdbusmessage.c:2165
 msgid "Value nested too deeply"
 msgstr "Valor aninhado profundo demais"
 
-#: gio/gdbusmessage.c:1714
+#: gio/gdbusmessage.c:1846
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus object path"
 msgstr "O valor “%s” analisado não é um objeto de caminho D-Bus válido"
 
-#: gio/gdbusmessage.c:1738
+#: gio/gdbusmessage.c:1870
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature"
 msgstr "O valor “%s” analisado não é uma assinatura D-Bus válida"
 
-#: gio/gdbusmessage.c:1789
+#: gio/gdbusmessage.c:1921
 #, c-format
 msgid ""
 "Encountered array of length %u byte. Maximum length is 2<<26 bytes (64 MiB)."
@@ -898,7 +920,7 @@ msgstr[1] ""
 "Foi encontrado um vetor com tamanho de %u bytes. O tamanho máximo é de 2<<26 "
 "bytes (64 MiB)."
 
-#: gio/gdbusmessage.c:1809
+#: gio/gdbusmessage.c:1941
 #, c-format
 msgid ""
 "Encountered array of type “a%c”, expected to have a length a multiple of %u "
@@ -908,16 +930,16 @@ msgstr ""
 "comprimento múltiplo de %u bytes, porém foi localizado %u bytes em "
 "comprimento"
 
-#: gio/gdbusmessage.c:1963 gio/gdbusmessage.c:2682
+#: gio/gdbusmessage.c:2095 gio/gdbusmessage.c:2822
 msgid "Empty structures (tuples) are not allowed in D-Bus"
 msgstr "Estruturas (tuplas) vazias não são permitidas no D-Bus"
 
-#: gio/gdbusmessage.c:2017
+#: gio/gdbusmessage.c:2149
 #, c-format
 msgid "Parsed value “%s” for variant is not a valid D-Bus signature"
 msgstr "O valor “%s” analisado para variante não é uma assinatura D-Bus válida"
 
-#: gio/gdbusmessage.c:2058
+#: gio/gdbusmessage.c:2190
 #, c-format
 msgid ""
 "Error deserializing GVariant with type string “%s” from the D-Bus wire format"
@@ -925,7 +947,7 @@ msgstr ""
 "Erro ao desserializar GVariant com o texto de tipo “%s” do formato "
 "delimitado pelo D-Bus"
 
-#: gio/gdbusmessage.c:2243
+#: gio/gdbusmessage.c:2375
 #, c-format
 msgid ""
 "Invalid endianness value. Expected 0x6c (“l”) or 0x42 (“B”) but found value "
@@ -934,31 +956,31 @@ msgstr ""
 "Valor identificador de endian inválido. Era esperado 0x6c (“l”) ou 0x42 "
 "(“B”), mas foi localizado o valor 0x%02x"
 
-#: gio/gdbusmessage.c:2262
+#: gio/gdbusmessage.c:2394
 #, c-format
 msgid "Invalid major protocol version. Expected 1 but found %d"
 msgstr ""
 "Versão majoritária de protocolo inválida. Era esperado 1, mas foi localizado "
 "%d"
 
-#: gio/gdbusmessage.c:2320 gio/gdbusmessage.c:2918
+#: gio/gdbusmessage.c:2452 gio/gdbusmessage.c:3058
 msgid "Signature header found but is not of type signature"
 msgstr "Cabeçalho da assinatura localizado, mas não é do tipo assinatura"
 
-#: gio/gdbusmessage.c:2332
+#: gio/gdbusmessage.c:2464
 #, c-format
 msgid "Signature header with signature “%s” found but message body is empty"
 msgstr ""
 "O cabeçalho de assinatura foi localizado com a assinatura “%s”, mas o corpo "
 "da mensagem está vazio"
 
-#: gio/gdbusmessage.c:2347
+#: gio/gdbusmessage.c:2479
 #, c-format
 msgid "Parsed value “%s” is not a valid D-Bus signature (for body)"
 msgstr ""
 "O valor “%s” analisado não é uma assinatura D-Bus válida (para o corpo)"
 
-#: gio/gdbusmessage.c:2379
+#: gio/gdbusmessage.c:2519
 #, c-format
 msgid "No signature header in message but the message body is %u byte"
 msgid_plural "No signature header in message but the message body is %u bytes"
@@ -969,11 +991,11 @@ msgstr[1] ""
 "Nenhum cabeçalho de assinatura na mensagem, mas o corpo da mensagem tem %u "
 "bytes"
 
-#: gio/gdbusmessage.c:2389
+#: gio/gdbusmessage.c:2529
 msgid "Cannot deserialize message: "
 msgstr "Não foi possível desserializar a mensagem: "
 
-#: gio/gdbusmessage.c:2735
+#: gio/gdbusmessage.c:2875
 #, c-format
 msgid ""
 "Error serializing GVariant with type string “%s” to the D-Bus wire format"
@@ -981,7 +1003,7 @@ msgstr ""
 "Erro ao serializar GVariant com o texto de tipo “%s” para o formato "
 "delimitado pelo D-Bus"
 
-#: gio/gdbusmessage.c:2872
+#: gio/gdbusmessage.c:3012
 #, c-format
 msgid ""
 "Number of file descriptors in message (%d) differs from header field (%d)"
@@ -989,18 +1011,18 @@ msgstr ""
 "O número de descritores de arquivo na mensagem (%d) difere do campo de "
 "cabeçalho (%d)"
 
-#: gio/gdbusmessage.c:2880
+#: gio/gdbusmessage.c:3020
 msgid "Cannot serialize message: "
 msgstr "Não foi possível serializar a mensagem: "
 
-#: gio/gdbusmessage.c:2933
+#: gio/gdbusmessage.c:3073
 #, c-format
 msgid "Message body has signature “%s” but there is no signature header"
 msgstr ""
 "O corpo da mensagem tem a assinatura “%s”, mas não há um cabeçalho de "
 "assinatura"
 
-#: gio/gdbusmessage.c:2943
+#: gio/gdbusmessage.c:3083
 #, c-format
 msgid ""
 "Message body has type signature “%s” but signature in the header field is "
@@ -1009,19 +1031,19 @@ msgstr ""
 "O corpo da mensagem tem o tipo de assinatura “%s”, mas a assinatura no campo "
 "de cabeçalho é “%s”"
 
-#: gio/gdbusmessage.c:2959
+#: gio/gdbusmessage.c:3099
 #, c-format
 msgid "Message body is empty but signature in the header field is “(%s)”"
 msgstr ""
 "O corpo da mensagem está vazio, mas a assinatura no campo de cabeçalho é "
 "“(%s)”"
 
-#: gio/gdbusmessage.c:3514
+#: gio/gdbusmessage.c:3673
 #, c-format
 msgid "Error return with body of type “%s”"
 msgstr "Retorno de erro com o corpo de tipo “%s”"
 
-#: gio/gdbusmessage.c:3522
+#: gio/gdbusmessage.c:3681
 msgid "Error return with empty body"
 msgstr "Retorno de erro com o corpo vazio"
 
@@ -1041,22 +1063,22 @@ msgid "Unable to get Hardware profile: %s"
 msgstr "Não foi possível obter o perfil da máquina: %s"
 
 #. Translators: Both placeholders are file paths
-#: gio/gdbusprivate.c:2461
+#: gio/gdbusprivate.c:2466
 #, c-format
 msgid "Unable to load %s or %s: "
 msgstr "Não foi possível carregar %s ou %s: "
 
-#: gio/gdbusproxy.c:1568
+#: gio/gdbusproxy.c:1552
 #, c-format
 msgid "Error calling StartServiceByName for %s: "
 msgstr "Erro ao chamar StartServiceByName para %s: "
 
-#: gio/gdbusproxy.c:1591
+#: gio/gdbusproxy.c:1575
 #, c-format
 msgid "Unexpected reply %d from StartServiceByName(\"%s\") method"
 msgstr "Resposta %d inesperada do método StartServiceByName(\"%s\")"
 
-#: gio/gdbusproxy.c:2702 gio/gdbusproxy.c:2837
+#: gio/gdbusproxy.c:2686 gio/gdbusproxy.c:2821
 #, c-format
 msgid ""
 "Cannot invoke method; proxy is for the well-known name %s without an owner, "
@@ -1066,27 +1088,27 @@ msgstr ""
 "dono e o proxy foi construído com o sinalizador "
 "G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START"
 
-#: gio/gdbusserver.c:758
+#: gio/gdbusserver.c:739
 msgid "Abstract namespace not supported"
 msgstr "Sem suporte a espaço de nome abstrato"
 
-#: gio/gdbusserver.c:850
+#: gio/gdbusserver.c:831
 msgid "Cannot specify nonce file when creating a server"
 msgstr ""
 "Não foi possível especificar o arquivo de valor de uso único ao criar um "
 "servidor"
 
-#: gio/gdbusserver.c:932
+#: gio/gdbusserver.c:913
 #, c-format
 msgid "Error writing nonce file at “%s”: %s"
 msgstr "Erro ao gravar o arquivo de valor de uso único em “%s”: %s"
 
-#: gio/gdbusserver.c:1107
+#: gio/gdbusserver.c:1088
 #, c-format
 msgid "The string “%s” is not a valid D-Bus GUID"
 msgstr "O texto “%s” não é válido para GUID D-Bus"
 
-#: gio/gdbusserver.c:1145
+#: gio/gdbusserver.c:1126
 #, c-format
 msgid "Cannot listen on unsupported transport “%s”"
 msgstr "Não é possível escutar no transporte “%s” por falta de suporte"
@@ -1149,6 +1171,10 @@ msgstr "Conectar ao barramento de sessão"
 msgid "Connect to given D-Bus address"
 msgstr "Conectar ao endereço D-Bus escolhido"
 
+#: gio/gdbus-tool.c:407
+msgid "ADDRESS"
+msgstr "ADDRESS"
+
 #: gio/gdbus-tool.c:417
 msgid "Connection Endpoint Options:"
 msgstr "Opções de conexão de ponto final:"
@@ -1380,72 +1406,73 @@ msgstr "Erro: %s não é um nome válido de barramento conhecido.\n"
 msgid "Not authorized to change debug settings"
 msgstr "Não autorizado para alterar configurações de depuração"
 
-#: gio/gdesktopappinfo.c:2242 gio/gdesktopappinfo.c:5226
+#: gio/gdesktopappinfo.c:2235 gio/gdesktopappinfo.c:5219
+#: gio/gwin32appinfo.c:4256
 msgid "Unnamed"
 msgstr "Sem nome"
 
-#: gio/gdesktopappinfo.c:2652
+#: gio/gdesktopappinfo.c:2645
 msgid "Desktop file didn’t specify Exec field"
 msgstr "O arquivo da área de trabalho não especifica o campo Exec"
 
-#: gio/gdesktopappinfo.c:2942
+#: gio/gdesktopappinfo.c:2935
 msgid "Unable to find terminal required for application"
 msgstr "Não é possível localizar o terminal requerido para o aplicativo"
 
-#: gio/gdesktopappinfo.c:3002
+#: gio/gdesktopappinfo.c:2995
 #, c-format
 msgid "Program ‘%s’ not found in $PATH"
 msgstr "Programa “%s” não encontrado em $PATH"
 
-#: gio/gdesktopappinfo.c:3738
+#: gio/gdesktopappinfo.c:3731
 #, c-format
 msgid "Can’t create user application configuration folder %s: %s"
 msgstr ""
 "Não é possível criar pasta de configuração do aplicativo do usuário %s: %s"
 
-#: gio/gdesktopappinfo.c:3742
+#: gio/gdesktopappinfo.c:3735
 #, c-format
 msgid "Can’t create user MIME configuration folder %s: %s"
 msgstr "Não é possível criar pasta de configuração MIME do usuário %s: %s"
 
-#: gio/gdesktopappinfo.c:3984 gio/gdesktopappinfo.c:4008
+#: gio/gdesktopappinfo.c:3977 gio/gdesktopappinfo.c:4001
 msgid "Application information lacks an identifier"
 msgstr "A informação do aplicativo carece de um identificador"
 
-#: gio/gdesktopappinfo.c:4244
+#: gio/gdesktopappinfo.c:4237
 #, c-format
 msgid "Can’t create user desktop file %s"
 msgstr "Não é possível criar arquivo %s da área de trabalho do usuário"
 
-#: gio/gdesktopappinfo.c:4380
+#: gio/gdesktopappinfo.c:4373
 #, c-format
 msgid "Custom definition for %s"
 msgstr "Definição personalizada para %s"
 
-#: gio/gdrive.c:419
+#: gio/gdrive.c:417
 msgid "drive doesn’t implement eject"
 msgstr "a unidade não implementa ejetar"
 
 #. Translators: This is an error
 #. * message for drive objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gdrive.c:497
+#: gio/gdrive.c:495
 msgid "drive doesn’t implement eject or eject_with_operation"
 msgstr "a unidade não implementa ejetar ou eject_with_operation"
 
-#: gio/gdrive.c:573
+#: gio/gdrive.c:571
 msgid "drive doesn’t implement polling for media"
 msgstr "a unidade não implementa verificação por mídia"
 
-#: gio/gdrive.c:780
+#: gio/gdrive.c:778
 msgid "drive doesn’t implement start"
 msgstr "a unidade não implementa start"
 
-#: gio/gdrive.c:882
+#: gio/gdrive.c:880
 msgid "drive doesn’t implement stop"
 msgstr "a unidade não implementa stop"
 
-#: gio/gdtlsconnection.c:1188 gio/gtlsconnection.c:957
+#: gio/gdtlsconnection.c:1154 gio/gtlsconnection.c:921
 msgid "TLS backend does not implement TLS binding retrieval"
 msgstr "O backend TLS não implementa recuperação de vinculação TLS"
 
@@ -1458,27 +1485,27 @@ msgstr "Suporte TLS não disponível"
 msgid "DTLS support is not available"
 msgstr "Suporte DTLS não disponível"
 
-#: gio/gemblem.c:325
+#: gio/gemblem.c:332
 #, c-format
 msgid "Can’t handle version %d of GEmblem encoding"
 msgstr "Não é possível lidar com a versão %d da codificação GEmblem"
 
-#: gio/gemblem.c:335
+#: gio/gemblem.c:342
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblem encoding"
 msgstr "Número inválido de tokens (%d) na codificação GEmblem"
 
-#: gio/gemblemedicon.c:364
+#: gio/gemblemedicon.c:366
 #, c-format
 msgid "Can’t handle version %d of GEmblemedIcon encoding"
 msgstr "Não é possível lidar com a versão %d da codificação GEmblemedIcon"
 
-#: gio/gemblemedicon.c:374
+#: gio/gemblemedicon.c:376
 #, c-format
 msgid "Malformed number of tokens (%d) in GEmblemedIcon encoding"
 msgstr "Número inválido de tokens (%d) na codificação GEmblemedIcon"
 
-#: gio/gemblemedicon.c:397
+#: gio/gemblemedicon.c:399
 msgid "Expected a GEmblem for GEmblemedIcon"
 msgstr "Esperado um GEmblem para o GEmblemedIcon"
 
@@ -1486,124 +1513,134 @@ msgstr "Esperado um GEmblem para o GEmblemedIcon"
 #. * trying to find the enclosing (user visible)
 #. * mount of a file, but none exists.
 #.
-#: gio/gfile.c:1594
+#: gio/gfile.c:1604
 msgid "Containing mount does not exist"
 msgstr "Ponto de montagem contido não existe"
 
-#: gio/gfile.c:2641 gio/glocalfile.c:2515
+#: gio/gfile.c:2650 gio/glocalfile.c:2520
 msgid "Can’t copy over directory"
 msgstr "Não é possível copiar sobre diretório"
 
-#: gio/gfile.c:2701
+#: gio/gfile.c:2710
 msgid "Can’t copy directory over directory"
 msgstr "Não é possível copiar diretório sobre diretório"
 
-#: gio/gfile.c:2709
+#: gio/gfile.c:2718
 msgid "Target file exists"
 msgstr "Arquivo alvo existe"
 
-#: gio/gfile.c:2728
+#: gio/gfile.c:2737
 msgid "Can’t recursively copy directory"
 msgstr "Não é possível copiar o diretório recursivamente"
 
-#: gio/gfile.c:3029
-msgid "Splice not supported"
-msgstr "Não há suporte a união de arquivos"
+#: gio/gfile.c:3050 gio/gfile.c:3098
+#, c-format
+msgid "Copy file range not supported"
+msgstr "Intervalo de cópia de arquivo não suportado"
 
-#: gio/gfile.c:3033
+#: gio/gfile.c:3056 gio/gfile.c:3167
 #, c-format
 msgid "Error splicing file: %s"
 msgstr "Erro ao unir o arquivo: %s"
 
-#: gio/gfile.c:3195
+#: gio/gfile.c:3163
+msgid "Splice not supported"
+msgstr "Não há suporte a união de arquivos"
+
+#: gio/gfile.c:3327
 msgid "Copy (reflink/clone) between mounts is not supported"
 msgstr "Não há suporte a copiar (reflink/clone) entre montagens"
 
-#: gio/gfile.c:3199
+#: gio/gfile.c:3331
 msgid "Copy (reflink/clone) is not supported or invalid"
 msgstr "Não há suporte a copiar (reflink/clone) ou é inválido"
 
-#: gio/gfile.c:3204
+#: gio/gfile.c:3336
 msgid "Copy (reflink/clone) is not supported or didn’t work"
 msgstr "Não há suporte a copiar (reflink/clone) ou não funcionou"
 
-#: gio/gfile.c:3269
+#: gio/gfile.c:3384 gio/gfile.c:3395
+#, c-format
+msgid "Cannot retrieve attribute %s"
+msgstr "Não foi possível recuperar o atributo %s"
+
+#: gio/gfile.c:3415
 msgid "Can’t copy special file"
 msgstr "Não é possível copiar o arquivo especial"
 
-#: gio/gfile.c:4163
+#: gio/gfile.c:4332
 msgid "Invalid symlink value given"
 msgstr "Fornecido valor inválido de link simbólico"
 
-#: gio/gfile.c:4173 glib/gfileutils.c:2392
+#: gio/gfile.c:4342 glib/gfileutils.c:2409
 msgid "Symbolic links not supported"
 msgstr "Não há suporte a links simbólicos"
 
-#: gio/gfile.c:4460
+#: gio/gfile.c:4623
 msgid "Trash not supported"
 msgstr "Não há suporte para lixeira"
 
-#: gio/gfile.c:4572
+#: gio/gfile.c:4733
 #, c-format
 msgid "File names cannot contain “%c”"
 msgstr "Nomes de arquivo não podem conter “%c”"
 
-#: gio/gfile.c:7003 gio/gfile.c:7129
+#: gio/gfile.c:7159 gio/gfile.c:7285
 #, c-format
 msgid "Failed to create a temporary directory for template “%s”: %s"
 msgstr "Falha ao criar um diretório temporário para o modelo “%s”: %s"
 
-#: gio/gfile.c:7418 gio/gvolume.c:366
+#: gio/gfile.c:7603 gio/gvolume.c:362
 msgid "volume doesn’t implement mount"
 msgstr "volume não implementa montagem"
 
-#: gio/gfile.c:7532 gio/gfile.c:7609
+#: gio/gfile.c:7717 gio/gfile.c:7794
 msgid "No application is registered as handling this file"
 msgstr "Nenhum aplicativo está registrado como manipulador deste arquivo"
 
-#: gio/gfileenumerator.c:214
+#: gio/gfileenumerator.c:216
 msgid "Enumerator is closed"
 msgstr "O enumerador está fechado"
 
-#: gio/gfileenumerator.c:221 gio/gfileenumerator.c:280
-#: gio/gfileenumerator.c:424 gio/gfileenumerator.c:523
+#: gio/gfileenumerator.c:223 gio/gfileenumerator.c:282
+#: gio/gfileenumerator.c:427 gio/gfileenumerator.c:527
 msgid "File enumerator has outstanding operation"
 msgstr "O enumerador do arquivo tem operação pendente"
 
-#: gio/gfileenumerator.c:415 gio/gfileenumerator.c:514
+#: gio/gfileenumerator.c:418 gio/gfileenumerator.c:518
 msgid "File enumerator is already closed"
 msgstr "O enumerador do arquivo já está fechado"
 
-#: gio/gfileicon.c:252
+#: gio/gfileicon.c:248
 #, c-format
 msgid "Can’t handle version %d of GFileIcon encoding"
 msgstr "Não é possível lidar com a versão %d da codificação GFileIcon"
 
-#: gio/gfileicon.c:262
+#: gio/gfileicon.c:258
 msgid "Malformed input data for GFileIcon"
 msgstr "Dados de entrada malformados para o GFileIcon"
 
-#: gio/gfileinputstream.c:151 gio/gfileinputstream.c:396
-#: gio/gfileiostream.c:169 gio/gfileoutputstream.c:166
-#: gio/gfileoutputstream.c:499
+#: gio/gfileinputstream.c:148 gio/gfileinputstream.c:394
+#: gio/gfileiostream.c:166 gio/gfileoutputstream.c:163
+#: gio/gfileoutputstream.c:497
 msgid "Stream doesn’t support query_info"
 msgstr "Fluxo não tem suporte para query_info"
 
-#: gio/gfileinputstream.c:327 gio/gfileiostream.c:381
-#: gio/gfileoutputstream.c:373
+#: gio/gfileinputstream.c:325 gio/gfileiostream.c:380
+#: gio/gfileoutputstream.c:371
 msgid "Seek not supported on stream"
 msgstr "Não há suporte à busca no fluxo"
 
-#: gio/gfileinputstream.c:371
+#: gio/gfileinputstream.c:369
 msgid "Truncate not allowed on input stream"
 msgstr "Não é permitido truncar fluxo de entrada"
 
-#: gio/gfileiostream.c:457 gio/gfileoutputstream.c:449
+#: gio/gfileiostream.c:456 gio/gfileoutputstream.c:447
 msgid "Truncate not supported on stream"
 msgstr "Não há suporte para truncar fluxo"
 
-#: gio/ghttpproxy.c:93 gio/gresolver.c:460 gio/gresolver.c:613
-#: glib/gconvert.c:1829
+#: gio/ghttpproxy.c:93 gio/gresolver.c:529 gio/gresolver.c:682
+#: glib/gconvert.c:1752
 msgid "Invalid hostname"
 msgstr "Nome de máquina inválido"
 
@@ -1636,64 +1673,64 @@ msgstr "Resposta do proxy HTTP grande demais"
 msgid "HTTP proxy server closed connection unexpectedly."
 msgstr "O servidor proxy HTTP fechou a conexão de forma inesperada."
 
-#: gio/gicon.c:299
+#: gio/gicon.c:298
 #, c-format
 msgid "Wrong number of tokens (%d)"
 msgstr "Número errado de tokens (%d)"
 
-#: gio/gicon.c:319
+#: gio/gicon.c:318
 #, c-format
 msgid "No type for class name %s"
 msgstr "Sem tipo para a classe chamada %s"
 
-#: gio/gicon.c:329
+#: gio/gicon.c:328
 #, c-format
 msgid "Type %s does not implement the GIcon interface"
 msgstr "O tipo %s não implementa a interface GIcon"
 
-#: gio/gicon.c:340
+#: gio/gicon.c:339
 #, c-format
 msgid "Type %s is not classed"
 msgstr "O tipo %s não tem classe"
 
-#: gio/gicon.c:354
+#: gio/gicon.c:353
 #, c-format
 msgid "Malformed version number: %s"
 msgstr "Número de versão malformado: %s"
 
-#: gio/gicon.c:368
+#: gio/gicon.c:367
 #, c-format
 msgid "Type %s does not implement from_tokens() on the GIcon interface"
 msgstr "O tipo %s não implementa from_tokens() na interface GIcon"
 
-#: gio/gicon.c:470
+#: gio/gicon.c:469
 msgid "Can’t handle the supplied version of the icon encoding"
 msgstr "Não é possível lidar com a versão fornecida da codificação do ícone"
 
-#: gio/ginetaddressmask.c:184
+#: gio/ginetaddressmask.c:192
 msgid "No address specified"
 msgstr "Nenhum endereço fornecido"
 
-#: gio/ginetaddressmask.c:192
+#: gio/ginetaddressmask.c:200
 #, c-format
 msgid "Length %u is too long for address"
 msgstr "O tamanho %u é muito longo para o endereço"
 
-#: gio/ginetaddressmask.c:225
+#: gio/ginetaddressmask.c:233
 msgid "Address has bits set beyond prefix length"
 msgstr "O endereço contém bits ativos além do tamanho do prefixo (máscara)"
 
-#: gio/ginetaddressmask.c:302
+#: gio/ginetaddressmask.c:310
 #, c-format
 msgid "Could not parse “%s” as IP address mask"
 msgstr "Não foi possível interpretar “%s” como uma máscara de endereço IP"
 
-#: gio/ginetsocketaddress.c:205 gio/ginetsocketaddress.c:222
-#: gio/gnativesocketaddress.c:111 gio/gunixsocketaddress.c:230
+#: gio/ginetsocketaddress.c:199 gio/ginetsocketaddress.c:216
+#: gio/gnativesocketaddress.c:107 gio/gunixsocketaddress.c:222
 msgid "Not enough space for socket address"
 msgstr "Sem espaço suficiente para o endereço do soquete"
 
-#: gio/ginetsocketaddress.c:237
+#: gio/ginetsocketaddress.c:231
 msgid "Unsupported socket address"
 msgstr "Endereço de soquete não suportado"
 
@@ -1707,7 +1744,7 @@ msgstr "Fluxo de entrada não implementa leitura"
 #. Translators: This is an error you get if there is
 #. * already an operation running against this stream when
 #. * you try to start one
-#: gio/ginputstream.c:1251 gio/giostream.c:312 gio/goutputstream.c:2210
+#: gio/ginputstream.c:1256 gio/giostream.c:327 gio/goutputstream.c:2218
 msgid "Stream has outstanding operation"
 msgstr "O fluxo tem operação pendente"
 
@@ -1723,7 +1760,7 @@ msgstr "Manter com o arquivo quando movido"
 msgid "“version” takes no arguments"
 msgstr "“version” não leva argumentos"
 
-#: gio/gio-tool.c:209 gio/gio-tool.c:225 glib/goption.c:871
+#: gio/gio-tool.c:209 gio/gio-tool.c:258 glib/goption.c:712
 msgid "Usage:"
 msgstr "Uso:"
 
@@ -1731,79 +1768,79 @@ msgstr "Uso:"
 msgid "Print version information and exit."
 msgstr "Exibe a informação da versão e sai."
 
-#: gio/gio-tool.c:228
-msgid "Commands:"
-msgstr "Comandos:"
-
-#: gio/gio-tool.c:231
+#: gio/gio-tool.c:232
 msgid "Concatenate files to standard output"
 msgstr "Concatena arquivos para a saída padrão"
 
-#: gio/gio-tool.c:232
+#: gio/gio-tool.c:233
 msgid "Copy one or more files"
 msgstr "Copia um ou mais arquivos"
 
-#: gio/gio-tool.c:233
+#: gio/gio-tool.c:234
 msgid "Show information about locations"
 msgstr "Mostra informações sobre locais"
 
-#: gio/gio-tool.c:234
+#: gio/gio-tool.c:235
 msgid "Launch an application from a desktop file"
 msgstr "Inicia um aplicativo a partir de um arquivo desktop"
 
-#: gio/gio-tool.c:235
+#: gio/gio-tool.c:236
 msgid "List the contents of locations"
 msgstr "Lista o conteúdo dos locais"
 
-#: gio/gio-tool.c:236
+#: gio/gio-tool.c:237
 msgid "Get or set the handler for a mimetype"
 msgstr "Obtém ou define o manipulador para um tipo mime"
 
-#: gio/gio-tool.c:237
+#: gio/gio-tool.c:238
 msgid "Create directories"
 msgstr "Cria diretórios"
 
-#: gio/gio-tool.c:238
+#: gio/gio-tool.c:239
 msgid "Monitor files and directories for changes"
 msgstr "Monitora arquivos e diretórios por alterações"
 
-#: gio/gio-tool.c:239
+#: gio/gio-tool.c:240
 msgid "Mount or unmount the locations"
 msgstr "Monta ou desmonta os locais"
 
-#: gio/gio-tool.c:240
+#: gio/gio-tool.c:241
 msgid "Move one or more files"
 msgstr "Move um ou mais arquivos"
 
-#: gio/gio-tool.c:241
+#: gio/gio-tool.c:242
 msgid "Open files with the default application"
 msgstr "Abre arquivos com o aplicativo padrão"
 
-#: gio/gio-tool.c:242
+#: gio/gio-tool.c:243
 msgid "Rename a file"
 msgstr "Renomeia um arquivo"
 
-#: gio/gio-tool.c:243
+#: gio/gio-tool.c:244
 msgid "Delete one or more files"
 msgstr "Exclui um ou mais arquivos"
 
-#: gio/gio-tool.c:244
+#: gio/gio-tool.c:245
 msgid "Read from standard input and save"
 msgstr "Lê da entrada padrão e salva"
 
-#: gio/gio-tool.c:245
+#: gio/gio-tool.c:246
 msgid "Set a file attribute"
 msgstr "Define um atributo de arquivo"
 
-#: gio/gio-tool.c:246
+#: gio/gio-tool.c:247
 msgid "Move files or directories to the trash"
 msgstr "Move arquivos ou diretórios para a lixeira"
 
-#: gio/gio-tool.c:247
+#: gio/gio-tool.c:248
 msgid "Lists the contents of locations in a tree"
 msgstr "Lista o conteúdo de locais em uma árvore"
 
-#: gio/gio-tool.c:249
+#: gio/gio-tool.c:261
+msgid "Commands:"
+msgstr "Comandos:"
+
+#: gio/gio-tool.c:275
 #, c-format
 msgid "Use %s to get detailed help.\n"
 msgstr "Use %s para obter ajuda detalhada.\n"
@@ -1813,10 +1850,10 @@ msgid "Error writing to stdout"
 msgstr "Erro ao gravar para a saída padrão"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:382 gio/gio-tool-list.c:176
+#: gio/gio-tool-cat.c:135 gio/gio-tool-info.c:383 gio/gio-tool-list.c:176
 #: gio/gio-tool-mkdir.c:50 gio/gio-tool-monitor.c:39 gio/gio-tool-monitor.c:41
 #: gio/gio-tool-monitor.c:43 gio/gio-tool-monitor.c:45
-#: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1210 gio/gio-tool-open.c:72
+#: gio/gio-tool-monitor.c:206 gio/gio-tool-mount.c:1236 gio/gio-tool-open.c:72
 #: gio/gio-tool-remove.c:50 gio/gio-tool-rename.c:47 gio/gio-tool-set.c:95
 #: gio/gio-tool-trash.c:222 gio/gio-tool-tree.c:246
 msgid "LOCATION"
@@ -1836,60 +1873,65 @@ msgstr ""
 "usando locais GIO em vez de arquivos locais: por exemplo, você pode\n"
 "usar alguma coisa como smb://servidor/recurso/arquivo.txt como local."
 
-#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:413 gio/gio-tool-mkdir.c:78
-#: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1261 gio/gio-tool-open.c:98
+#: gio/gio-tool-cat.c:164 gio/gio-tool-info.c:414 gio/gio-tool-mkdir.c:78
+#: gio/gio-tool-monitor.c:231 gio/gio-tool-mount.c:1287 gio/gio-tool-open.c:98
 #: gio/gio-tool-remove.c:74 gio/gio-tool-trash.c:303
 msgid "No locations given"
 msgstr "Nenhum local fornecido"
 
-#: gio/gio-tool-copy.c:45 gio/gio-tool-move.c:40
+#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:40
 msgid "No target directory"
 msgstr "Nenhum diretório alvo"
 
-#: gio/gio-tool-copy.c:46 gio/gio-tool-move.c:41
+#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:41
 msgid "Show progress"
 msgstr "Mostra progresso"
 
-#: gio/gio-tool-copy.c:47 gio/gio-tool-move.c:42
+#: gio/gio-tool-copy.c:48 gio/gio-tool-move.c:42
 msgid "Prompt before overwrite"
 msgstr "Pergunta antes de sobrescrever"
 
-#: gio/gio-tool-copy.c:48
+#: gio/gio-tool-copy.c:49
 msgid "Preserve all attributes"
 msgstr "Preserva todos os atributos"
 
-#: gio/gio-tool-copy.c:49 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
+#: gio/gio-tool-copy.c:50 gio/gio-tool-move.c:43 gio/gio-tool-save.c:51
 msgid "Backup existing destination files"
 msgstr "Cria backup dos arquivos de destino existentes"
 
-#: gio/gio-tool-copy.c:50
+#: gio/gio-tool-copy.c:51
 msgid "Never follow symbolic links"
 msgstr "Nunca segue links simbólicos"
 
-#: gio/gio-tool-copy.c:51
+#: gio/gio-tool-copy.c:52
 msgid "Use default permissions for the destination"
 msgstr "Usa permissões padrão para o destino"
 
-#: gio/gio-tool-copy.c:76 gio/gio-tool-move.c:69
+#: gio/gio-tool-copy.c:53
+msgid "Use default file modification timestamps for the destination"
+msgstr ""
+"Use o arquivo padrão de modificação de carimbos de data/hora para o destino"
+
+#: gio/gio-tool-copy.c:78 gio/gio-tool-move.c:69
 #, c-format
 msgid "Transferred %s out of %s (%s/s)"
 msgstr "Transferido(s) %s de %s (%s/s)"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96
 msgid "SOURCE"
 msgstr "ORIGEM"
 
 #. Translators: commandline placeholder
-#: gio/gio-tool-copy.c:102 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
+#: gio/gio-tool-copy.c:104 gio/gio-tool-move.c:96 gio/gio-tool-save.c:162
 msgid "DESTINATION"
 msgstr "DESTINO"
 
-#: gio/gio-tool-copy.c:107
+#: gio/gio-tool-copy.c:109
 msgid "Copy one or more files from SOURCE to DESTINATION."
 msgstr "Copia um ou mais arquivos de ORIGEM para DESTINO."
 
-#: gio/gio-tool-copy.c:109
+#: gio/gio-tool-copy.c:111
 msgid ""
 "gio copy is similar to the traditional cp utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -1899,12 +1941,12 @@ msgstr ""
 "GIO em vez de arquivos locais: por exemplo, você pode usar alguma\n"
 "coisa como smb://servidor/recurso/arquivo.txt como local."
 
-#: gio/gio-tool-copy.c:151
+#: gio/gio-tool-copy.c:153
 #, c-format
 msgid "Destination %s is not a directory"
 msgstr "O destino %s não é um diretório"
 
-#: gio/gio-tool-copy.c:198 gio/gio-tool-move.c:188
+#: gio/gio-tool-copy.c:202 gio/gio-tool-move.c:188
 #, c-format
 msgid "%s: overwrite “%s”? "
 msgstr "%s: sobrescrever “%s”? "
@@ -1933,57 +1975,64 @@ msgstr "Não segue links simbólicos"
 msgid "attributes:\n"
 msgstr "atributos:\n"
 
-#: gio/gio-tool-info.c:166 gio/gio-tool-info.c:176
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:166
 #, c-format
 msgid "display name: %s\n"
 msgstr "nome de exibição: %s\n"
 
-#: gio/gio-tool-info.c:184
+#. Translators: This is a noun and represents and attribute of a file
+#: gio/gio-tool-info.c:176
+#, c-format
+msgid "edit name: %s\n"
+msgstr "nome para edição: %s\n"
+
+#: gio/gio-tool-info.c:185
 #, c-format
 msgid "name: %s\n"
 msgstr "nome: %s\n"
 
-#: gio/gio-tool-info.c:191
+#: gio/gio-tool-info.c:192
 #, c-format
 msgid "type: %s\n"
 msgstr "tipo: %s\n"
 
-#: gio/gio-tool-info.c:197
+#: gio/gio-tool-info.c:198
 msgid "size: "
 msgstr "tamanho: "
 
-#: gio/gio-tool-info.c:203
+#: gio/gio-tool-info.c:204
 msgid "hidden\n"
 msgstr "oculto\n"
 
-#: gio/gio-tool-info.c:206
+#: gio/gio-tool-info.c:207
 #, c-format
 msgid "uri: %s\n"
 msgstr "uri: %s\n"
 
-#: gio/gio-tool-info.c:213
+#: gio/gio-tool-info.c:214
 #, c-format
 msgid "local path: %s\n"
 msgstr "caminho local: %s\n"
 
-#: gio/gio-tool-info.c:247
+#: gio/gio-tool-info.c:248
 #, c-format
 msgid "unix mount: %s%s %s %s %s\n"
 msgstr "montagem unix: %s%s %s %s %s\n"
 
-#: gio/gio-tool-info.c:328
+#: gio/gio-tool-info.c:329
 msgid "Settable attributes:\n"
 msgstr "Atributos definíveis:\n"
 
-#: gio/gio-tool-info.c:352
+#: gio/gio-tool-info.c:353
 msgid "Writable attribute namespaces:\n"
 msgstr "Atributos graváveis no namespace:\n"
 
-#: gio/gio-tool-info.c:387
+#: gio/gio-tool-info.c:388
 msgid "Show information about locations."
 msgstr "Mostra informações sobre locais."
 
-#: gio/gio-tool-info.c:389
+#: gio/gio-tool-info.c:390
 msgid ""
 "gio info is similar to the traditional ls utility, but using GIO\n"
 "locations instead of local files: for example, you can use something\n"
@@ -2255,15 +2304,15 @@ msgstr "Mota um volume TCRYPT de sistema"
 msgid "Anonymous access denied"
 msgstr "Acesso anônimo negado"
 
-#: gio/gio-tool-mount.c:533
+#: gio/gio-tool-mount.c:559
 msgid "No drive for device file"
 msgstr "Nenhuma unidade para o arquivo de dispositivo"
 
-#: gio/gio-tool-mount.c:1025
+#: gio/gio-tool-mount.c:1051
 msgid "No volume for given ID"
 msgstr "Nenhum volume para o ID dado"
 
-#: gio/gio-tool-mount.c:1214
+#: gio/gio-tool-mount.c:1240
 msgid "Mount or unmount the locations."
 msgstr "Monta ou desmontar os locais."
 
@@ -2541,7 +2590,8 @@ msgstr ""
 "(padrão: diretório atual)"
 
 #: gio/glib-compile-resources.c:823 gio/glib-compile-schemas.c:2173
-#: gio/glib-compile-schemas.c:2203
+#: gio/glib-compile-schemas.c:2203 girepository/compiler/compiler.c:147
+#: girepository/decompiler/decompiler.c:53
 msgid "DIRECTORY"
 msgstr "DIRETÓRIO"
 
@@ -2590,6 +2640,10 @@ msgstr ""
 msgid "C identifier name used for the generated source code"
 msgstr "Nome do identificador C usado no código-fonte gerado"
 
+#: gio/glib-compile-resources.c:833
+msgid "IDENTIFIER"
+msgstr "IDENTIFIER"
+
 #: gio/glib-compile-resources.c:834
 msgid "The target C compiler (default: the CC environment variable)"
 msgstr "O compilador C alvo (padrão: a variável de ambiente CC)"
@@ -3084,12 +3138,12 @@ msgid "No schema files found: removed existing output file."
 msgstr ""
 "Nenhum arquivo de schema encontrado: arquivo de saída existente removido."
 
-#: gio/glocalfile.c:567 gio/win32/gwinhttpfile.c:436
+#: gio/glocalfile.c:570 gio/win32/gwinhttpfile.c:436
 #, c-format
 msgid "Invalid filename %s"
 msgstr "Nome de arquivo inválido: %s"
 
-#: gio/glocalfile.c:1009
+#: gio/glocalfile.c:1012
 #, c-format
 msgid "Error getting filesystem info for %s: %s"
 msgstr "Erro ao obter informações do sistema de arquivos para %s: %s"
@@ -3098,127 +3152,127 @@ msgstr "Erro ao obter informações do sistema de arquivos para %s: %s"
 #. * the enclosing (user visible) mount of a file, but none
 #. * exists.
 #.
-#: gio/glocalfile.c:1145
+#: gio/glocalfile.c:1150
 #, c-format
 msgid "Containing mount for file %s not found"
 msgstr "Ponto de montagem contido para arquivo %s não existe"
 
-#: gio/glocalfile.c:1168
+#: gio/glocalfile.c:1173
 msgid "Can’t rename root directory"
 msgstr "Não é possível renomear o diretório root"
 
-#: gio/glocalfile.c:1186 gio/glocalfile.c:1209
+#: gio/glocalfile.c:1191 gio/glocalfile.c:1214
 #, c-format
 msgid "Error renaming file %s: %s"
 msgstr "Erro ao renomear arquivo %s: %s"
 
-#: gio/glocalfile.c:1193
+#: gio/glocalfile.c:1198
 msgid "Can’t rename file, filename already exists"
 msgstr "Não é possível renomear o arquivo, o nome do arquivo já existe"
 
-#: gio/glocalfile.c:1206 gio/glocalfile.c:2409 gio/glocalfile.c:2437
-#: gio/glocalfile.c:2576 gio/glocalfileoutputstream.c:658
+#: gio/glocalfile.c:1211 gio/glocalfile.c:2414 gio/glocalfile.c:2442
+#: gio/glocalfile.c:2581 gio/glocalfileoutputstream.c:658
 msgid "Invalid filename"
 msgstr "Nome de arquivo inválido"
 
-#: gio/glocalfile.c:1374 gio/glocalfile.c:1385
+#: gio/glocalfile.c:1379 gio/glocalfile.c:1390
 #, c-format
 msgid "Error opening file %s: %s"
 msgstr "Erro ao abrir arquivo %s: %s"
 
-#: gio/glocalfile.c:1510
+#: gio/glocalfile.c:1515
 #, c-format
 msgid "Error removing file %s: %s"
 msgstr "Erro ao remover arquivo %s: %s"
 
-#: gio/glocalfile.c:2004 gio/glocalfile.c:2015 gio/glocalfile.c:2042
+#: gio/glocalfile.c:2009 gio/glocalfile.c:2020 gio/glocalfile.c:2047
 #, c-format
 msgid "Error trashing file %s: %s"
 msgstr "Erro ao mover para a lixeira o arquivo %s: %s"
 
-#: gio/glocalfile.c:2062
+#: gio/glocalfile.c:2067
 #, c-format
 msgid "Unable to create trash directory %s: %s"
 msgstr "Não é possível criar o diretório da lixeira %s: %s"
 
-#: gio/glocalfile.c:2083
+#: gio/glocalfile.c:2088
 #, c-format
 msgid "Unable to find toplevel directory to trash %s"
 msgstr "Não é possível localizar diretório de nível superior para a lixeira %s"
 
-#: gio/glocalfile.c:2091
+#: gio/glocalfile.c:2096
 #, c-format
 msgid "Trashing on system internal mounts is not supported"
 msgstr "Não há suporte a mover para lixeira em montagens internas do sistema"
 
-#: gio/glocalfile.c:2177 gio/glocalfile.c:2205
+#: gio/glocalfile.c:2182 gio/glocalfile.c:2210
 #, c-format
 msgid "Unable to find or create trash directory %s to trash %s"
 msgstr ""
 "Não é possível localizar ou criar o diretório da lixeira %s para a lixeira %s"
 
-#: gio/glocalfile.c:2249
+#: gio/glocalfile.c:2254
 #, c-format
 msgid "Unable to create trashing info file for %s: %s"
 msgstr "Não é possível criar o arquivo de informações da lixeira para %s: %s"
 
-#: gio/glocalfile.c:2320
+#: gio/glocalfile.c:2325
 #, c-format
 msgid "Unable to trash file %s across filesystem boundaries"
 msgstr ""
 "Não é possível mover para a lixeira o arquivo %s entre os limites de sistema "
 "de arquivos"
 
-#: gio/glocalfile.c:2324 gio/glocalfile.c:2380
+#: gio/glocalfile.c:2329 gio/glocalfile.c:2385
 #, c-format
 msgid "Unable to trash file %s: %s"
 msgstr "Não é possível mover para a lixeira o arquivo %s: %s"
 
-#: gio/glocalfile.c:2386
+#: gio/glocalfile.c:2391
 #, c-format
 msgid "Unable to trash file %s"
 msgstr "Não é possível mover para a lixeira o arquivo %s"
 
-#: gio/glocalfile.c:2412
+#: gio/glocalfile.c:2417
 #, c-format
 msgid "Error creating directory %s: %s"
 msgstr "Erro ao criar o diretório %s: %s"
 
-#: gio/glocalfile.c:2441
+#: gio/glocalfile.c:2446
 #, c-format
 msgid "Filesystem does not support symbolic links"
 msgstr "O sistema de arquivos não tem suporte a links simbólicos"
 
-#: gio/glocalfile.c:2444
+#: gio/glocalfile.c:2449
 #, c-format
 msgid "Error making symbolic link %s: %s"
 msgstr "Erro ao criar link simbólico %s: %s"
 
-#: gio/glocalfile.c:2487 gio/glocalfile.c:2522 gio/glocalfile.c:2579
+#: gio/glocalfile.c:2492 gio/glocalfile.c:2527 gio/glocalfile.c:2584
 #, c-format
 msgid "Error moving file %s: %s"
 msgstr "Erro ao mover arquivo %s: %s"
 
-#: gio/glocalfile.c:2510
+#: gio/glocalfile.c:2515
 msgid "Can’t move directory over directory"
 msgstr "Não é possível mover diretório sobre diretório"
 
-#: gio/glocalfile.c:2536 gio/glocalfileoutputstream.c:1110
+#: gio/glocalfile.c:2541 gio/glocalfileoutputstream.c:1110
 #: gio/glocalfileoutputstream.c:1124 gio/glocalfileoutputstream.c:1139
 #: gio/glocalfileoutputstream.c:1156 gio/glocalfileoutputstream.c:1170
 msgid "Backup file creation failed"
 msgstr "Falha ao criar arquivo de backup"
 
-#: gio/glocalfile.c:2555
+#: gio/glocalfile.c:2560
 #, c-format
 msgid "Error removing target file: %s"
 msgstr "Erro ao remover arquivo alvo: %s"
 
-#: gio/glocalfile.c:2569
+#: gio/glocalfile.c:2574
 msgid "Move between mounts not supported"
 msgstr "Não há suporte a mover entre montagens"
 
-#: gio/glocalfile.c:2745
+#: gio/glocalfile.c:2750
 #, c-format
 msgid "Could not determine the disk usage of %s: %s"
 msgstr "Não foi possível determinar a utilização de disco de %s: %s"
@@ -3240,120 +3294,120 @@ msgstr "Nome de atributo estendido inválido"
 msgid "Error setting extended attribute “%s”: %s"
 msgstr "Erro ao definir atributo estendido “%s”: %s"
 
-#: gio/glocalfileinfo.c:1785 gio/win32/gwinhttpfile.c:191
+#: gio/glocalfileinfo.c:1789 gio/win32/gwinhttpfile.c:191
 msgid " (invalid encoding)"
 msgstr " (codificação inválida)"
 
-#: gio/glocalfileinfo.c:1944 gio/glocalfileoutputstream.c:945
+#: gio/glocalfileinfo.c:1948 gio/glocalfileoutputstream.c:945
 #: gio/glocalfileoutputstream.c:997
 #, c-format
 msgid "Error when getting information for file “%s”: %s"
 msgstr "Erro ao obter informação para o arquivo “%s”: %s"
 
-#: gio/glocalfileinfo.c:2250
+#: gio/glocalfileinfo.c:2254
 #, c-format
 msgid "Error when getting information for file descriptor: %s"
 msgstr "Erro ao obter informação para o descritor de arquivo: %s"
 
-#: gio/glocalfileinfo.c:2295
+#: gio/glocalfileinfo.c:2299
 msgid "Invalid attribute type (uint32 expected)"
 msgstr "Tipo de atributo inválido (esperado uint32)"
 
-#: gio/glocalfileinfo.c:2313
+#: gio/glocalfileinfo.c:2317
 msgid "Invalid attribute type (uint64 expected)"
 msgstr "Tipo de atributo inválido (esperado uint64)"
 
-#: gio/glocalfileinfo.c:2332 gio/glocalfileinfo.c:2351
+#: gio/glocalfileinfo.c:2336 gio/glocalfileinfo.c:2355
 msgid "Invalid attribute type (byte string expected)"
 msgstr "Tipo de atributo inválido (expressão de byte esperada)"
 
-#: gio/glocalfileinfo.c:2398
+#: gio/glocalfileinfo.c:2402
 msgid "Cannot set permissions on symlinks"
 msgstr "Não foi possível definir permissões aos links simbólicos"
 
-#: gio/glocalfileinfo.c:2414
+#: gio/glocalfileinfo.c:2418
 #, c-format
 msgid "Error setting permissions: %s"
 msgstr "Erro ao definir permissões: %s"
 
-#: gio/glocalfileinfo.c:2465
+#: gio/glocalfileinfo.c:2469
 #, c-format
 msgid "Error setting owner: %s"
 msgstr "Erro ao definir proprietário: %s"
 
-#: gio/glocalfileinfo.c:2488
+#: gio/glocalfileinfo.c:2492
 msgid "symlink must be non-NULL"
 msgstr "o link simbólico deve ser não-NULO"
 
-#: gio/glocalfileinfo.c:2498 gio/glocalfileinfo.c:2517
-#: gio/glocalfileinfo.c:2528
+#: gio/glocalfileinfo.c:2502 gio/glocalfileinfo.c:2521
+#: gio/glocalfileinfo.c:2532
 #, c-format
 msgid "Error setting symlink: %s"
 msgstr "Erro ao definir link simbólico: %s"
 
-#: gio/glocalfileinfo.c:2507
+#: gio/glocalfileinfo.c:2511
 msgid "Error setting symlink: file is not a symlink"
 msgstr "Erro ao definir link simbólico: o arquivo não é um link simbólico"
 
-#: gio/glocalfileinfo.c:2599
+#: gio/glocalfileinfo.c:2603
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld are negative"
 msgstr ""
 "Os nanossegundos extras %d para a marca de data/hora UNIX %lld são negativos"
 
-#: gio/glocalfileinfo.c:2608
+#: gio/glocalfileinfo.c:2612
 #, c-format
 msgid "Extra nanoseconds %d for UNIX timestamp %lld reach 1 second"
 msgstr ""
 "Os nanossegundos extras %d para a marca de data/hora UNIX %lld alcança 1 "
 "segundo"
 
-#: gio/glocalfileinfo.c:2618
+#: gio/glocalfileinfo.c:2622
 #, c-format
 msgid "UNIX timestamp %lld does not fit into 64 bits"
 msgstr "A marca de data/hora UNIX %lld não cabe em 64 bits"
 
-#: gio/glocalfileinfo.c:2629
+#: gio/glocalfileinfo.c:2633
 #, c-format
 msgid "UNIX timestamp %lld is outside of the range supported by Windows"
 msgstr ""
 "A marca de data/hora UNIX %lld está fora do intervalo suportado pelo Windows"
 
-#: gio/glocalfileinfo.c:2761
+#: gio/glocalfileinfo.c:2765
 #, c-format
 msgid "File name “%s” cannot be converted to UTF-16"
 msgstr "O nome de arquivo “%s” não pode ser convertido para UTF-16"
 
-#: gio/glocalfileinfo.c:2780
+#: gio/glocalfileinfo.c:2784
 #, c-format
 msgid "File “%s” cannot be opened: Windows Error %lu"
 msgstr "O arquivo “%s” não pôde ser aberto: Erro %lu do Windows"
 
-#: gio/glocalfileinfo.c:2793
+#: gio/glocalfileinfo.c:2797
 #, c-format
 msgid "Error setting modification or access time for file “%s”: %lu"
 msgstr ""
 "Erro ao definir data/hora de modificação ou acesso para o arquivo “%s”: %lu"
 
-#: gio/glocalfileinfo.c:2950
+#: gio/glocalfileinfo.c:2974
 #, c-format
 msgid "Error setting modification or access time: %s"
 msgstr "Erro ao definir data/hora de modificação ou acesso: %s"
 
-#: gio/glocalfileinfo.c:2973
+#: gio/glocalfileinfo.c:2997
 msgid "SELinux context must be non-NULL"
 msgstr "O contexto SELinux deve ser não-NULO"
 
-#: gio/glocalfileinfo.c:2980
+#: gio/glocalfileinfo.c:3004
 msgid "SELinux is not enabled on this system"
 msgstr "SELinux não está habilitado neste sistema"
 
-#: gio/glocalfileinfo.c:2990
+#: gio/glocalfileinfo.c:3014
 #, c-format
 msgid "Error setting SELinux context: %s"
 msgstr "Erro ao definir o contexto SELinux: %s"
 
-#: gio/glocalfileinfo.c:3087
+#: gio/glocalfileinfo.c:3111
 #, c-format
 msgid "Setting attribute %s not supported"
 msgstr "Não há suporte à definição do atributo %s"
@@ -3406,7 +3460,7 @@ msgid "Error truncating file: %s"
 msgstr "Erro ao truncar arquivo: %s"
 
 #: gio/glocalfileoutputstream.c:664 gio/glocalfileoutputstream.c:909
-#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:231
+#: gio/glocalfileoutputstream.c:1223 gio/gsubprocess.c:227
 #, c-format
 msgid "Error opening file “%s”: %s"
 msgstr "Erro ao abrir arquivo “%s”: %s"
@@ -3428,27 +3482,27 @@ msgstr "O arquivo foi modificado externamente"
 msgid "Error removing old file: %s"
 msgstr "Erro ao remover arquivo antigo: %s"
 
-#: gio/gmemoryinputstream.c:476 gio/gmemoryoutputstream.c:764
+#: gio/gmemoryinputstream.c:473 gio/gmemoryoutputstream.c:751
 msgid "Invalid GSeekType supplied"
 msgstr "GSeekType fornecido inválido"
 
-#: gio/gmemoryinputstream.c:486
+#: gio/gmemoryinputstream.c:483
 msgid "Invalid seek request"
 msgstr "Solicitação de busca inválida"
 
-#: gio/gmemoryinputstream.c:510
+#: gio/gmemoryinputstream.c:507
 msgid "Cannot truncate GMemoryInputStream"
 msgstr "Não é possível truncar GMemoryInputStream"
 
-#: gio/gmemoryoutputstream.c:570
+#: gio/gmemoryoutputstream.c:557
 msgid "Memory output stream not resizable"
 msgstr "Fluxo de saída da memória não redimensionável"
 
-#: gio/gmemoryoutputstream.c:586
+#: gio/gmemoryoutputstream.c:573
 msgid "Failed to resize memory output stream"
 msgstr "Falha ao redimensionar fluxo de saída da memória"
 
-#: gio/gmemoryoutputstream.c:665
+#: gio/gmemoryoutputstream.c:652
 msgid ""
 "Amount of memory required to process the write is larger than available "
 "address space"
@@ -3456,32 +3510,32 @@ msgstr ""
 "Quantidade de memória necessária para processar a escrita é maior que a "
 "disponível"
 
-#: gio/gmemoryoutputstream.c:774
+#: gio/gmemoryoutputstream.c:761
 msgid "Requested seek before the beginning of the stream"
 msgstr "Solicitada uma busca antes do começo do fluxo"
 
-#: gio/gmemoryoutputstream.c:789
+#: gio/gmemoryoutputstream.c:776
 msgid "Requested seek beyond the end of the stream"
 msgstr "Solicitada uma busca além do fim do fluxo"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement unmount.
-#: gio/gmount.c:401
+#: gio/gmount.c:400
 msgid "mount doesn’t implement “unmount”"
 msgstr "objeto de montagem não implementa “umount”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement eject.
-#: gio/gmount.c:477
+#: gio/gmount.c:476
 msgid "mount doesn’t implement “eject”"
 msgstr "objeto de montagem não implementa “eject”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of unmount or unmount_with_operation.
-#: gio/gmount.c:555
+#: gio/gmount.c:554
 msgid "mount doesn’t implement “unmount” or “unmount_with_operation”"
 msgstr ""
 "objeto de montagem não implementa “unmount” ou “unmount_with_operation”"
@@ -3489,42 +3543,42 @@ msgstr ""
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gmount.c:640
+#: gio/gmount.c:639
 msgid "mount doesn’t implement “eject” or “eject_with_operation”"
 msgstr "objeto de montagem não implementa “eject” ou “eject_with_operation”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement remount.
-#: gio/gmount.c:728
+#: gio/gmount.c:727
 msgid "mount doesn’t implement “remount”"
 msgstr "objeto de montagem não implementa “remount”"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:810
+#: gio/gmount.c:809
 msgid "mount doesn’t implement content type guessing"
 msgstr "objeto de montagem não implementa estimativa de tipo de conteúdo"
 
 #. Translators: This is an error
 #. * message for mount objects that
 #. * don't implement content type guessing.
-#: gio/gmount.c:897
+#: gio/gmount.c:896
 msgid "mount doesn’t implement synchronous content type guessing"
 msgstr ""
 "objeto de montagem não implementa estimativa de tipo de conteúdo síncrono"
 
-#: gio/gnetworkaddress.c:417
+#: gio/gnetworkaddress.c:424
 #, c-format
 msgid "Hostname “%s” contains “[” but not “]”"
 msgstr "Nome da máquina “%s” contém “[” mas não “]”"
 
-#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:325
+#: gio/gnetworkmonitorbase.c:221 gio/gnetworkmonitorbase.c:326
 msgid "Network unreachable"
 msgstr "Rede inalcançável"
 
-#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:289
+#: gio/gnetworkmonitorbase.c:259 gio/gnetworkmonitorbase.c:290
 msgid "Host unreachable"
 msgstr "Máquina inalcançável"
 
@@ -3552,51 +3606,51 @@ msgstr "O NetworkManager não está em execução"
 msgid "NetworkManager version too old"
 msgstr "A versão do NetworkManager é muito antiga"
 
-#: gio/goutputstream.c:234 gio/goutputstream.c:777
+#: gio/goutputstream.c:236 gio/goutputstream.c:777
 msgid "Output stream doesn’t implement write"
 msgstr "Fluxo de saída não implementa escrita"
 
-#: gio/goutputstream.c:474 gio/goutputstream.c:1535
+#: gio/goutputstream.c:474 gio/goutputstream.c:1539
 #, c-format
 msgid "Sum of vectors passed to %s too large"
 msgstr "A soma dos vetores passada para %s é grande demais"
 
-#: gio/goutputstream.c:738 gio/goutputstream.c:1763
+#: gio/goutputstream.c:738 gio/goutputstream.c:1769
 msgid "Source stream is already closed"
 msgstr "A fonte do fluxo já está fechada"
 
-#: gio/gproxyaddressenumerator.c:324 gio/gproxyaddressenumerator.c:342
+#: gio/gproxyaddressenumerator.c:328 gio/gproxyaddressenumerator.c:348
 msgid "Unspecified proxy lookup failure"
 msgstr "Falha não especificada na pesquisa de proxy"
 
 #. Translators: the first placeholder is a domain name, the
 #. * second is an error message
-#: gio/gresolver.c:403 gio/gthreadedresolver.c:152 gio/gthreadedresolver.c:170
-#: gio/gthreadedresolver.c:798 gio/gthreadedresolver.c:822
-#: gio/gthreadedresolver.c:847 gio/gthreadedresolver.c:862
+#: gio/gresolver.c:472 gio/gthreadedresolver.c:318 gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 #, c-format
 msgid "Error resolving “%s”: %s"
 msgstr "Erro ao resolver “%s”: %s"
 
 #. Translators: The placeholder is for a function name.
-#: gio/gresolver.c:472 gio/gresolver.c:632
+#: gio/gresolver.c:541 gio/gresolver.c:701
 #, c-format
 msgid "%s not implemented"
 msgstr "%s não implementado"
 
-#: gio/gresolver.c:1001 gio/gresolver.c:1053
+#: gio/gresolver.c:1070 gio/gresolver.c:1122
 msgid "Invalid domain"
 msgstr "Domínio inválido"
 
-#: gio/gresource.c:683 gio/gresource.c:945 gio/gresource.c:985
-#: gio/gresource.c:1109 gio/gresource.c:1181 gio/gresource.c:1255
-#: gio/gresource.c:1336 gio/gresourcefile.c:482 gio/gresourcefile.c:606
+#: gio/gresource.c:706 gio/gresource.c:968 gio/gresource.c:1008
+#: gio/gresource.c:1132 gio/gresource.c:1204 gio/gresource.c:1278
+#: gio/gresource.c:1359 gio/gresourcefile.c:482 gio/gresourcefile.c:606
 #: gio/gresourcefile.c:757
 #, c-format
 msgid "The resource at “%s” does not exist"
 msgstr "O recurso em “%s” não existe"
 
-#: gio/gresource.c:850
+#: gio/gresource.c:873
 #, c-format
 msgid "The resource at “%s” failed to decompress"
 msgstr "Falha ao descompactar o recurso em “%s”"
@@ -3614,11 +3668,11 @@ msgstr "O recurso em “%s” não é um diretório"
 msgid "Input stream doesn’t implement seek"
 msgstr "Fluxo de entrada não implementa busca"
 
-#: gio/gresource-tool.c:502
+#: gio/gresource-tool.c:503
 msgid "List sections containing resources in an elf FILE"
 msgstr "Lista as seções contendo recursos no arquivo elf ARQUIVO"
 
-#: gio/gresource-tool.c:508
+#: gio/gresource-tool.c:509
 msgid ""
 "List resources\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3628,15 +3682,15 @@ msgstr ""
 "Se SEÇÃO é fornecida, só lista os recursos dentro desta seção\n"
 "Se CAMINHO é fornecido, só lista recursos que casam com o caminho"
 
-#: gio/gresource-tool.c:511 gio/gresource-tool.c:521
+#: gio/gresource-tool.c:512 gio/gresource-tool.c:522
 msgid "FILE [PATH]"
 msgstr "ARQUIVO [CAMINHO]"
 
-#: gio/gresource-tool.c:512 gio/gresource-tool.c:522 gio/gresource-tool.c:529
+#: gio/gresource-tool.c:513 gio/gresource-tool.c:523 gio/gresource-tool.c:530
 msgid "SECTION"
 msgstr "SEÇÃO"
 
-#: gio/gresource-tool.c:517
+#: gio/gresource-tool.c:518
 msgid ""
 "List resources with details\n"
 "If SECTION is given, only list resources in this section\n"
@@ -3648,15 +3702,15 @@ msgstr ""
 "Se CAMINHO é fornecido, só lista recursos que casam com o caminho\n"
 "Detalhes incluem a seção, tamanho e compactação"
 
-#: gio/gresource-tool.c:527
+#: gio/gresource-tool.c:528
 msgid "Extract a resource file to stdout"
 msgstr "Extrai um arquivo de recurso para a saída padrão"
 
-#: gio/gresource-tool.c:528
+#: gio/gresource-tool.c:529
 msgid "FILE PATH"
 msgstr "ARQUIVO CAMINHO"
 
-#: gio/gresource-tool.c:542
+#: gio/gresource-tool.c:543
 msgid ""
 "Usage:\n"
 "  gresource [--section SECTION] COMMAND [ARGS…]\n"
@@ -3684,7 +3738,7 @@ msgstr ""
 "Use “gresource help COMANDO” para obter uma ajuda detalhada.\n"
 "\n"
 
-#: gio/gresource-tool.c:556
+#: gio/gresource-tool.c:557
 #, c-format
 msgid ""
 "Usage:\n"
@@ -3699,19 +3753,19 @@ msgstr ""
 "%s\n"
 "\n"
 
-#: gio/gresource-tool.c:563
+#: gio/gresource-tool.c:564
 msgid "  SECTION   An (optional) elf section name\n"
 msgstr "  SEÇÃO     Um nome de seção elf (opcional)\n"
 
-#: gio/gresource-tool.c:567 gio/gsettings-tool.c:720
+#: gio/gresource-tool.c:568 gio/gsettings-tool.c:720
 msgid "  COMMAND   The (optional) command to explain\n"
 msgstr "  COMANDO   O comando a ser explicado (opcional)\n"
 
-#: gio/gresource-tool.c:573
+#: gio/gresource-tool.c:574
 msgid "  FILE      An elf file (a binary or a shared library)\n"
 msgstr "  ARQUIVO    Um arquivo elf (binário ou biblioteca compartilhada)\n"
 
-#: gio/gresource-tool.c:576
+#: gio/gresource-tool.c:577
 msgid ""
 "  FILE      An elf file (a binary or a shared library)\n"
 "            or a compiled resource file\n"
@@ -3719,19 +3773,19 @@ msgstr ""
 "  ARQUIVO   Um arquivo elf (binário ou biblioteca compartilhada)\n"
 "            ou um arquivo de recurso compilado\n"
 
-#: gio/gresource-tool.c:580
+#: gio/gresource-tool.c:581
 msgid "[PATH]"
 msgstr "[CAMINHO]"
 
-#: gio/gresource-tool.c:582
+#: gio/gresource-tool.c:583
 msgid "  PATH      An (optional) resource path (may be partial)\n"
 msgstr "  CAMINHO   Um caminho (opcional) do recurso (pode ser parcial)\n"
 
-#: gio/gresource-tool.c:583
+#: gio/gresource-tool.c:584
 msgid "PATH"
 msgstr "CAMINHO"
 
-#: gio/gresource-tool.c:585
+#: gio/gresource-tool.c:586
 msgid "  PATH      A resource path\n"
 msgstr "  CAMINHO   Um caminho do recurso\n"
 
@@ -3963,215 +4017,216 @@ msgstr "Nome de esquema vazio\n"
 msgid "No such key “%s”\n"
 msgstr "Nenhuma chave “%s”\n"
 
-#: gio/gsocket.c:419
+#: gio/gsocket.c:435
 msgid "Invalid socket, not initialized"
 msgstr "Soquete inválido, não inicializado"
 
-#: gio/gsocket.c:426
+#: gio/gsocket.c:442
 #, c-format
 msgid "Invalid socket, initialization failed due to: %s"
 msgstr "Soquete inválido, inicialização falhou devido a: %s"
 
-#: gio/gsocket.c:434
+#: gio/gsocket.c:450
 msgid "Socket is already closed"
 msgstr "O soquete já está fechado"
 
-#: gio/gsocket.c:449 gio/gsocket.c:3225 gio/gsocket.c:4458 gio/gsocket.c:4516
+#: gio/gsocket.c:465 gio/gsocket.c:3291 gio/gsocket.c:4664 gio/gsocket.c:4722
+#: gio/gthreadedresolver.c:1454
 msgid "Socket I/O timed out"
 msgstr "Tempo de E/S do soquete foi esgotado"
 
-#: gio/gsocket.c:586
+#: gio/gsocket.c:602
 #, c-format
 msgid "creating GSocket from fd: %s"
 msgstr "criando GSocket a partir do fd: %s"
 
-#: gio/gsocket.c:615 gio/gsocket.c:679 gio/gsocket.c:686
+#: gio/gsocket.c:662 gio/gsocket.c:730 gio/gsocket.c:737
 #, c-format
 msgid "Unable to create socket: %s"
 msgstr "Não é possível criar soquete: %s"
 
-#: gio/gsocket.c:679
+#: gio/gsocket.c:730
 msgid "Unknown family was specified"
 msgstr "Foi especificada uma família desconhecida"
 
-#: gio/gsocket.c:686
+#: gio/gsocket.c:737
 msgid "Unknown protocol was specified"
 msgstr "Foi especificado um protocolo desconhecido"
 
-#: gio/gsocket.c:1177
+#: gio/gsocket.c:1243
 #, c-format
 msgid "Cannot use datagram operations on a non-datagram socket."
 msgstr ""
 "Não foi possível usar operações de datagrama em um soquete não-datagrama."
 
-#: gio/gsocket.c:1194
+#: gio/gsocket.c:1260
 #, c-format
 msgid "Cannot use datagram operations on a socket with a timeout set."
 msgstr ""
 "Não foi possível usar operações de datagrama em um soquete com um tempo "
 "limite definido."
 
-#: gio/gsocket.c:2001
+#: gio/gsocket.c:2067
 #, c-format
 msgid "could not get local address: %s"
 msgstr "não foi possível obter endereço local: %s"
 
-#: gio/gsocket.c:2047
+#: gio/gsocket.c:2113
 #, c-format
 msgid "could not get remote address: %s"
 msgstr "não foi possível obter endereço remoto: %s"
 
-#: gio/gsocket.c:2113
+#: gio/gsocket.c:2179
 #, c-format
 msgid "could not listen: %s"
 msgstr "não foi possível escutar: %s"
 
-#: gio/gsocket.c:2217
+#: gio/gsocket.c:2283
 #, c-format
 msgid "Error binding to address %s: %s"
 msgstr "Erro ao vincular ao endereço %s: %s"
 
-#: gio/gsocket.c:2392 gio/gsocket.c:2429 gio/gsocket.c:2539 gio/gsocket.c:2564
-#: gio/gsocket.c:2631 gio/gsocket.c:2689 gio/gsocket.c:2707
+#: gio/gsocket.c:2458 gio/gsocket.c:2495 gio/gsocket.c:2605 gio/gsocket.c:2630
+#: gio/gsocket.c:2697 gio/gsocket.c:2755 gio/gsocket.c:2773
 #, c-format
 msgid "Error joining multicast group: %s"
 msgstr "Erro ao entrar no grupo multicast: %s"
 
-#: gio/gsocket.c:2393 gio/gsocket.c:2430 gio/gsocket.c:2540 gio/gsocket.c:2565
-#: gio/gsocket.c:2632 gio/gsocket.c:2690 gio/gsocket.c:2708
+#: gio/gsocket.c:2459 gio/gsocket.c:2496 gio/gsocket.c:2606 gio/gsocket.c:2631
+#: gio/gsocket.c:2698 gio/gsocket.c:2756 gio/gsocket.c:2774
 #, c-format
 msgid "Error leaving multicast group: %s"
 msgstr "Erro ao sair do grupo multicast: %s"
 
-#: gio/gsocket.c:2394
+#: gio/gsocket.c:2460
 msgid "No support for source-specific multicast"
 msgstr "Não há suporte para multicast específico da origem"
 
-#: gio/gsocket.c:2541
+#: gio/gsocket.c:2607
 msgid "Unsupported socket family"
 msgstr "Família de soquete sem suporte"
 
-#: gio/gsocket.c:2566
+#: gio/gsocket.c:2632
 msgid "source-specific not an IPv4 address"
 msgstr "a origem específica não é um endereço IPv4"
 
-#: gio/gsocket.c:2590
+#: gio/gsocket.c:2656
 #, c-format
 msgid "Interface name too long"
 msgstr "Nome de interface grande demais"
 
-#: gio/gsocket.c:2603 gio/gsocket.c:2657
+#: gio/gsocket.c:2669 gio/gsocket.c:2723
 #, c-format
 msgid "Interface not found: %s"
 msgstr "Interface não localizada: %s"
 
-#: gio/gsocket.c:2633
+#: gio/gsocket.c:2699
 msgid "No support for IPv4 source-specific multicast"
 msgstr "Não há suporte para multicast específico da origem IPv4"
 
-#: gio/gsocket.c:2691
+#: gio/gsocket.c:2757
 msgid "No support for IPv6 source-specific multicast"
 msgstr "Não há suporte para multicast específico da origem IPv6"
 
-#: gio/gsocket.c:2924
+#: gio/gsocket.c:2990
 #, c-format
 msgid "Error accepting connection: %s"
 msgstr "Erro ao aceitar a conexão: %s"
 
-#: gio/gsocket.c:3050
+#: gio/gsocket.c:3116
 msgid "Connection in progress"
 msgstr "Conexão em progresso"
 
-#: gio/gsocket.c:3101
+#: gio/gsocket.c:3167
 msgid "Unable to get pending error: "
 msgstr "Não é possível obter erro pendente: "
 
-#: gio/gsocket.c:3290
+#: gio/gsocket.c:3356
 #, c-format
 msgid "Error receiving data: %s"
 msgstr "Erro ao receber dados: %s"
 
-#: gio/gsocket.c:3487
+#: gio/gsocket.c:3695
 #, c-format
 msgid "Error sending data: %s"
 msgstr "Erro ao enviar dados: %s"
 
-#: gio/gsocket.c:3674
+#: gio/gsocket.c:3882
 #, c-format
 msgid "Unable to shutdown socket: %s"
 msgstr "Não é possível encerrar soquete: %s"
 
-#: gio/gsocket.c:3755
+#: gio/gsocket.c:3963
 #, c-format
 msgid "Error closing socket: %s"
 msgstr "Erro ao fechar soquete: %s"
 
-#: gio/gsocket.c:4451
+#: gio/gsocket.c:4657
 #, c-format
 msgid "Waiting for socket condition: %s"
 msgstr "Aguardando pela condição do soquete: %s"
 
-#: gio/gsocket.c:4841 gio/gsocket.c:4857 gio/gsocket.c:4870
+#: gio/gsocket.c:5047 gio/gsocket.c:5063 gio/gsocket.c:5076
 #, c-format
 msgid "Unable to send message: %s"
 msgstr "Não foi possível enviar mensagem: %s"
 
-#: gio/gsocket.c:4842 gio/gsocket.c:4858 gio/gsocket.c:4871
+#: gio/gsocket.c:5048 gio/gsocket.c:5064 gio/gsocket.c:5077
 msgid "Message vectors too large"
 msgstr "Vetores da mensagem muito grandes"
 
-#: gio/gsocket.c:4887 gio/gsocket.c:4889 gio/gsocket.c:5036 gio/gsocket.c:5121
-#: gio/gsocket.c:5299 gio/gsocket.c:5339 gio/gsocket.c:5341
+#: gio/gsocket.c:5093 gio/gsocket.c:5095 gio/gsocket.c:5242 gio/gsocket.c:5327
+#: gio/gsocket.c:5505 gio/gsocket.c:5545 gio/gsocket.c:5547
 #, c-format
 msgid "Error sending message: %s"
 msgstr "Erro ao enviar mensagem: %s"
 
-#: gio/gsocket.c:5063
+#: gio/gsocket.c:5269
 msgid "GSocketControlMessage not supported on Windows"
 msgstr "Não há suporte a GSocketControlMessage no Windows"
 
-#: gio/gsocket.c:5536 gio/gsocket.c:5612 gio/gsocket.c:5838
+#: gio/gsocket.c:5742 gio/gsocket.c:5818 gio/gsocket.c:6044
 #, c-format
 msgid "Error receiving message: %s"
 msgstr "Erro ao receber mensagem: %s"
 
-#: gio/gsocket.c:6123 gio/gsocket.c:6134 gio/gsocket.c:6197
+#: gio/gsocket.c:6329 gio/gsocket.c:6340 gio/gsocket.c:6403
 #, c-format
 msgid "Unable to read socket credentials: %s"
 msgstr "Não é possível ler as credenciais do soquete: %s"
 
-#: gio/gsocket.c:6206
+#: gio/gsocket.c:6412
 msgid "g_socket_get_credentials not implemented for this OS"
 msgstr "g_socket_get_credentials não está implementado para este SO"
 
-#: gio/gsocketclient.c:193
+#: gio/gsocketclient.c:192
 #, c-format
 msgid "Could not connect to proxy server %s: "
 msgstr "Não foi possível conectar-se ao servidor proxy %s: "
 
-#: gio/gsocketclient.c:207
+#: gio/gsocketclient.c:206
 #, c-format
 msgid "Could not connect to %s: "
 msgstr "Não foi possível conectar-se a %s: "
 
-#: gio/gsocketclient.c:209
+#: gio/gsocketclient.c:208
 msgid "Could not connect: "
 msgstr "Não foi possível conectar: "
 
-#: gio/gsocketclient.c:1204 gio/gsocketclient.c:1807
+#: gio/gsocketclient.c:1234 gio/gsocketclient.c:1851
 msgid "Proxying over a non-TCP connection is not supported."
 msgstr "Não há suporte ao uso de proxy sobre uma conexão não TCP."
 
-#: gio/gsocketclient.c:1236 gio/gsocketclient.c:1836
+#: gio/gsocketclient.c:1266 gio/gsocketclient.c:1886
 #, c-format
 msgid "Proxy protocol “%s” is not supported."
 msgstr "Não há suporte ao protocolo de proxy “%s”."
 
-#: gio/gsocketlistener.c:232
+#: gio/gsocketlistener.c:235
 msgid "Listener is already closed"
 msgstr "O ouvinte já está fechado"
 
-#: gio/gsocketlistener.c:278
+#: gio/gsocketlistener.c:281
 msgid "Added socket is closed"
 msgstr "O soquete adicionado está fechado"
 
@@ -4262,95 +4317,95 @@ msgstr "Proxy SOCKSv5 sem suporte ao tipo de endereço fornecido."
 msgid "Unknown SOCKSv5 proxy error."
 msgstr "Erro de proxy SOCKSv5 desconhecido."
 
-#: gio/gtestdbus.c:615 glib/gspawn-win32.c:354
+#: gio/gtestdbus.c:608 glib/gspawn-win32.c:433
 #, c-format
 msgid "Failed to create pipe for communicating with child process (%s)"
 msgstr "Falha ao criar canal para comunicar com processo filho (%s)"
 
-#: gio/gtestdbus.c:622
+#: gio/gtestdbus.c:615
 #, c-format
 msgid "Pipes are not supported in this platform"
 msgstr "Não há suporte a canais nesta plataforma"
 
-#: gio/gthemedicon.c:597
+#: gio/gthemedicon.c:590
 #, c-format
 msgid "Can’t handle version %d of GThemedIcon encoding"
 msgstr "Não é possível lidar com a versão %d da codificação GThemedIcon"
 
-#: gio/gthreadedresolver.c:154
+#: gio/gthreadedresolver.c:320
 msgid "No valid addresses were found"
 msgstr "Nenhum endereço válido foi localizado"
 
-#: gio/gthreadedresolver.c:339
+#: gio/gthreadedresolver.c:515
 #, c-format
 msgid "Error reverse-resolving “%s”: %s"
 msgstr "Erro ao resolver reversalmente “%s”: %s"
 
 #. Translators: the placeholder is a DNS record type, such as ‘MX’ or ‘SRV’
-#: gio/gthreadedresolver.c:552 gio/gthreadedresolver.c:574
-#: gio/gthreadedresolver.c:628 gio/gthreadedresolver.c:675
-#: gio/gthreadedresolver.c:704 gio/gthreadedresolver.c:716
+#: gio/gthreadedresolver.c:738 gio/gthreadedresolver.c:760
+#: gio/gthreadedresolver.c:814 gio/gthreadedresolver.c:861
+#: gio/gthreadedresolver.c:890 gio/gthreadedresolver.c:902
 #, c-format
 msgid "Error parsing DNS %s record: malformed DNS packet"
 msgstr "Erro ao analisar registro %s do DNS: pacote DNS mal formado"
 
-#: gio/gthreadedresolver.c:774 gio/gthreadedresolver.c:911
-#: gio/gthreadedresolver.c:1009 gio/gthreadedresolver.c:1059
+#: gio/gthreadedresolver.c:960 gio/gthreadedresolver.c:1097
+#: gio/gthreadedresolver.c:1195 gio/gthreadedresolver.c:1245
 #, c-format
 msgid "No DNS record of the requested type for “%s”"
 msgstr "Nenhum registro DNS do tipo de requisição para “%s”"
 
-#: gio/gthreadedresolver.c:779 gio/gthreadedresolver.c:1014
+#: gio/gthreadedresolver.c:965 gio/gthreadedresolver.c:1200
 #, c-format
 msgid "Temporarily unable to resolve “%s”"
 msgstr "Temporariamente sem condições de resolver “%s”"
 
-#: gio/gthreadedresolver.c:784 gio/gthreadedresolver.c:1019
-#: gio/gthreadedresolver.c:1129
+#: gio/gthreadedresolver.c:970 gio/gthreadedresolver.c:1205
+#: gio/gthreadedresolver.c:1301
 #, c-format
 msgid "Error resolving “%s”"
 msgstr "Erro ao resolver “%s”"
 
-#: gio/gthreadedresolver.c:798 gio/gthreadedresolver.c:822
-#: gio/gthreadedresolver.c:847 gio/gthreadedresolver.c:862
+#: gio/gthreadedresolver.c:984 gio/gthreadedresolver.c:1008
+#: gio/gthreadedresolver.c:1033 gio/gthreadedresolver.c:1048
 msgid "Malformed DNS packet"
 msgstr "Pacote DNS mal formado"
 
-#: gio/gthreadedresolver.c:904
+#: gio/gthreadedresolver.c:1090
 #, c-format
 msgid "Failed to parse DNS response for “%s”: "
 msgstr "Falha ao analisar resposta DNS para “%s”: "
 
-#: gio/gtlscertificate.c:480
+#: gio/gtlscertificate.c:438
 msgid "No PEM-encoded private key found"
 msgstr "Chave privada codificada com PEM não localizada"
 
-#: gio/gtlscertificate.c:490
+#: gio/gtlscertificate.c:448
 msgid "Cannot decrypt PEM-encoded private key"
 msgstr "Não foi possível decodificar uma chave privada codificada com PEM"
 
-#: gio/gtlscertificate.c:501
+#: gio/gtlscertificate.c:459
 msgid "Could not parse PEM-encoded private key"
 msgstr "Não foi possível analisar chave privada codificada com PEM"
 
-#: gio/gtlscertificate.c:528
+#: gio/gtlscertificate.c:486
 msgid "No PEM-encoded certificate found"
 msgstr "Certificado codificado com PEM não localizado"
 
-#: gio/gtlscertificate.c:537
+#: gio/gtlscertificate.c:495
 msgid "Could not parse PEM-encoded certificate"
 msgstr "Não foi possível analisar certificado codificado com PEM"
 
-#: gio/gtlscertificate.c:800
+#: gio/gtlscertificate.c:758
 msgid "The current TLS backend does not support PKCS #12"
 msgstr "O backend TLS atual não oferece suporte a PKCS #12"
 
-#: gio/gtlscertificate.c:1017
+#: gio/gtlscertificate.c:975
 msgid "This GTlsBackend does not support creating PKCS #11 certificates"
 msgstr ""
 "Este GTlsBackend não oferece suporte à criação de certificados PKCS #11"
 
-#: gio/gtlspassword.c:113
+#: gio/gtlspassword.c:104
 msgid ""
 "This is the last chance to enter the password correctly before your access "
 "is locked out."
@@ -4360,7 +4415,7 @@ msgstr ""
 
 #. Translators: This is not the 'This is the last chance' string. It is
 #. * displayed when more than one attempt is allowed.
-#: gio/gtlspassword.c:117
+#: gio/gtlspassword.c:108
 msgid ""
 "Several passwords entered have been incorrect, and your access will be "
 "locked out after further failures."
@@ -4368,139 +4423,152 @@ msgstr ""
 "Várias das senhas digitadas estavam incorretas, e o seu acesso será "
 "bloqueado se houverem mais falhas."
 
-#: gio/gtlspassword.c:119
+#: gio/gtlspassword.c:110
 msgid "The password entered is incorrect."
 msgstr "A senha digitada está incorreta."
 
-#: gio/gunixconnection.c:127
+#: gio/gunixconnection.c:116
 msgid "Sending FD is not supported"
 msgstr "Não há suporte ao envio de FD"
 
-#: gio/gunixconnection.c:181 gio/gunixconnection.c:601
+#: gio/gunixconnection.c:170 gio/gunixconnection.c:591
 #, c-format
 msgid "Expecting 1 control message, got %d"
 msgid_plural "Expecting 1 control message, got %d"
 msgstr[0] "Esperando 1 mensagem de controle, obtive %d"
 msgstr[1] "Esperando 1 mensagem de controle, obtive %d"
 
-#: gio/gunixconnection.c:197 gio/gunixconnection.c:613
+#: gio/gunixconnection.c:186 gio/gunixconnection.c:603
 msgid "Unexpected type of ancillary data"
 msgstr "Tipo de dado auxiliar não esperado"
 
-#: gio/gunixconnection.c:216
+#: gio/gunixconnection.c:205
 #, c-format
 msgid "Expecting one fd, but got %d\n"
 msgid_plural "Expecting one fd, but got %d\n"
 msgstr[0] "Esperando um fd, mas obtive %d\n"
 msgstr[1] "Esperando um fd, mas obtive %d\n"
 
-#: gio/gunixconnection.c:235
+#: gio/gunixconnection.c:224
 msgid "Received invalid fd"
 msgstr "Recebido fd inválido"
 
-#: gio/gunixconnection.c:242
+#: gio/gunixconnection.c:231
 msgid "Receiving FD is not supported"
 msgstr "Não há suporte ao recebimento de FD"
 
-#: gio/gunixconnection.c:384
+#: gio/gunixconnection.c:373
 msgid "Error sending credentials: "
 msgstr "Erro ao enviar credenciais: "
 
-#: gio/gunixconnection.c:541
+#: gio/gunixconnection.c:531
 #, c-format
 msgid "Error checking if SO_PASSCRED is enabled for socket: %s"
 msgstr "Erro ao verificar se SO_PASSCRED está habilitado pelo soquete: %s"
 
-#: gio/gunixconnection.c:557
+#: gio/gunixconnection.c:547
 #, c-format
 msgid "Error enabling SO_PASSCRED: %s"
 msgstr "Erro ao habilitar SO_PASSCRED: %s"
 
-#: gio/gunixconnection.c:586
+#: gio/gunixconnection.c:576
 msgid ""
 "Expecting to read a single byte for receiving credentials but read zero bytes"
 msgstr ""
 "Era esperado ler apenas um byte para receber credenciais, mas foi lido zero "
 "byte"
 
-#: gio/gunixconnection.c:627
+#: gio/gunixconnection.c:617
 #, c-format
 msgid "Not expecting control message, but got %d"
 msgstr "Não esperava mensagem de controle, mas recebeu %d"
 
-#: gio/gunixconnection.c:652
+#: gio/gunixconnection.c:642
 #, c-format
 msgid "Error while disabling SO_PASSCRED: %s"
 msgstr "Erro ao desabilitar SO_PASSCRED: %s"
 
-#: gio/gunixinputstream.c:359 gio/gunixinputstream.c:380
+#: gio/gunixinputstream.c:352 gio/gunixinputstream.c:373
 #, c-format
 msgid "Error reading from file descriptor: %s"
 msgstr "Erro ao ler do descritor de arquivo: %s"
 
-#: gio/gunixinputstream.c:413 gio/gunixoutputstream.c:522
-#: gio/gwin32inputstream.c:219 gio/gwin32outputstream.c:206
+#: gio/gunixinputstream.c:406 gio/gunixoutputstream.c:515
+#: gio/gwin32inputstream.c:216 gio/gwin32outputstream.c:203
 #, c-format
 msgid "Error closing file descriptor: %s"
 msgstr "Erro ao fechar o descritor de arquivo: %s"
 
-#: gio/gunixmounts.c:2817 gio/gunixmounts.c:2870
+#: gio/gunixmounts.c:2890 gio/gunixmounts.c:2943
 msgid "Filesystem root"
 msgstr "Sistema de arquivos root"
 
-#: gio/gunixoutputstream.c:359 gio/gunixoutputstream.c:379
-#: gio/gunixoutputstream.c:466 gio/gunixoutputstream.c:486
-#: gio/gunixoutputstream.c:632
+#: gio/gunixoutputstream.c:352 gio/gunixoutputstream.c:372
+#: gio/gunixoutputstream.c:459 gio/gunixoutputstream.c:479
+#: gio/gunixoutputstream.c:625
 #, c-format
 msgid "Error writing to file descriptor: %s"
 msgstr "Erro ao gravar o descritor de arquivo: %s"
 
-#: gio/gunixsocketaddress.c:253
+#: gio/gunixsocketaddress.c:245
 msgid "Abstract UNIX domain socket addresses not supported on this system"
 msgstr ""
 "Não há suporte a endereços de soquetes de domínio UNIX abstratos neste "
 "sistema"
 
-#: gio/gvolume.c:440
+#: gio/gvolume.c:436
 msgid "volume doesn’t implement eject"
 msgstr "volume não implementa ejetar"
 
 #. Translators: This is an error
 #. * message for volume objects that
 #. * don't implement any of eject or eject_with_operation.
-#: gio/gvolume.c:517
+#: gio/gvolume.c:513
 msgid "volume doesn’t implement eject or eject_with_operation"
 msgstr "volume não implementa eject ou eject_with_operation"
 
-#: gio/gwin32inputstream.c:187
+#: gio/gwin32appinfo.c:5216
+#, c-format
+msgid "The app ‘%s’ in the application object has no verbs"
+msgstr "O aplicativo ‘%s’ no objeto aplicativo não possui verbos"
+
+#: gio/gwin32appinfo.c:5220
+#, c-format
+msgid ""
+"The app ‘%s’ and the handler ‘%s’ in the application object have no verbs"
+msgstr ""
+"O aplicativo ‘%s’ e o manipulador ‘%s’ no objeto aplicativo não possuem "
+"verbos"
+
+#: gio/gwin32inputstream.c:184
 #, c-format
 msgid "Error reading from handle: %s"
 msgstr "Erro ao ler do manipulador: %s"
 
-#: gio/gwin32inputstream.c:234 gio/gwin32outputstream.c:221
+#: gio/gwin32inputstream.c:231 gio/gwin32outputstream.c:218
 #, c-format
 msgid "Error closing handle: %s"
 msgstr "Erro ao fechar manipulador: %s"
 
-#: gio/gwin32outputstream.c:174
+#: gio/gwin32outputstream.c:171
 #, c-format
 msgid "Error writing to handle: %s"
 msgstr "Erro ao gravar o manipulador: %s"
 
-#: gio/gzlibcompressor.c:396 gio/gzlibdecompressor.c:349
+#: gio/gzlibcompressor.c:399 gio/gzlibdecompressor.c:345
 msgid "Not enough memory"
 msgstr "Memória insuficiente"
 
-#: gio/gzlibcompressor.c:403 gio/gzlibdecompressor.c:356
+#: gio/gzlibcompressor.c:406 gio/gzlibdecompressor.c:352
 #, c-format
 msgid "Internal error: %s"
 msgstr "Erro interno: %s"
 
-#: gio/gzlibcompressor.c:416 gio/gzlibdecompressor.c:370
+#: gio/gzlibcompressor.c:419 gio/gzlibdecompressor.c:366
 msgid "Need more input"
 msgstr "Precisa de mais entrada"
 
-#: gio/gzlibdecompressor.c:342
+#: gio/gzlibdecompressor.c:338
 msgid "Invalid compressed data"
 msgstr "Dados comprimidos inválidos"
 
@@ -4528,155 +4596,289 @@ msgstr "Executa um serviço dbus"
 msgid "Wrong args\n"
 msgstr "Args. incorretos\n"
 
-#: glib/gbookmarkfile.c:861
+#: girepository/compiler/compiler.c:93
+#, c-format
+msgid "Failed to open ‘%s’: %s"
+msgstr "Falha ao abrir ‘%s’: %s"
+
+#: girepository/compiler/compiler.c:103
+#, c-format
+msgid "Error: Could not write the whole output: %s"
+msgstr "Erro: não foi possível gravar toda a saída: %s"
+
+#: girepository/compiler/compiler.c:115
+#, c-format
+msgid "Error: Failed to rename ‘%s’ to ‘%s’: %s"
+msgstr "Erro: Falha ao renomear ‘%s’ para ‘%s’: %s"
+
+#: girepository/compiler/compiler.c:147 girepository/decompiler/decompiler.c:53
+msgid "Include directories in GIR search path"
+msgstr "Incluir diretórios no caminho de pesquisa do GIR"
+
+#: girepository/compiler/compiler.c:148 girepository/decompiler/decompiler.c:52
+msgid "Output file"
+msgstr "Arquivo de saída"
+
+#: girepository/compiler/compiler.c:149
+msgid "Shared library"
+msgstr "Biblioteca compartilhada"
+
+#: girepository/compiler/compiler.c:150
+msgid "Show debug messages"
+msgstr "Mostrar mensagens de depuração"
+
+#: girepository/compiler/compiler.c:151
+msgid "Show verbose messages"
+msgstr "Mostrar mensagens detalhadas"
+
+#: girepository/compiler/compiler.c:152 girepository/decompiler/decompiler.c:55
+msgid "Show program’s version number and exit"
+msgstr "Mostrar o número da versão do programa e sair"
+
+#: girepository/compiler/compiler.c:175
+#, c-format
+msgid "Error parsing arguments: %s"
+msgstr "Erro ao analisar argumentos: %s"
+
+#: girepository/compiler/compiler.c:202
+msgid "Please specify exactly one input file"
+msgstr "Especifique exatamente um arquivo de entrada"
+
+#: girepository/compiler/compiler.c:218
+#, c-format
+msgid "Error parsing file ‘%s’: %s"
+msgstr "Erro ao analisar arquivo ‘%s’: %s"
+
+#: girepository/compiler/compiler.c:243
+#, c-format
+msgid "Failed to build typelib for module ‘%s’"
+msgstr "Falha ao compilar typelib para o módulo ‘%s’"
+
+#: girepository/compiler/compiler.c:245
+#, c-format
+msgid "Invalid typelib for module ‘%s’: %s"
+msgstr "Typelib inválido para módulo ‘%s’: %s"
+
+#: girepository/decompiler/decompiler.c:54
+msgid "Show all available information"
+msgstr "Mostrar todas as informações disponíveis"
+
+#: girepository/decompiler/decompiler.c:71
+#, c-format
+msgid "Failed to parse: %s"
+msgstr "Falha ao analisar: %s"
+
+#: girepository/decompiler/decompiler.c:87
+msgid "No input files"
+msgstr "Nenhum arquivo de entrada"
+
+#: girepository/decompiler/decompiler.c:113
+#, c-format
+msgid "Failed to read ‘%s’: %s"
+msgstr "Falha ao ler ‘%s’: %s"
+
+#: girepository/decompiler/decompiler.c:125
+#, c-format
+msgid "Failed to create typelib ‘%s’: %s"
+msgstr "Falha ao criar typelib ‘%s’: %s"
+
+#: girepository/decompiler/decompiler.c:129
+#: girepository/inspector/inspector.c:113
+#, c-format
+msgid "Failed to load typelib: %s"
+msgstr "Falha ao carregar typelib: %s"
+
+#: girepository/decompiler/decompiler.c:136
+#, c-format
+msgid "Warning: %u modules omitted"
+msgstr "Aviso: %u módulos omitidos"
+
+#: girepository/inspector/inspector.c:72
+msgid "Typelib version to inspect"
+msgstr "Versão Typelib para inspecionar"
+
+#: girepository/inspector/inspector.c:72
+msgid "VERSION"
+msgstr "VERSION"
+
+#: girepository/inspector/inspector.c:73
+msgid "List the shared libraries the typelib requires"
+msgstr "Listar as bibliotecas compartilhadas que o typelib requer"
+
+#: girepository/inspector/inspector.c:74
+msgid "List other typelibs the inspected typelib requires"
+msgstr "Listar outros typelibs que o typelib inspecionado requer"
+
+#: girepository/inspector/inspector.c:75
+msgid "The typelib to inspect"
+msgstr "O typelib para inspecionar"
+
+#: girepository/inspector/inspector.c:75
+#| msgid "NAME"
+msgid "NAMESPACE"
+msgstr "NAMESPACE"
+
+#: girepository/inspector/inspector.c:82
+msgid "- Inspect GI typelib"
+msgstr "- Inspecionar GI typelib"
+
+#: girepository/inspector/inspector.c:86
+#, c-format
+msgid "Failed to parse command line options: %s"
+msgstr "Falha ao analisar opções de linha de comando: %s"
+
+#: girepository/inspector/inspector.c:96
+msgid "Please specify exactly one namespace"
+msgstr "Especifique exatamente um namespace"
+
+#: girepository/inspector/inspector.c:105
+msgid "Please specify --print-shlibs, --print-typelibs or both"
+msgstr "Por favor especifique --print-shlibs, --print-typelibs ou ambos"
+
+#: glib/gbookmarkfile.c:816
 #, c-format
 msgid "Unexpected attribute “%s” for element “%s”"
 msgstr "Atributo “%s” inesperado para o elemento “%s”"
 
-#: glib/gbookmarkfile.c:872 glib/gbookmarkfile.c:952 glib/gbookmarkfile.c:962
-#: glib/gbookmarkfile.c:1075
+#: glib/gbookmarkfile.c:827 glib/gbookmarkfile.c:907 glib/gbookmarkfile.c:917
+#: glib/gbookmarkfile.c:1030
 #, c-format
 msgid "Attribute “%s” of element “%s” not found"
 msgstr "Atributo “%s” do elemento “%s” não localizado"
 
-#: glib/gbookmarkfile.c:1284 glib/gbookmarkfile.c:1349
-#: glib/gbookmarkfile.c:1413 glib/gbookmarkfile.c:1423
+#: glib/gbookmarkfile.c:1239 glib/gbookmarkfile.c:1304
+#: glib/gbookmarkfile.c:1368 glib/gbookmarkfile.c:1378
 #, c-format
 msgid "Unexpected tag “%s”, tag “%s” expected"
 msgstr "Marca “%s” inesperada, esperava marca “%s”"
 
-#: glib/gbookmarkfile.c:1309 glib/gbookmarkfile.c:1323
-#: glib/gbookmarkfile.c:1391 glib/gbookmarkfile.c:1437
+#: glib/gbookmarkfile.c:1264 glib/gbookmarkfile.c:1278
+#: glib/gbookmarkfile.c:1346 glib/gbookmarkfile.c:1392
 #, c-format
 msgid "Unexpected tag “%s” inside “%s”"
 msgstr "Marca “%s” inesperada dentro de “%s”"
 
-#: glib/gbookmarkfile.c:1717
+#: glib/gbookmarkfile.c:1672
 #, c-format
 msgid "Invalid date/time ‘%s’ in bookmark file"
 msgstr "Data/hora “%s” inválida no arquivo de marcadores"
 
-#: glib/gbookmarkfile.c:1956
+#: glib/gbookmarkfile.c:1911
 msgid "No valid bookmark file found in data dirs"
 msgstr ""
 "Nenhum arquivo de marcadores válido foi localizado nos diretórios de dados"
 
-#: glib/gbookmarkfile.c:2157
+#: glib/gbookmarkfile.c:2112
 #, c-format
 msgid "A bookmark for URI “%s” already exists"
 msgstr "Já existe um marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:2206 glib/gbookmarkfile.c:2364
-#: glib/gbookmarkfile.c:2449 glib/gbookmarkfile.c:2529
-#: glib/gbookmarkfile.c:2614 glib/gbookmarkfile.c:2748
-#: glib/gbookmarkfile.c:2881 glib/gbookmarkfile.c:3016
-#: glib/gbookmarkfile.c:3058 glib/gbookmarkfile.c:3155
-#: glib/gbookmarkfile.c:3276 glib/gbookmarkfile.c:3470
-#: glib/gbookmarkfile.c:3611 glib/gbookmarkfile.c:3830
-#: glib/gbookmarkfile.c:3919 glib/gbookmarkfile.c:4008
-#: glib/gbookmarkfile.c:4127
+#: glib/gbookmarkfile.c:2161 glib/gbookmarkfile.c:2319
+#: glib/gbookmarkfile.c:2404 glib/gbookmarkfile.c:2484
+#: glib/gbookmarkfile.c:2569 glib/gbookmarkfile.c:2703
+#: glib/gbookmarkfile.c:2836 glib/gbookmarkfile.c:2971
+#: glib/gbookmarkfile.c:3013 glib/gbookmarkfile.c:3110
+#: glib/gbookmarkfile.c:3231 glib/gbookmarkfile.c:3425
+#: glib/gbookmarkfile.c:3566 glib/gbookmarkfile.c:3785
+#: glib/gbookmarkfile.c:3874 glib/gbookmarkfile.c:3963
+#: glib/gbookmarkfile.c:4082
 #, c-format
 msgid "No bookmark found for URI “%s”"
 msgstr "Nenhum marcador localizado para o URI “%s”"
 
-#: glib/gbookmarkfile.c:2538
+#: glib/gbookmarkfile.c:2493
 #, c-format
 msgid "No MIME type defined in the bookmark for URI “%s”"
 msgstr "Não foi definido tipo MIME no marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:2623
+#: glib/gbookmarkfile.c:2578
 #, c-format
 msgid "No private flag has been defined in bookmark for URI “%s”"
 msgstr "Não foi definido sinal de particular no marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:3164
+#: glib/gbookmarkfile.c:3119
 #, c-format
 msgid "No groups set in bookmark for URI “%s”"
 msgstr "Não há grupos definidos no marcador para o URI “%s”"
 
-#: glib/gbookmarkfile.c:3632 glib/gbookmarkfile.c:3840
+#: glib/gbookmarkfile.c:3587 glib/gbookmarkfile.c:3795
 #, c-format
 msgid "No application with name “%s” registered a bookmark for “%s”"
 msgstr "Nenhum aplicativo chamado “%s” registrou um marcador para “%s”"
 
-#: glib/gbookmarkfile.c:3863
+#: glib/gbookmarkfile.c:3818
 #, c-format
 msgid "Failed to expand exec line “%s” with URI “%s”"
 msgstr "Falha em expandir linha de execução “%s” com URI “%s”"
 
-#: glib/gconvert.c:470
+#: glib/gconvert.c:379
 msgid "Unrepresentable character in conversion input"
 msgstr "Caractere não representável na conversão da entrada"
 
-#: glib/gconvert.c:497 glib/gutf8.c:888 glib/gutf8.c:1101 glib/gutf8.c:1238
-#: glib/gutf8.c:1342
+#: glib/gconvert.c:406 glib/gutf8.c:954 glib/gutf8.c:1167 glib/gutf8.c:1304
+#: glib/gutf8.c:1408
 msgid "Partial character sequence at end of input"
 msgstr "Sequência de caracteres parcial no final da entrada"
 
-#: glib/gconvert.c:768
+#: glib/gconvert.c:677
 #, c-format
 msgid "Cannot convert fallback “%s” to codeset “%s”"
 msgstr ""
 "Não é possível converter a sequência “%s” para conjunto caracteres “%s”"
 
-#: glib/gconvert.c:940
+#: glib/gconvert.c:849
 msgid "Embedded NUL byte in conversion input"
 msgstr "Byte NULO embutido na entrada de conversão"
 
-#: glib/gconvert.c:961
+#: glib/gconvert.c:870
 msgid "Embedded NUL byte in conversion output"
 msgstr "Byte NULO embutido na saída de conversão"
 
-#: glib/gconvert.c:1692
+#: glib/gconvert.c:1608
 #, c-format
 msgid "The URI “%s” is not an absolute URI using the “file” scheme"
 msgstr "O URI “%s” não é um URI absoluto que utilize o esquema “file”"
 
-#: glib/gconvert.c:1702
-#, c-format
-msgid "The local file URI “%s” may not include a “#”"
-msgstr "O URI de arquivo local “%s” não pode incluir um “#”"
-
-#: glib/gconvert.c:1719
+#: glib/gconvert.c:1638
 #, c-format
 msgid "The URI “%s” is invalid"
 msgstr "O URI “%s” é inválido"
 
-#: glib/gconvert.c:1731
+#: glib/gconvert.c:1651
 #, c-format
 msgid "The hostname of the URI “%s” is invalid"
 msgstr "O nome de máquina do URI “%s” é inválido"
 
-#: glib/gconvert.c:1747
+#: glib/gconvert.c:1668
 #, c-format
 msgid "The URI “%s” contains invalidly escaped characters"
 msgstr "O URI “%s” contém caracteres com escape inválido"
 
-#: glib/gconvert.c:1819
+#: glib/gconvert.c:1742
 #, c-format
 msgid "The pathname “%s” is not an absolute path"
 msgstr "O nome de caminho “%s” não é um caminho absoluto"
 
 #. Translators: this is the preferred format for expressing the date and the time
-#: glib/gdatetime.c:228
+#: glib/gdatetime.c:199
 msgctxt "GDateTime"
 msgid "%a %b %e %H:%M:%S %Y"
 msgstr "%a %d de %b %H:%M:%S %Y"
 
 #. Translators: this is the preferred format for expressing the date
-#: glib/gdatetime.c:231
+#: glib/gdatetime.c:202
 msgctxt "GDateTime"
 msgid "%m/%d/%y"
 msgstr "%d/%m/%y"
 
 #. Translators: this is the preferred format for expressing the time
-#: glib/gdatetime.c:234
+#: glib/gdatetime.c:205
 msgctxt "GDateTime"
 msgid "%H:%M:%S"
 msgstr "%H:%M:%S"
 
 #. Translators: this is the preferred format for expressing 12 hour time
-#: glib/gdatetime.c:237
+#: glib/gdatetime.c:208
 msgctxt "GDateTime"
 msgid "%I:%M:%S %p"
 msgstr "%I:%M:%S %p"
@@ -4697,62 +4899,62 @@ msgstr "%I:%M:%S %p"
 #. * non-European) there is no difference between the standalone and
 #. * complete date form.
 #.
-#: glib/gdatetime.c:276
+#: glib/gdatetime.c:247
 msgctxt "full month name"
 msgid "January"
 msgstr "janeiro"
 
-#: glib/gdatetime.c:278
+#: glib/gdatetime.c:249
 msgctxt "full month name"
 msgid "February"
 msgstr "fevereiro"
 
-#: glib/gdatetime.c:280
+#: glib/gdatetime.c:251
 msgctxt "full month name"
 msgid "March"
 msgstr "março"
 
-#: glib/gdatetime.c:282
+#: glib/gdatetime.c:253
 msgctxt "full month name"
 msgid "April"
 msgstr "abril"
 
-#: glib/gdatetime.c:284
+#: glib/gdatetime.c:255
 msgctxt "full month name"
 msgid "May"
 msgstr "maio"
 
-#: glib/gdatetime.c:286
+#: glib/gdatetime.c:257
 msgctxt "full month name"
 msgid "June"
 msgstr "junho"
 
-#: glib/gdatetime.c:288
+#: glib/gdatetime.c:259
 msgctxt "full month name"
 msgid "July"
 msgstr "julho"
 
-#: glib/gdatetime.c:290
+#: glib/gdatetime.c:261
 msgctxt "full month name"
 msgid "August"
 msgstr "agosto"
 
-#: glib/gdatetime.c:292
+#: glib/gdatetime.c:263
 msgctxt "full month name"
 msgid "September"
 msgstr "setembro"
 
-#: glib/gdatetime.c:294
+#: glib/gdatetime.c:265
 msgctxt "full month name"
 msgid "October"
 msgstr "outubro"
 
-#: glib/gdatetime.c:296
+#: glib/gdatetime.c:267
 msgctxt "full month name"
 msgid "November"
 msgstr "novembro"
 
-#: glib/gdatetime.c:298
+#: glib/gdatetime.c:269
 msgctxt "full month name"
 msgid "December"
 msgstr "dezembro"
@@ -4774,132 +4976,132 @@ msgstr "dezembro"
 #. * other platform.  Here are abbreviated month names in a form
 #. * appropriate when they are used standalone.
 #.
-#: glib/gdatetime.c:330
+#: glib/gdatetime.c:301
 msgctxt "abbreviated month name"
 msgid "Jan"
 msgstr "jan"
 
-#: glib/gdatetime.c:332
+#: glib/gdatetime.c:303
 msgctxt "abbreviated month name"
 msgid "Feb"
 msgstr "fev"
 
-#: glib/gdatetime.c:334
+#: glib/gdatetime.c:305
 msgctxt "abbreviated month name"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:336
+#: glib/gdatetime.c:307
 msgctxt "abbreviated month name"
 msgid "Apr"
 msgstr "abr"
 
-#: glib/gdatetime.c:338
+#: glib/gdatetime.c:309
 msgctxt "abbreviated month name"
 msgid "May"
 msgstr "maio"
 
-#: glib/gdatetime.c:340
+#: glib/gdatetime.c:311
 msgctxt "abbreviated month name"
 msgid "Jun"
 msgstr "jun"
 
-#: glib/gdatetime.c:342
+#: glib/gdatetime.c:313
 msgctxt "abbreviated month name"
 msgid "Jul"
 msgstr "jul"
 
-#: glib/gdatetime.c:344
+#: glib/gdatetime.c:315
 msgctxt "abbreviated month name"
 msgid "Aug"
 msgstr "ago"
 
-#: glib/gdatetime.c:346
+#: glib/gdatetime.c:317
 msgctxt "abbreviated month name"
 msgid "Sep"
 msgstr "set"
 
-#: glib/gdatetime.c:348
+#: glib/gdatetime.c:319
 msgctxt "abbreviated month name"
 msgid "Oct"
 msgstr "out"
 
-#: glib/gdatetime.c:350
+#: glib/gdatetime.c:321
 msgctxt "abbreviated month name"
 msgid "Nov"
 msgstr "nov"
 
-#: glib/gdatetime.c:352
+#: glib/gdatetime.c:323
 msgctxt "abbreviated month name"
 msgid "Dec"
 msgstr "dez"
 
-#: glib/gdatetime.c:367
+#: glib/gdatetime.c:338
 msgctxt "full weekday name"
 msgid "Monday"
 msgstr "segunda-feira"
 
-#: glib/gdatetime.c:369
+#: glib/gdatetime.c:340
 msgctxt "full weekday name"
 msgid "Tuesday"
 msgstr "terça-feira"
 
-#: glib/gdatetime.c:371
+#: glib/gdatetime.c:342
 msgctxt "full weekday name"
 msgid "Wednesday"
 msgstr "quarta-feira"
 
-#: glib/gdatetime.c:373
+#: glib/gdatetime.c:344
 msgctxt "full weekday name"
 msgid "Thursday"
 msgstr "quinta-feira"
 
-#: glib/gdatetime.c:375
+#: glib/gdatetime.c:346
 msgctxt "full weekday name"
 msgid "Friday"
 msgstr "sexta-feira"
 
-#: glib/gdatetime.c:377
+#: glib/gdatetime.c:348
 msgctxt "full weekday name"
 msgid "Saturday"
 msgstr "sábado"
 
-#: glib/gdatetime.c:379
+#: glib/gdatetime.c:350
 msgctxt "full weekday name"
 msgid "Sunday"
 msgstr "domingo"
 
-#: glib/gdatetime.c:394
+#: glib/gdatetime.c:365
 msgctxt "abbreviated weekday name"
 msgid "Mon"
 msgstr "seg"
 
-#: glib/gdatetime.c:396
+#: glib/gdatetime.c:367
 msgctxt "abbreviated weekday name"
 msgid "Tue"
 msgstr "ter"
 
-#: glib/gdatetime.c:398
+#: glib/gdatetime.c:369
 msgctxt "abbreviated weekday name"
 msgid "Wed"
 msgstr "qua"
 
-#: glib/gdatetime.c:400
+#: glib/gdatetime.c:371
 msgctxt "abbreviated weekday name"
 msgid "Thu"
 msgstr "qui"
 
-#: glib/gdatetime.c:402
+#: glib/gdatetime.c:373
 msgctxt "abbreviated weekday name"
 msgid "Fri"
 msgstr "sex"
 
-#: glib/gdatetime.c:404
+#: glib/gdatetime.c:375
 msgctxt "abbreviated weekday name"
 msgid "Sat"
 msgstr "sáb"
 
-#: glib/gdatetime.c:406
+#: glib/gdatetime.c:377
 msgctxt "abbreviated weekday name"
 msgid "Sun"
 msgstr "dom"
@@ -4921,62 +5123,62 @@ msgstr "dom"
 #. * (western European, non-European) there is no difference between the
 #. * standalone and complete date form.
 #.
-#: glib/gdatetime.c:470
+#: glib/gdatetime.c:441
 msgctxt "full month name with day"
 msgid "January"
 msgstr "janeiro"
 
-#: glib/gdatetime.c:472
+#: glib/gdatetime.c:443
 msgctxt "full month name with day"
 msgid "February"
 msgstr "fevereiro"
 
-#: glib/gdatetime.c:474
+#: glib/gdatetime.c:445
 msgctxt "full month name with day"
 msgid "March"
 msgstr "março"
 
-#: glib/gdatetime.c:476
+#: glib/gdatetime.c:447
 msgctxt "full month name with day"
 msgid "April"
 msgstr "abril"
 
-#: glib/gdatetime.c:478
+#: glib/gdatetime.c:449
 msgctxt "full month name with day"
 msgid "May"
 msgstr "maio"
 
-#: glib/gdatetime.c:480
+#: glib/gdatetime.c:451
 msgctxt "full month name with day"
 msgid "June"
 msgstr "junho"
 
-#: glib/gdatetime.c:482
+#: glib/gdatetime.c:453
 msgctxt "full month name with day"
 msgid "July"
 msgstr "julho"
 
-#: glib/gdatetime.c:484
+#: glib/gdatetime.c:455
 msgctxt "full month name with day"
 msgid "August"
 msgstr "agosto"
 
-#: glib/gdatetime.c:486
+#: glib/gdatetime.c:457
 msgctxt "full month name with day"
 msgid "September"
 msgstr "setembro"
 
-#: glib/gdatetime.c:488
+#: glib/gdatetime.c:459
 msgctxt "full month name with day"
 msgid "October"
 msgstr "outubro"
 
-#: glib/gdatetime.c:490
+#: glib/gdatetime.c:461
 msgctxt "full month name with day"
 msgid "November"
 msgstr "novembro"
 
-#: glib/gdatetime.c:492
+#: glib/gdatetime.c:463
 msgctxt "full month name with day"
 msgid "December"
 msgstr "dezembro"
@@ -4998,192 +5200,198 @@ msgstr "dezembro"
 #. * month names almost ready to copy and paste here.  In other systems
 #. * due to a bug the result is incorrect in some languages.
 #.
-#: glib/gdatetime.c:557
+#: glib/gdatetime.c:528
 msgctxt "abbreviated month name with day"
 msgid "Jan"
 msgstr "jan"
 
-#: glib/gdatetime.c:559
+#: glib/gdatetime.c:530
 msgctxt "abbreviated month name with day"
 msgid "Feb"
 msgstr "fev"
 
-#: glib/gdatetime.c:561
+#: glib/gdatetime.c:532
 msgctxt "abbreviated month name with day"
 msgid "Mar"
 msgstr "mar"
 
-#: glib/gdatetime.c:563
+#: glib/gdatetime.c:534
 msgctxt "abbreviated month name with day"
 msgid "Apr"
 msgstr "abr"
 
-#: glib/gdatetime.c:565
+#: glib/gdatetime.c:536
 msgctxt "abbreviated month name with day"
 msgid "May"
 msgstr "maio"
 
-#: glib/gdatetime.c:567
+#: glib/gdatetime.c:538
 msgctxt "abbreviated month name with day"
 msgid "Jun"
 msgstr "jun"
 
-#: glib/gdatetime.c:569
+#: glib/gdatetime.c:540
 msgctxt "abbreviated month name with day"
 msgid "Jul"
 msgstr "jul"
 
-#: glib/gdatetime.c:571
+#: glib/gdatetime.c:542
 msgctxt "abbreviated month name with day"
 msgid "Aug"
 msgstr "ago"
 
-#: glib/gdatetime.c:573
+#: glib/gdatetime.c:544
 msgctxt "abbreviated month name with day"
 msgid "Sep"
 msgstr "set"
 
-#: glib/gdatetime.c:575
+#: glib/gdatetime.c:546
 msgctxt "abbreviated month name with day"
 msgid "Oct"
 msgstr "out"
 
-#: glib/gdatetime.c:577
+#: glib/gdatetime.c:548
 msgctxt "abbreviated month name with day"
 msgid "Nov"
 msgstr "nov"
 
-#: glib/gdatetime.c:579
+#: glib/gdatetime.c:550
 msgctxt "abbreviated month name with day"
 msgid "Dec"
 msgstr "dez"
 
 #. Translators: 'before midday' indicator
-#: glib/gdatetime.c:596
+#: glib/gdatetime.c:592
 msgctxt "GDateTime"
 msgid "AM"
 msgstr "AM"
 
 #. Translators: 'after midday' indicator
-#: glib/gdatetime.c:599
+#: glib/gdatetime.c:595
 msgctxt "GDateTime"
 msgid "PM"
 msgstr "PM"
 
-#: glib/gdir.c:158
+#: glib/gdir.c:168
 #, c-format
 msgid "Error opening directory “%s”: %s"
 msgstr "Erro ao abrir o diretório “%s”: %s"
 
-#: glib/gfileutils.c:753 glib/gfileutils.c:845
+#. Translators: the first %s contains the file size
+#. * (already formatted with units), and the second %s
+#. * contains the file name
+#: glib/gfileutils.c:720 glib/gfileutils.c:829
 #, c-format
-msgid "Could not allocate %lu byte to read file “%s”"
-msgid_plural "Could not allocate %lu bytes to read file “%s”"
-msgstr[0] "Não foi possível alocar %lu byte para ler arquivo “%s”"
-msgstr[1] "Não foi possível alocar %lu bytes para ler arquivo “%s”"
+msgid "Could not allocate %s to read file “%s”"
+msgstr "Não foi possível alocar %s para ler o arquivo “%s”"
 
-#: glib/gfileutils.c:770
+#: glib/gfileutils.c:738
 #, c-format
 msgid "Error reading file “%s”: %s"
 msgstr "Ocorreu erro ao ler arquivo “%s”: %s"
 
-#: glib/gfileutils.c:806
+#: glib/gfileutils.c:774 glib/gfileutils.c:808
 #, c-format
 msgid "File “%s” is too large"
 msgstr "Arquivo “%s” é muito grande"
 
-#: glib/gfileutils.c:870
+#: glib/gfileutils.c:855
 #, c-format
 msgid "Failed to read from file “%s”: %s"
 msgstr "Falha ao ler do arquivo “%s”: %s"
 
-#: glib/gfileutils.c:920 glib/gfileutils.c:995 glib/gfileutils.c:1472
+#: glib/gfileutils.c:905 glib/gfileutils.c:980 glib/gfileutils.c:1487
 #, c-format
 msgid "Failed to open file “%s”: %s"
 msgstr "Falha ao abrir arquivo “%s”: %s"
 
-#: glib/gfileutils.c:933
+#: glib/gfileutils.c:918
 #, c-format
 msgid "Failed to get attributes of file “%s”: fstat() failed: %s"
 msgstr "Falha ao obter atributos do arquivo “%s”: fstat() falhou: %s"
 
-#: glib/gfileutils.c:964
+#: glib/gfileutils.c:949
 #, c-format
 msgid "Failed to open file “%s”: fdopen() failed: %s"
 msgstr "Falha ao abrir arquivo “%s”: fdopen() falhou: %s"
 
-#: glib/gfileutils.c:1065
+#: glib/gfileutils.c:1050
 #, c-format
 msgid "Failed to rename file “%s” to “%s”: g_rename() failed: %s"
 msgstr "Falha ao renomear arquivo “%s” para “%s”: g_rename() falhou: %s"
 
-#: glib/gfileutils.c:1179
+#: glib/gfileutils.c:1149
+#, c-format
+msgid "Failed to write file “%s”: ftruncate() failed: %s"
+msgstr "Falha ao gravar o arquivo “%s”: ftruncate() falhou: %s"
+
+#: glib/gfileutils.c:1194
 #, c-format
 msgid "Failed to write file “%s”: write() failed: %s"
 msgstr "Falha ao gravar o arquivo “%s”: write() falhou: %s"
 
-#: glib/gfileutils.c:1200
+#: glib/gfileutils.c:1215
 #, c-format
 msgid "Failed to write file “%s”: fsync() failed: %s"
 msgstr "Falha ao gravar o arquivo “%s”: fsync() falhou: %s"
 
-#: glib/gfileutils.c:1361 glib/gfileutils.c:1776
+#: glib/gfileutils.c:1376 glib/gfileutils.c:1793
 #, c-format
 msgid "Failed to create file “%s”: %s"
 msgstr "Falha ao criar arquivo “%s”: %s"
 
-#: glib/gfileutils.c:1406
+#: glib/gfileutils.c:1421
 #, c-format
 msgid "Existing file “%s” could not be removed: g_unlink() failed: %s"
 msgstr "O arquivo “%s” não pôde ser removido: g_unlink() falhou: %s"
 
-#: glib/gfileutils.c:1741
+#: glib/gfileutils.c:1758
 #, c-format
 msgid "Template “%s” invalid, should not contain a “%s”"
 msgstr "Modelo “%s” inválido, não deveria conter um “%s”"
 
-#: glib/gfileutils.c:1754
+#: glib/gfileutils.c:1771
 #, c-format
 msgid "Template “%s” doesn’t contain XXXXXX"
 msgstr "Modelo “%s” não contém XXXXXX"
 
-#: glib/gfileutils.c:2348 glib/gfileutils.c:2377
+#: glib/gfileutils.c:2365 glib/gfileutils.c:2394
 #, c-format
 msgid "Failed to read the symbolic link “%s”: %s"
 msgstr "Falha ao ler link simbólico “%s”: %s"
 
-#: glib/giochannel.c:1408
+#: glib/giochannel.c:1397
 #, c-format
 msgid "Could not open converter from “%s” to “%s”: %s"
 msgstr "Não foi possível abrir conversor de “%s” para “%s”: %s"
 
-#: glib/giochannel.c:1761
+#: glib/giochannel.c:1750
 msgid "Can’t do a raw read in g_io_channel_read_line_string"
 msgstr ""
 "Não é possível fazer uma leitura em bruto em g_io_channel_read_line_string"
 
-#: glib/giochannel.c:1808 glib/giochannel.c:2066 glib/giochannel.c:2153
+#: glib/giochannel.c:1797 glib/giochannel.c:2055 glib/giochannel.c:2142
 msgid "Leftover unconverted data in read buffer"
 msgstr "Dados residuais não convertidos no buffer de leitura"
 
-#: glib/giochannel.c:1889 glib/giochannel.c:1966
+#: glib/giochannel.c:1878 glib/giochannel.c:1955
 msgid "Channel terminates in a partial character"
 msgstr "Canal termina em um caractere parcial"
 
-#: glib/giochannel.c:1952
+#: glib/giochannel.c:1941
 msgid "Can’t do a raw read in g_io_channel_read_to_end"
 msgstr "Não é possível fazer uma leitura em bruto de g_io_channel_read_to_end"
 
-#: glib/gkeyfile.c:800
+#: glib/gkeyfile.c:791
 msgid "Valid key file could not be found in search dirs"
 msgstr ""
 "Não foi possível localizar arquivo de chave válido nos diretórios pesquisados"
 
-#: glib/gkeyfile.c:837
+#: glib/gkeyfile.c:828
 msgid "Not a regular file"
 msgstr "Não é um arquivo comum"
 
-#: glib/gkeyfile.c:1295
+#: glib/gkeyfile.c:1286
 #, c-format
 msgid ""
 "Key file contains line “%s” which is not a key-value pair, group, or comment"
@@ -5191,50 +5399,50 @@ msgstr ""
 "Arquivo de chave contém a linha “%s” que não é um par chave-valor, grupo ou "
 "comentário"
 
-#: glib/gkeyfile.c:1352
+#: glib/gkeyfile.c:1343
 #, c-format
 msgid "Invalid group name: %s"
 msgstr "Nome de grupo inválido: %s"
 
-#: glib/gkeyfile.c:1376
+#: glib/gkeyfile.c:1367
 msgid "Key file does not start with a group"
 msgstr "Arquivo de chave não começa com um grupo"
 
-#: glib/gkeyfile.c:1400
+#: glib/gkeyfile.c:1391
 #, c-format
 msgid "Invalid key name: %.*s"
 msgstr "Nome de chave inválido: %.*s"
 
-#: glib/gkeyfile.c:1428
+#: glib/gkeyfile.c:1419
 #, c-format
 msgid "Key file contains unsupported encoding “%s”"
 msgstr "Arquivo de chave contém codificação “%s” sem suporte"
 
-#: glib/gkeyfile.c:1683 glib/gkeyfile.c:1856 glib/gkeyfile.c:3303
-#: glib/gkeyfile.c:3367 glib/gkeyfile.c:3497 glib/gkeyfile.c:3626
-#: glib/gkeyfile.c:3772 glib/gkeyfile.c:4007 glib/gkeyfile.c:4074
+#: glib/gkeyfile.c:1667 glib/gkeyfile.c:1840 glib/gkeyfile.c:3287
+#: glib/gkeyfile.c:3389 glib/gkeyfile.c:3494 glib/gkeyfile.c:3623
+#: glib/gkeyfile.c:3766 glib/gkeyfile.c:4015 glib/gkeyfile.c:4089
 #, c-format
 msgid "Key file does not have group “%s”"
 msgstr "Arquivo de chave não tem grupo “%s”"
 
-#: glib/gkeyfile.c:1811
+#: glib/gkeyfile.c:1795
 #, c-format
 msgid "Key file does not have key “%s” in group “%s”"
 msgstr "Arquivo de chave não tem chave “%s” no grupo “%s”"
 
-#: glib/gkeyfile.c:1973 glib/gkeyfile.c:2089
+#: glib/gkeyfile.c:1957 glib/gkeyfile.c:2073
 #, c-format
 msgid "Key file contains key “%s” with value “%s” which is not UTF-8"
 msgstr "Arquivo de chave contém chave “%s” com valor “%s” que não é UTF-8"
 
-#: glib/gkeyfile.c:1993 glib/gkeyfile.c:2109 glib/gkeyfile.c:2548
+#: glib/gkeyfile.c:1977 glib/gkeyfile.c:2093 glib/gkeyfile.c:2532
 #, c-format
 msgid ""
 "Key file contains key “%s” which has a value that cannot be interpreted."
 msgstr ""
 "Arquivo de chave contém chave “%s” cujo valor não pode ser interpretado."
 
-#: glib/gkeyfile.c:2763 glib/gkeyfile.c:3132
+#: glib/gkeyfile.c:2747 glib/gkeyfile.c:3116
 #, c-format
 msgid ""
 "Key file contains key “%s” in group “%s” which has a value that cannot be "
@@ -5243,36 +5451,36 @@ msgstr ""
 "Arquivo de chave contém chave “%s” no grupo “%s” que tem um valor que não "
 "pode ser interpretado."
 
-#: glib/gkeyfile.c:2841 glib/gkeyfile.c:2918
+#: glib/gkeyfile.c:2825 glib/gkeyfile.c:2902
 #, c-format
 msgid "Key “%s” in group “%s” has value “%s” where %s was expected"
 msgstr "Chave “%s” no grupo “%s” tem o valor “%s” onde %s era esperado"
 
-#: glib/gkeyfile.c:4330
+#: glib/gkeyfile.c:4345
 msgid "Key file contains escape character at end of line"
 msgstr "Arquivo de chave contém caractere de escape no fim da linha"
 
-#: glib/gkeyfile.c:4352
+#: glib/gkeyfile.c:4367
 #, c-format
 msgid "Key file contains invalid escape sequence “%s”"
 msgstr "Arquivo de chave contém sequência de escape “%s” inválida"
 
-#: glib/gkeyfile.c:4504
+#: glib/gkeyfile.c:4519
 #, c-format
 msgid "Value “%s” cannot be interpreted as a number."
 msgstr "O valor “%s” não pode ser interpretado como um número."
 
-#: glib/gkeyfile.c:4518
+#: glib/gkeyfile.c:4533
 #, c-format
 msgid "Integer value “%s” out of range"
 msgstr "Valor inteiro “%s” fora dos limites"
 
-#: glib/gkeyfile.c:4551
+#: glib/gkeyfile.c:4566
 #, c-format
 msgid "Value “%s” cannot be interpreted as a float number."
 msgstr "O valor “%s” não pode ser interpretado como ponto flutuante."
 
-#: glib/gkeyfile.c:4590
+#: glib/gkeyfile.c:4605
 #, c-format
 msgid "Value “%s” cannot be interpreted as a boolean."
 msgstr "O valor “%s” não pode ser interpretado como um booleano."
@@ -5292,32 +5500,32 @@ msgstr "Falha ao mapear arquivo “%s%s%s%s”: mmap() falhou: %s"
 msgid "Failed to open file “%s”: open() failed: %s"
 msgstr "Falha ao abrir arquivo “%s”: open() falhou: %s"
 
-#: glib/gmarkup.c:398 glib/gmarkup.c:440
+#: glib/gmarkup.c:344 glib/gmarkup.c:386
 #, c-format
 msgid "Error on line %d char %d: "
 msgstr "Erro na linha %d caractere %d: "
 
-#: glib/gmarkup.c:462 glib/gmarkup.c:545
+#: glib/gmarkup.c:408 glib/gmarkup.c:491
 #, c-format
 msgid "Invalid UTF-8 encoded text in name — not valid “%s”"
 msgstr "Texto do nome codificado em UTF-8 inválido — “%s” não válido"
 
-#: glib/gmarkup.c:473
+#: glib/gmarkup.c:419
 #, c-format
 msgid "“%s” is not a valid name"
 msgstr "“%s” não é um nome válido"
 
-#: glib/gmarkup.c:489
+#: glib/gmarkup.c:435
 #, c-format
 msgid "“%s” is not a valid name: “%c”"
 msgstr "“%s” não é um nome válido: “%c”"
 
-#: glib/gmarkup.c:613
+#: glib/gmarkup.c:559
 #, c-format
 msgid "Error on line %d: %s"
 msgstr "Erro na linha %d: %s"
 
-#: glib/gmarkup.c:690
+#: glib/gmarkup.c:636
 #, c-format
 msgid ""
 "Failed to parse “%-.*s”, which should have been a digit inside a character "
@@ -5327,7 +5535,7 @@ msgstr ""
 "referência de caractere (&#234; por exemplo) — talvez o dígito seja grande "
 "demais"
 
-#: glib/gmarkup.c:702
+#: glib/gmarkup.c:648
 msgid ""
 "Character reference did not end with a semicolon; most likely you used an "
 "ampersand character without intending to start an entity — escape ampersand "
@@ -5337,23 +5545,23 @@ msgstr ""
 "utilizou um caractere “e comercial” sem desejar iniciar uma entidade — "
 "escape-o com &amp;"
 
-#: glib/gmarkup.c:728
+#: glib/gmarkup.c:674
 #, c-format
 msgid "Character reference “%-.*s” does not encode a permitted character"
 msgstr "Referência de caractere “%-.*s” não codifica um caractere permitido"
 
-#: glib/gmarkup.c:766
+#: glib/gmarkup.c:712
 msgid ""
 "Empty entity “&;” seen; valid entities are: &amp; &quot; &lt; &gt; &apos;"
 msgstr ""
 "Entidade “&;” vazia; as entidades válidas são: &amp; &quot; &lt; &gt; &apos;"
 
-#: glib/gmarkup.c:774
+#: glib/gmarkup.c:720
 #, c-format
 msgid "Entity name “%-.*s” is not known"
 msgstr "Nome de entidade “%-.*s” não é conhecido"
 
-#: glib/gmarkup.c:779
+#: glib/gmarkup.c:725
 msgid ""
 "Entity did not end with a semicolon; most likely you used an ampersand "
 "character without intending to start an entity — escape ampersand as &amp;"
@@ -5361,11 +5569,11 @@ msgstr ""
 "Entidade não termina com um ponto e vírgula; provavelmente você utilizou um "
 "“e comercial” sem desejar iniciar uma entidade — escape-o com &amp;"
 
-#: glib/gmarkup.c:1193
+#: glib/gmarkup.c:1139
 msgid "Document must begin with an element (e.g. <book>)"
 msgstr "Documento tem de começar com um elemento (ex. <book>)"
 
-#: glib/gmarkup.c:1233
+#: glib/gmarkup.c:1179
 #, c-format
 msgid ""
 "“%s” is not a valid character following a “<” character; it may not begin an "
@@ -5374,7 +5582,7 @@ msgstr ""
 "“%s” não é um caractere válido após um caractere “<”; não poderá começar um "
 "nome de elemento"
 
-#: glib/gmarkup.c:1276
+#: glib/gmarkup.c:1222
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” character to end the empty-element tag "
@@ -5383,12 +5591,12 @@ msgstr ""
 "Caractere estranho “%s”, esperado um caractere “>” para finalizar a marca "
 "“%s” de elemento vazio"
 
-#: glib/gmarkup.c:1346
+#: glib/gmarkup.c:1292
 #, c-format
 msgid "Too many attributes in element “%s”"
 msgstr "Número excessivo de atributos no elemento “%s”"
 
-#: glib/gmarkup.c:1366
+#: glib/gmarkup.c:1312
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “=” after attribute name “%s” of element “%s”"
@@ -5396,7 +5604,7 @@ msgstr ""
 "Caractere estranho “%s”, esperava-se um “=” após o nome do atributo “%s” do "
 "elemento “%s”"
 
-#: glib/gmarkup.c:1408
+#: glib/gmarkup.c:1354
 #, c-format
 msgid ""
 "Odd character “%s”, expected a “>” or “/” character to end the start tag of "
@@ -5407,7 +5615,7 @@ msgstr ""
 "marca inicial do elemento “%s”, ou opcionalmente um atributo; talvez tenha "
 "utilizado um caractere inválido no nome de atributo"
 
-#: glib/gmarkup.c:1453
+#: glib/gmarkup.c:1399
 #, c-format
 msgid ""
 "Odd character “%s”, expected an open quote mark after the equals sign when "
@@ -5416,7 +5624,7 @@ msgstr ""
 "Caractere estranho “%s”, esperava-se uma abertura de aspas após o sinal de "
 "igual ao atribuir o valor ao atributo “%s” do elemento “%s”"
 
-#: glib/gmarkup.c:1587
+#: glib/gmarkup.c:1533
 #, c-format
 msgid ""
 "“%s” is not a valid character following the characters “</”; “%s” may not "
@@ -5425,7 +5633,7 @@ msgstr ""
 "“%s” não é um caractere válido após os caracteres “</”; “%s” não poderá "
 "começar o nome de um elemento"
 
-#: glib/gmarkup.c:1625
+#: glib/gmarkup.c:1571
 #, c-format
 msgid ""
 "“%s” is not a valid character following the close element name “%s”; the "
@@ -5434,25 +5642,25 @@ msgstr ""
 "“%s” não é um caractere válido após o nome do elemento de fecho “%s”; o "
 "caractere permitido é “>”"
 
-#: glib/gmarkup.c:1637
+#: glib/gmarkup.c:1583
 #, c-format
 msgid "Element “%s” was closed, no element is currently open"
 msgstr "Elemento “%s” foi fechado, nenhum elemento está atualmente aberto"
 
-#: glib/gmarkup.c:1646
+#: glib/gmarkup.c:1592
 #, c-format
 msgid "Element “%s” was closed, but the currently open element is “%s”"
 msgstr "Elemento “%s” foi fechado, mas o elemento atualmente aberto é “%s”"
 
-#: glib/gmarkup.c:1799
+#: glib/gmarkup.c:1745
 msgid "Document was empty or contained only whitespace"
 msgstr "Documento estava vazio ou apenas continha espaços"
 
-#: glib/gmarkup.c:1813
+#: glib/gmarkup.c:1759
 msgid "Document ended unexpectedly just after an open angle bracket “<”"
 msgstr "Documento terminou inesperadamente logo após um menor que “<”"
 
-#: glib/gmarkup.c:1821 glib/gmarkup.c:1866
+#: glib/gmarkup.c:1767 glib/gmarkup.c:1812
 #, c-format
 msgid ""
 "Document ended unexpectedly with elements still open — “%s” was the last "
@@ -5461,7 +5669,7 @@ msgstr ""
 "Documento terminou inesperadamente com elementos ainda abertos — “%s” foi o "
 "último elemento aberto"
 
-#: glib/gmarkup.c:1829
+#: glib/gmarkup.c:1775
 #, c-format
 msgid ""
 "Document ended unexpectedly, expected to see a close angle bracket ending "
@@ -5470,21 +5678,21 @@ msgstr ""
 "Documento terminou inesperadamente, esperava-se ver um sinal de maior (“>”) "
 "para terminar a marca <%s/>"
 
-#: glib/gmarkup.c:1835
+#: glib/gmarkup.c:1781
 msgid "Document ended unexpectedly inside an element name"
 msgstr "Documento terminou inesperadamente dentro de um nome de elemento"
 
-#: glib/gmarkup.c:1841
+#: glib/gmarkup.c:1787
 msgid "Document ended unexpectedly inside an attribute name"
 msgstr "Documento terminou inesperadamente dentro de um nome de atributo"
 
-#: glib/gmarkup.c:1846
+#: glib/gmarkup.c:1792
 msgid "Document ended unexpectedly inside an element-opening tag."
 msgstr ""
 "Documento terminou inesperadamente dentro de uma marca de abertura de "
 "elemento."
 
-#: glib/gmarkup.c:1852
+#: glib/gmarkup.c:1798
 msgid ""
 "Document ended unexpectedly after the equals sign following an attribute "
 "name; no attribute value"
@@ -5492,270 +5700,266 @@ msgstr ""
 "Documento terminou inesperadamente após o sinal de igual que se seguiu a um "
 "nome de atributo; nenhum valor de atributo"
 
-#: glib/gmarkup.c:1859
+#: glib/gmarkup.c:1805
 msgid "Document ended unexpectedly while inside an attribute value"
 msgstr "Documento terminou inesperadamente dentro de um valor de atributo"
 
-#: glib/gmarkup.c:1876
+#: glib/gmarkup.c:1822
 #, c-format
 msgid "Document ended unexpectedly inside the close tag for element “%s”"
 msgstr ""
 "Documento terminou inesperadamente dentro da marca de fechamento do elemento "
 "“%s”"
 
-#: glib/gmarkup.c:1880
+#: glib/gmarkup.c:1826
 msgid ""
 "Document ended unexpectedly inside the close tag for an unopened element"
 msgstr ""
 "Documento terminou inesperadamente dentro da marca de um elemento não aberto"
 
-#: glib/gmarkup.c:1886
+#: glib/gmarkup.c:1832
 msgid "Document ended unexpectedly inside a comment or processing instruction"
 msgstr ""
 "Documento terminou inesperadamente dentro de um comentário ou instrução de "
 "processamento"
 
-#: glib/goption.c:875
+#: glib/goption.c:716
 msgid "[OPTION…]"
 msgstr "[OPÇÃO…]"
 
-#: glib/goption.c:991
+#: glib/goption.c:832
 msgid "Help Options:"
 msgstr "Opções de ajuda:"
 
-#: glib/goption.c:992
+#: glib/goption.c:833
 msgid "Show help options"
 msgstr "Mostra opções de ajuda"
 
-#: glib/goption.c:998
+#: glib/goption.c:839
 msgid "Show all help options"
 msgstr "Mostra todas as opções de ajuda"
 
-#: glib/goption.c:1061
+#: glib/goption.c:902
 msgid "Application Options:"
 msgstr "Opções de aplicativo:"
 
-#: glib/goption.c:1063
+#: glib/goption.c:904
 msgid "Options:"
 msgstr "Opções:"
 
-#: glib/goption.c:1127 glib/goption.c:1197
+#: glib/goption.c:968 glib/goption.c:1038
 #, c-format
 msgid "Cannot parse integer value “%s” for %s"
 msgstr "Não é possível converter o valor inteiro “%s” para %s"
 
-#: glib/goption.c:1137 glib/goption.c:1205
+#: glib/goption.c:978 glib/goption.c:1046
 #, c-format
 msgid "Integer value “%s” for %s out of range"
 msgstr "Valor inteiro “%s” para %s fora dos limites"
 
-#: glib/goption.c:1162
+#: glib/goption.c:1003
 #, c-format
 msgid "Cannot parse double value “%s” for %s"
 msgstr ""
 "Não é possível converter o ponto flutuante com dupla precisão “%s” para %s"
 
-#: glib/goption.c:1170
+#: glib/goption.c:1011
 #, c-format
 msgid "Double value “%s” for %s out of range"
 msgstr "Ponto flutuante com dupla precisão “%s” para %s fora dos limites"
 
-#: glib/goption.c:1462 glib/goption.c:1541
+#: glib/goption.c:1303 glib/goption.c:1382
 #, c-format
 msgid "Error parsing option %s"
 msgstr "Erro ao ler a opção %s"
 
-#: glib/goption.c:1563 glib/goption.c:1676
+#: glib/goption.c:1404 glib/goption.c:1517
 #, c-format
 msgid "Missing argument for %s"
 msgstr "Falta argumento para %s"
 
-#: glib/goption.c:2186
+#: glib/goption.c:2024
 #, c-format
 msgid "Unknown option %s"
 msgstr "Opção %s desconhecida"
 
-#: glib/gregex.c:479
+#: glib/gregex.c:486
 msgid "corrupted object"
 msgstr "objeto corrompido"
 
-#: glib/gregex.c:481
+#: glib/gregex.c:488
 msgid "out of memory"
 msgstr "memória insuficiente"
 
-#: glib/gregex.c:487
-msgid "backtracking limit reached"
-msgstr "limite de backtracking alcançado"
-
-#: glib/gregex.c:498
+#: glib/gregex.c:503
 msgid "internal error"
 msgstr "erro interno"
 
-#: glib/gregex.c:500
+#: glib/gregex.c:505
 msgid "the pattern contains items not supported for partial matching"
 msgstr "o padrão contém itens sem suporte para correspondência parcial"
 
-#: glib/gregex.c:502
+#: glib/gregex.c:507
 msgid "back references as conditions are not supported for partial matching"
 msgstr ""
 "não há suporte à referência retroativa como condição para correspondência "
 "parcial"
 
-#: glib/gregex.c:508
+#: glib/gregex.c:513
 msgid "recursion limit reached"
 msgstr "limite de recursão alcançado"
 
-#: glib/gregex.c:510
+#: glib/gregex.c:515
 msgid "bad offset"
 msgstr "deslocamento ruim"
 
-#: glib/gregex.c:512
+#: glib/gregex.c:517
 msgid "recursion loop"
 msgstr "recursão infinita"
 
 #. should not happen in GRegex since we check modes before each match
-#: glib/gregex.c:515
+#: glib/gregex.c:520
 msgid "matching mode is requested that was not compiled for JIT"
 msgstr "é solicitado o modo de correspondência que não foi compilado para JIT"
 
-#: glib/gregex.c:536 glib/gregex.c:1838
+#: glib/gregex.c:541 glib/gregex.c:1869
 msgid "unknown error"
 msgstr "erro desconhecido"
 
-#: glib/gregex.c:557
+#: glib/gregex.c:562
 msgid "\\ at end of pattern"
 msgstr "\\ no fim do padrão"
 
-#: glib/gregex.c:561
+#: glib/gregex.c:566
 msgid "\\c at end of pattern"
 msgstr "\\c no fim do padrão"
 
-#: glib/gregex.c:566
+#: glib/gregex.c:571
 msgid "unrecognized character following \\"
 msgstr "caractere não reconhecido seguindo \\"
 
-#: glib/gregex.c:570
+#: glib/gregex.c:575
 msgid "numbers out of order in {} quantifier"
 msgstr "números fora de ordem no quantificador {}"
 
-#: glib/gregex.c:574
+#: glib/gregex.c:579
 msgid "number too big in {} quantifier"
 msgstr "número grande demais no quantificador {}"
 
-#: glib/gregex.c:578
+#: glib/gregex.c:583
 msgid "missing terminating ] for character class"
 msgstr "terminação ] em falta para classe de caracteres"
 
-#: glib/gregex.c:582
+#: glib/gregex.c:587
 msgid "invalid escape sequence in character class"
 msgstr "sequência de escape inválida na classe de caracteres"
 
-#: glib/gregex.c:586
+#: glib/gregex.c:591
 msgid "range out of order in character class"
 msgstr "intervalo fora de ordem na classe de caracteres"
 
-#: glib/gregex.c:591
+#: glib/gregex.c:596
 msgid "nothing to repeat"
 msgstr "nada a repetir"
 
-#: glib/gregex.c:595
+#: glib/gregex.c:600
 msgid "unrecognized character after (? or (?-"
 msgstr "caractere não reconhecido após (? ou (?-"
 
-#: glib/gregex.c:599
+#: glib/gregex.c:604
 msgid "POSIX named classes are supported only within a class"
 msgstr "Classes nomeadas POSIX têm suporte apenas dentro de uma classe"
 
-#: glib/gregex.c:603
+#: glib/gregex.c:608
 msgid "POSIX collating elements are not supported"
 msgstr "Elementos de arranjo POSIX sem suporte"
 
-#: glib/gregex.c:609
+#: glib/gregex.c:614
 msgid "missing terminating )"
 msgstr "faltando terminação )"
 
-#: glib/gregex.c:613
+#: glib/gregex.c:618
 msgid "reference to non-existent subpattern"
 msgstr "referência a subpadrão não existente"
 
-#: glib/gregex.c:617
+#: glib/gregex.c:622
 msgid "missing ) after comment"
 msgstr "faltando ) após o comentário"
 
-#: glib/gregex.c:621
+#: glib/gregex.c:626
 msgid "regular expression is too large"
 msgstr "expressão regular é grande demais"
 
-#: glib/gregex.c:625
+#: glib/gregex.c:630
 msgid "malformed number or name after (?("
 msgstr "número mal formado ou nome após (?("
 
-#: glib/gregex.c:629
+#: glib/gregex.c:634
 msgid "lookbehind assertion is not fixed length"
 msgstr "declaração de verificação anterior não é de largura fixa"
 
-#: glib/gregex.c:633
+#: glib/gregex.c:638
 msgid "conditional group contains more than two branches"
 msgstr "grupo condicional contém mais que duas ramificações"
 
-#: glib/gregex.c:637
+#: glib/gregex.c:642
 msgid "assertion expected after (?("
 msgstr "esperava-se declaração após (?("
 
-#: glib/gregex.c:641
+#: glib/gregex.c:646
 msgid "a numbered reference must not be zero"
 msgstr "uma referência numerada não pode ser zero"
 
-#: glib/gregex.c:645
+#: glib/gregex.c:650
 msgid "unknown POSIX class name"
 msgstr "nome de classe POSIX desconhecido"
 
-#: glib/gregex.c:650
+#: glib/gregex.c:655
 msgid "character value in \\x{...} sequence is too large"
 msgstr "valor de caractere na sequência \\x{...} é grande demais"
 
-#: glib/gregex.c:654
+#: glib/gregex.c:659
 msgid "\\C not allowed in lookbehind assertion"
 msgstr "\\C não permitido na declaração de verificação anterior"
 
-#: glib/gregex.c:658
+#: glib/gregex.c:663
 msgid "missing terminator in subpattern name"
 msgstr "terminação em falta no nome do subpadrão"
 
-#: glib/gregex.c:662
+#: glib/gregex.c:667
 msgid "two named subpatterns have the same name"
 msgstr "dois subpadrões nomeados têm o mesmo nome"
 
-#: glib/gregex.c:666
+#: glib/gregex.c:671
 msgid "malformed \\P or \\p sequence"
 msgstr "sequência \\P ou \\p mal formada"
 
-#: glib/gregex.c:670
+#: glib/gregex.c:675
 msgid "unknown property name after \\P or \\p"
 msgstr "nome de propriedade desconhecido após \\P ou \\p"
 
-#: glib/gregex.c:674
+#: glib/gregex.c:679
 msgid "subpattern name is too long (maximum 32 characters)"
 msgstr "nome de subpadrão é grande demais (máximo 32 caracteres)"
 
-#: glib/gregex.c:678
+#: glib/gregex.c:683
 msgid "too many named subpatterns (maximum 10,000)"
 msgstr "excesso de subpadrões nomeados (máximo 10.000)"
 
-#: glib/gregex.c:682
+#: glib/gregex.c:687
 msgid "octal value is greater than \\377"
 msgstr "valor octal é maior que \\377"
 
-#: glib/gregex.c:686
+#: glib/gregex.c:691
 msgid "DEFINE group contains more than one branch"
 msgstr "O grupo DEFINE contém mais que uma ramificação"
 
-#: glib/gregex.c:690
+#: glib/gregex.c:695
 msgid "inconsistent NEWLINE options"
 msgstr "opções do NEWLINE inconsistentes"
 
 # obs.: "angle-brackets" não existe no Brasil, mas existe brackets, que é '<' e '>'
-#: glib/gregex.c:694
+#: glib/gregex.c:699
 msgid ""
 "\\g is not followed by a braced, angle-bracketed, or quoted name or number, "
 "or by a plain number"
@@ -5763,234 +5967,234 @@ msgstr ""
 "\\g não é seguido por um número ou nome entre aspas, chaves ou sinais de "
 "menor que ou maior que um número diferente de zero opcionalmente entre chaves"
 
-#: glib/gregex.c:699
+#: glib/gregex.c:704
 msgid "an argument is not allowed for (*ACCEPT), (*FAIL), or (*COMMIT)"
 msgstr "um argumento não é permitido para (*ACCEPT), (*FAIL) ou (*COMMIT)"
 
-#: glib/gregex.c:703
+#: glib/gregex.c:708
 msgid "(*VERB) not recognized"
 msgstr "(*VERB) não reconhecido"
 
-#: glib/gregex.c:707
+#: glib/gregex.c:712
 msgid "number is too big"
 msgstr "número é muito grande"
 
-#: glib/gregex.c:711
+#: glib/gregex.c:716
 msgid "missing subpattern name after (?&"
 msgstr "faltando o nome do subpadrão após (?&"
 
-#: glib/gregex.c:715
+#: glib/gregex.c:720
 msgid "different names for subpatterns of the same number are not allowed"
 msgstr "não é permitido dois subpadrões nomeados com o mesmo nome"
 
-#: glib/gregex.c:719
+#: glib/gregex.c:724
 msgid "(*MARK) must have an argument"
 msgstr "(*MARK) deve possuir um argumento"
 
-#: glib/gregex.c:723
+#: glib/gregex.c:728
 msgid "\\c must be followed by an ASCII character"
 msgstr "\\c pode ser seguido por um caractere ASCII"
 
 # obs.: "angle-brackets" não existe no Brasil, mas existe brackets, que é '<' e '>'
-#: glib/gregex.c:727
+#: glib/gregex.c:732
 msgid "\\k is not followed by a braced, angle-bracketed, or quoted name"
 msgstr ""
 "\\k não é seguido por um nome entre aspas, chaves ou sinais de menor que ou "
 "maior que"
 
-#: glib/gregex.c:731
+#: glib/gregex.c:736
 msgid "\\N is not supported in a class"
 msgstr "\\N não é suportado em uma classe"
 
-#: glib/gregex.c:735
+#: glib/gregex.c:740
 msgid "name is too long in (*MARK), (*PRUNE), (*SKIP), or (*THEN)"
 msgstr "nome é muito cumprido em (*MARK), (*PRUNE), (*SKIP) ou (*THEN)"
 
-#: glib/gregex.c:739 glib/gregex.c:875
+#: glib/gregex.c:744 glib/gregex.c:880
 msgid "code overflow"
 msgstr "estouro de código"
 
-#: glib/gregex.c:743
+#: glib/gregex.c:748
 msgid "unrecognized character after (?P"
 msgstr "caractere não reconhecido após (?P"
 
-#: glib/gregex.c:747
+#: glib/gregex.c:752
 msgid "overran compiling workspace"
 msgstr "espaço de trabalho de compilação invadido"
 
-#: glib/gregex.c:751
+#: glib/gregex.c:756
 msgid "previously-checked referenced subpattern not found"
 msgstr "subpadrão de referência verificado anteriormente não localizado"
 
-#: glib/gregex.c:874 glib/gregex.c:1121 glib/gregex.c:2444
+#: glib/gregex.c:879 glib/gregex.c:1153 glib/gregex.c:2475
 #, c-format
 msgid "Error while matching regular expression %s: %s"
 msgstr "Erro ao coincidir expressão regular %s: %s"
 
-#: glib/gregex.c:1721
+#: glib/gregex.c:1753
 msgid "PCRE library is compiled without UTF8 support"
 msgstr "Biblioteca PCRE compilada sem suporte a UTF-8"
 
-#: glib/gregex.c:1729
+#: glib/gregex.c:1761
 msgid "PCRE library is compiled with incompatible options"
 msgstr "Biblioteca PCRE compilada com opções incompatíveis"
 
-#: glib/gregex.c:1847
+#: glib/gregex.c:1878
 #, c-format
 msgid "Error while compiling regular expression ‘%s’ at char %s: %s"
 msgstr "Erro ao compilar a expressão regular “%s” no caractere %s: %s"
 
-#: glib/gregex.c:2887
+#: glib/gregex.c:2918
 msgid "hexadecimal digit or “}” expected"
 msgstr "esperava-se dígito hexadecimal ou “}”"
 
-#: glib/gregex.c:2903
+#: glib/gregex.c:2934
 msgid "hexadecimal digit expected"
 msgstr "esperava-se dígito hexadecimal"
 
-#: glib/gregex.c:2943
+#: glib/gregex.c:2974
 msgid "missing “<” in symbolic reference"
 msgstr "“<” em falta na referência simbólica"
 
-#: glib/gregex.c:2952
+#: glib/gregex.c:2983
 msgid "unfinished symbolic reference"
 msgstr "referência simbólica inacabada"
 
-#: glib/gregex.c:2959
+#: glib/gregex.c:2990
 msgid "zero-length symbolic reference"
 msgstr "referência simbólica de comprimento zero"
 
-#: glib/gregex.c:2970
+#: glib/gregex.c:3001
 msgid "digit expected"
 msgstr "esperava-se dígito"
 
-#: glib/gregex.c:2988
+#: glib/gregex.c:3019
 msgid "illegal symbolic reference"
 msgstr "referência simbólica ilegal"
 
-#: glib/gregex.c:3051
+#: glib/gregex.c:3082
 msgid "stray final “\\”"
 msgstr "“\\” final errado"
 
-#: glib/gregex.c:3055
+#: glib/gregex.c:3086
 msgid "unknown escape sequence"
 msgstr "sequência de escape desconhecida"
 
-#: glib/gregex.c:3065
+#: glib/gregex.c:3096
 #, c-format
 msgid "Error while parsing replacement text “%s” at char %lu: %s"
 msgstr "Erro ao analisar texto de substituição “%s” no caractere %lu: %s"
 
-#: glib/gshell.c:98
+#: glib/gshell.c:84
 msgid "Quoted text doesn’t begin with a quotation mark"
 msgstr "Texto citado não começa com uma aspa"
 
-#: glib/gshell.c:188
+#: glib/gshell.c:174
 msgid "Unmatched quotation mark in command line or other shell-quoted text"
 msgstr "Aspa sem par na linha de comando ou outro texto de console"
 
-#: glib/gshell.c:594
+#: glib/gshell.c:580
 #, c-format
 msgid "Text ended just after a “\\” character. (The text was “%s”)"
 msgstr "Texto terminou logo após um caractere “\\”. (O texto era “%s”)"
 
-#: glib/gshell.c:601
+#: glib/gshell.c:587
 #, c-format
 msgid "Text ended before matching quote was found for %c. (The text was “%s”)"
 msgstr ""
 "Texto terminou antes da aspa equivalente ter sido localizada para %c. (texto "
 "era “%s”)"
 
-#: glib/gshell.c:613
+#: glib/gshell.c:599
 msgid "Text was empty (or contained only whitespace)"
 msgstr "Texto estava vazio (ou apenas continha espaços)"
 
-#: glib/gspawn.c:319
+#: glib/gspawn.c:242
 #, c-format
 msgid "Failed to read data from child process (%s)"
 msgstr "Falha ao ler dados de processo filho (%s)"
 
-#: glib/gspawn.c:471
+#: glib/gspawn.c:395
 #, c-format
 msgid "Unexpected error in reading data from a child process (%s)"
 msgstr "Erro inesperado na leitura de dados de um processo filho (%s)"
 
-#: glib/gspawn.c:556
+#: glib/gspawn.c:475
 #, c-format
 msgid "Unexpected error in waitpid() (%s)"
 msgstr "Erro inesperado em waitpid() (%s)"
 
-#: glib/gspawn.c:1175 glib/gspawn-win32.c:1503
+#: glib/gspawn.c:1097 glib/gspawn-win32.c:1575
 #, c-format
 msgid "Child process exited with code %ld"
 msgstr "Processo filho concluiu com código %ld"
 
-#: glib/gspawn.c:1183
+#: glib/gspawn.c:1105
 #, c-format
 msgid "Child process killed by signal %ld"
 msgstr "Processo filho foi terminado pelo sinal %ld"
 
-#: glib/gspawn.c:1190
+#: glib/gspawn.c:1112
 #, c-format
 msgid "Child process stopped by signal %ld"
 msgstr "Processo filho foi parado pelo sinal %ld"
 
-#: glib/gspawn.c:1197
+#: glib/gspawn.c:1119
 #, c-format
 msgid "Child process exited abnormally"
 msgstr "Processo filho concluiu anormalmente"
 
-#: glib/gspawn.c:2027 glib/gspawn-win32.c:393 glib/gspawn-win32.c:401
+#: glib/gspawn.c:1622 glib/gspawn-win32.c:472 glib/gspawn-win32.c:480
 #, c-format
 msgid "Failed to read from child pipe (%s)"
 msgstr "Falha ao ler de canal filho (%s)"
 
-#: glib/gspawn.c:2399
+#: glib/gspawn.c:2001
 #, c-format
 msgid "Failed to spawn child process “%s” (%s)"
 msgstr "Falha ao criar processo filho “%s” (%s)"
 
-#: glib/gspawn.c:2525
+#: glib/gspawn.c:2125
 #, c-format
 msgid "Failed to fork (%s)"
 msgstr "Falha no fork (%s)"
 
-#: glib/gspawn.c:2685 glib/gspawn-win32.c:424
+#: glib/gspawn.c:2286 glib/gspawn-win32.c:503
 #, c-format
 msgid "Failed to change to directory “%s” (%s)"
 msgstr "Falha ao ir para diretório “%s” (%s)"
 
-#: glib/gspawn.c:2695
+#: glib/gspawn.c:2296
 #, c-format
 msgid "Failed to execute child process “%s” (%s)"
 msgstr "Falha ao executar processo filho “%s” (%s)"
 
-#: glib/gspawn.c:2705
+#: glib/gspawn.c:2306
 #, c-format
 msgid "Failed to open file to remap file descriptor (%s)"
 msgstr "Falha ao abrir o arquivo para remapear o descritor de arquivo (%s)"
 
-#: glib/gspawn.c:2713
+#: glib/gspawn.c:2314
 #, c-format
 msgid "Failed to duplicate file descriptor for child process (%s)"
 msgstr "Falha ao duplicar o descritor de arquivo para o processo filho (%s)"
 
-#: glib/gspawn.c:2722
+#: glib/gspawn.c:2323
 #, c-format
 msgid "Failed to fork child process (%s)"
 msgstr "Falha no fork de processo filho (%s)"
 
-#: glib/gspawn.c:2730
+#: glib/gspawn.c:2331
 #, c-format
 msgid "Failed to close file descriptor for child process (%s)"
 msgstr "Falha ao fechar o descritor de arquivo para o processo filho (%s)"
 
-#: glib/gspawn.c:2738
+#: glib/gspawn.c:2339
 #, c-format
 msgid "Unknown error executing child process “%s”"
 msgstr "Erro desconhecido ao executar processo filho “%s”"
 
-#: glib/gspawn.c:2762
+#: glib/gspawn.c:2363
 #, c-format
 msgid "Failed to read enough data from child pid pipe (%s)"
 msgstr "Falha ao ler dados suficientes de canal pid do filho (%s)"
@@ -6000,46 +6204,46 @@ msgstr "Falha ao ler dados suficientes de canal pid do filho (%s)"
 msgid "Invalid source FDs argument"
 msgstr "Argumento de FDs de origem inválido"
 
-#: glib/gspawn-win32.c:337
+#: glib/gspawn-win32.c:416
 msgid "Failed to read data from child process"
 msgstr "Falha ao ler dados de processo filho"
 
-#: glib/gspawn-win32.c:430 glib/gspawn-win32.c:435 glib/gspawn-win32.c:561
+#: glib/gspawn-win32.c:509 glib/gspawn-win32.c:514 glib/gspawn-win32.c:640
 #, c-format
 msgid "Failed to execute child process (%s)"
 msgstr "Falha ao executar processo filho (%s)"
 
-#: glib/gspawn-win32.c:440
+#: glib/gspawn-win32.c:519
 #, c-format
 msgid "Failed to dup() in child process (%s)"
 msgstr "Falha em dup() no processo filho (%s)"
 
-#: glib/gspawn-win32.c:511
+#: glib/gspawn-win32.c:590
 #, c-format
 msgid "Invalid program name: %s"
 msgstr "Nome de programa inválido: %s"
 
-#: glib/gspawn-win32.c:521 glib/gspawn-win32.c:868
+#: glib/gspawn-win32.c:600 glib/gspawn-win32.c:940
 #, c-format
 msgid "Invalid string in argument vector at %d: %s"
 msgstr "String inválida no vetor de argumentos em %d: %s"
 
-#: glib/gspawn-win32.c:532 glib/gspawn-win32.c:884
+#: glib/gspawn-win32.c:611 glib/gspawn-win32.c:956
 #, c-format
 msgid "Invalid string in environment: %s"
 msgstr "String inválida no ambiente: %s"
 
-#: glib/gspawn-win32.c:864
+#: glib/gspawn-win32.c:936
 #, c-format
 msgid "Invalid working directory: %s"
 msgstr "Diretório de trabalho inválido: %s"
 
-#: glib/gspawn-win32.c:929
+#: glib/gspawn-win32.c:1001
 #, c-format
 msgid "Failed to execute helper program (%s)"
 msgstr "Falha ao executar programa auxiliar (%s)"
 
-#: glib/gspawn-win32.c:1158
+#: glib/gspawn-win32.c:1230
 msgid ""
 "Unexpected error in g_io_channel_win32_poll() reading data from a child "
 "process"
@@ -6047,95 +6251,95 @@ msgstr ""
 "Erro inesperado no g_io_channel_win32_poll() ao ler dados de um processo "
 "filho"
 
-#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3475
+#: glib/gstrfuncs.c:3339 glib/gstrfuncs.c:3441
 msgid "Empty string is not a number"
 msgstr "Texto vazio não é um número"
 
-#: glib/gstrfuncs.c:3397
+#: glib/gstrfuncs.c:3363
 #, c-format
 msgid "“%s” is not a signed number"
 msgstr "“%s” não é um número assinado"
 
-#: glib/gstrfuncs.c:3407 glib/gstrfuncs.c:3511
+#: glib/gstrfuncs.c:3373 glib/gstrfuncs.c:3477
 #, c-format
 msgid "Number “%s” is out of bounds [%s, %s]"
 msgstr "O número “%s” está fora dos limites [%s, %s]"
 
-#: glib/gstrfuncs.c:3501
+#: glib/gstrfuncs.c:3467
 #, c-format
 msgid "“%s” is not an unsigned number"
 msgstr "“%s” não é um número não assinado"
 
-#: glib/guri.c:317
+#: glib/guri.c:309
 #, no-c-format
 msgid "Invalid %-encoding in URI"
 msgstr "%-encoding inválida na URI"
 
-#: glib/guri.c:334
+#: glib/guri.c:326
 msgid "Illegal character in URI"
 msgstr "Caractere ilegal na URI"
 
-#: glib/guri.c:368
+#: glib/guri.c:360
 msgid "Non-UTF-8 characters in URI"
 msgstr "Caracteres não UTF-8 na URI"
 
-#: glib/guri.c:548
+#: glib/guri.c:540
 #, c-format
 msgid "Invalid IPv6 address ‘%.*s’ in URI"
 msgstr "Endereço IPv6 “%.*s” inválido na URI"
 
-#: glib/guri.c:603
+#: glib/guri.c:595
 #, c-format
 msgid "Illegal encoded IP address ‘%.*s’ in URI"
 msgstr "Endereço IP “%.*s” codificado ilegal na URI"
 
-#: glib/guri.c:615
+#: glib/guri.c:607
 #, c-format
 msgid "Illegal internationalized hostname ‘%.*s’ in URI"
 msgstr "Nome de máquina internacionalizado ilegal “%.*s” na URI"
 
-#: glib/guri.c:647 glib/guri.c:659
+#: glib/guri.c:639 glib/guri.c:651
 #, c-format
 msgid "Could not parse port ‘%.*s’ in URI"
 msgstr "Não foi possível analisar a porta “%.*s” na URI"
 
-#: glib/guri.c:666
+#: glib/guri.c:658
 #, c-format
 msgid "Port ‘%.*s’ in URI is out of range"
 msgstr "A porta “%.*s” na URI está fora dos limites"
 
-#: glib/guri.c:1226 glib/guri.c:1290
+#: glib/guri.c:1221 glib/guri.c:1285
 #, c-format
 msgid "URI ‘%s’ is not an absolute URI"
 msgstr "A URI “%s” não é uma URI absoluta"
 
-#: glib/guri.c:1232
+#: glib/guri.c:1227
 #, c-format
 msgid "URI ‘%s’ has no host component"
 msgstr "A URI “%s” possui nenhum componente de host"
 
-#: glib/guri.c:1462
+#: glib/guri.c:1457
 msgid "URI is not absolute, and no base URI was provided"
 msgstr "A URI não é absoluta, e nenhuma URI base foi fornecida"
 
-#: glib/guri.c:2248
+#: glib/guri.c:2243
 msgid "Missing ‘=’ and parameter value"
 msgstr "Faltando “=” e valor de parâmetro"
 
-#: glib/gutf8.c:834
+#: glib/gutf8.c:900
 msgid "Failed to allocate memory"
 msgstr "Falha ao alocar memória"
 
-#: glib/gutf8.c:967
+#: glib/gutf8.c:1033
 msgid "Character out of range for UTF-8"
 msgstr "Caractere fora do limite para UTF-8"
 
-#: glib/gutf8.c:1069 glib/gutf8.c:1078 glib/gutf8.c:1208 glib/gutf8.c:1217
-#: glib/gutf8.c:1356 glib/gutf8.c:1453
+#: glib/gutf8.c:1135 glib/gutf8.c:1144 glib/gutf8.c:1274 glib/gutf8.c:1283
+#: glib/gutf8.c:1422 glib/gutf8.c:1519
 msgid "Invalid sequence in conversion input"
 msgstr "Sequência inválida na conversão da entrada"
 
-#: glib/gutf8.c:1367 glib/gutf8.c:1464
+#: glib/gutf8.c:1433 glib/gutf8.c:1530
 msgid "Character out of range for UTF-16"
 msgstr "Caractere fora do limite para UTF-16"
 
@@ -6199,65 +6403,65 @@ msgstr "PiB"
 msgid "EiB"
 msgstr "EiB"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 kb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 kbit"
 #: glib/gutils.c:2994
-msgid "kb"
-msgstr "kb"
+msgid "kbit"
+msgstr "kbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mbit"
 #: glib/gutils.c:2996
-msgid "Mb"
-msgstr "Mb"
+msgid "Mbit"
+msgstr "Mbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gbit"
 #: glib/gutils.c:2998
-msgid "Gb"
-msgstr "Gb"
+msgid "Gbit"
+msgstr "Gbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tbit"
 #: glib/gutils.c:3000
-msgid "Tb"
-msgstr "Tb"
+msgid "Tbit"
+msgstr "Tbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pbit"
 #: glib/gutils.c:3002
-msgid "Pb"
-msgstr "Pb"
+msgid "Pbit"
+msgstr "Pbit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eb"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Ebit"
 #: glib/gutils.c:3004
-msgid "Eb"
-msgstr "Eb"
+msgid "Ebit"
+msgstr "Ebit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Kibit"
 #: glib/gutils.c:3008
-msgid "Kib"
-msgstr "Kib"
+msgid "Kibit"
+msgstr "Kibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Mibit"
 #: glib/gutils.c:3010
-msgid "Mib"
-msgstr "Mib"
+msgid "Mibit"
+msgstr "Mibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Gibit"
 #: glib/gutils.c:3012
-msgid "Gib"
-msgstr "Gib"
+msgid "Gibit"
+msgstr "Gibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Tibit"
 #: glib/gutils.c:3014
-msgid "Tib"
-msgstr "Tib"
+msgid "Tibit"
+msgstr "Tibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Pibit"
 #: glib/gutils.c:3016
-msgid "Pib"
-msgstr "Pib"
+msgid "Pibit"
+msgstr "Pibit"
 
-#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eib"
+#. Translators: A unit symbol for size formatting, showing for example: "13.0 Eibit"
 #: glib/gutils.c:3018
-msgid "Eib"
-msgstr "Eib"
+msgid "Eibit"
+msgstr "Eibit"
 
 #: glib/gutils.c:3056
 msgid "byte"
@@ -6362,9 +6566,57 @@ msgstr "%.1f PB"
 msgid "%.1f EB"
 msgstr "%.1f EB"
 
+#~ msgid ""
+#~ "METHOD_RETURN message: REPLY_SERIAL header field is missing or invalid"
+#~ msgstr ""
+#~ "Mensagem de METHOD_RETURN: O campo de cabeçalho REPLY_SERIAL está "
+#~ "faltando ou é inválido"
+
+#~ msgid "kb"
+#~ msgstr "kb"
+
+#~ msgid "Mb"
+#~ msgstr "Mb"
+
+#~ msgid "Gb"
+#~ msgstr "Gb"
+
+#~ msgid "Tb"
+#~ msgstr "Tb"
+
+#~ msgid "Pb"
+#~ msgstr "Pb"
+
+#~ msgid "Eb"
+#~ msgstr "Eb"
+
+#~ msgid "Kib"
+#~ msgstr "Kib"
+
+#~ msgid "Mib"
+#~ msgstr "Mib"
+
+#~ msgid "Gib"
+#~ msgstr "Gib"
+
+#~ msgid "Tib"
+#~ msgstr "Tib"
+
+#~ msgid "Pib"
+#~ msgstr "Pib"
+
+#~ msgid "Eib"
+#~ msgstr "Eib"
+
+#~ msgid "GApplication options"
+#~ msgstr "Opções do GApplication"
+
 #, c-format
-#~ msgid "edit name: %s\n"
-#~ msgstr "nome para edição: %s\n"
+#~ msgid "The local file URI “%s” may not include a “#”"
+#~ msgstr "O URI de arquivo local “%s” não pode incluir um “#”"
+
+#~ msgid "backtracking limit reached"
+#~ msgstr "limite de backtracking alcançado"
 
 #~ msgid "internal error or corrupted object"
 #~ msgstr "erro interno ou objeto corrompido"
@@ -6550,9 +6802,6 @@ msgstr "%.1f EB"
 #~ msgid "[ARGS...]"
 #~ msgstr "[ARGUMENTOS…]"
 
-#~ msgid "Failed to create temp file: %s"
-#~ msgstr "Falha ao criar um arquivo temporário: %s"
-
 #~ msgid ""
 #~ "Message has %d file descriptors but the header field indicates %d file "
 #~ "descriptors"
index 12c5b9f..9ba1fb0 100644 (file)
@@ -1,6 +1,10 @@
 # Copyright 2024 Collabora Ltd.
 # SPDX-License-Identifier: LGPL-2.1-or-later
 
+test_env = environment()
+test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
+test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
+
 lint_scripts = [
   'black.sh',
   'flake8.sh',
@@ -12,7 +16,7 @@ if have_bash
   foreach test_name : lint_scripts
     test(
       test_name, files(test_name),
-      env : common_test_env,
+      env : test_env,
       suite : ['lint', 'no-valgrind'],
       protocol : 'tap',
     )
@@ -23,7 +27,7 @@ test(
   'check-missing-install-tag.py',
   python,
   args : ['-B', files('check-missing-install-tag.py')],
-  env : common_test_env,
+  env : test_env,
   suite : ['lint', 'no-valgrind'],
   protocol : 'tap',
-)
\ No newline at end of file
+)