summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2022-08-10 21:15:44 +0200
committerAntónio Fernandes <antoniof@gnome.org>2022-09-04 00:03:02 +0100
commitd47403bcede0f331c04c7fb28cec2583fed16724 (patch)
tree8343f429364c3740addbc2447554a4048dffe15b
parenta7fab868caf0fabb03a6b076e95128e2e7a3935b (diff)
downloadnautilus-d47403bcede0f331c04c7fb28cec2583fed16724.tar.gz
docs: Switch to gi-docgen
-rw-r--r--docs/reference/libnautilus-extension/libnautilus-extension-docs.xml39
-rw-r--r--docs/reference/libnautilus-extension/libnautilus-extension-overrides.txt0
-rw-r--r--docs/reference/libnautilus-extension/libnautilus-extension-sections.txt154
-rw-r--r--docs/reference/libnautilus-extension/meson.build20
-rw-r--r--docs/reference/libnautilus-extension/version.xml.in1
-rw-r--r--docs/reference/meson.build32
-rw-r--r--docs/reference/nautilus.toml.in22
-rw-r--r--docs/reference/urlmap.js9
-rw-r--r--libnautilus-extension/meson.build2
-rw-r--r--meson.build4
10 files changed, 66 insertions, 217 deletions
diff --git a/docs/reference/libnautilus-extension/libnautilus-extension-docs.xml b/docs/reference/libnautilus-extension/libnautilus-extension-docs.xml
deleted file mode 100644
index c26ced407..000000000
--- a/docs/reference/libnautilus-extension/libnautilus-extension-docs.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0"?>
-<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
-<!ENTITY version SYSTEM "version.xml">
-]>
-
-<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude">
- <bookinfo>
- <title>Nautilus Extension Reference Manual</title>
- <releaseinfo>For Nautilus-Extension &version;</releaseinfo>
-
- </bookinfo>
-
- <part>
- <title>API Reference</title>
-
- <chapter>
- <title>Core Classes</title>
- <xi:include href="xml/nautilus-column.xml" />
- <xi:include href="xml/nautilus-file-info.xml" />
- <xi:include href="xml/nautilus-menu.xml" />
- </chapter>
-
- <xi:include href="xml/nautilus-extension.xml" />
-
- <chapter>
- <title>Extension Interfaces</title>
- <xi:include href="xml/nautilus-column-provider.xml" />
- <xi:include href="xml/nautilus-info-provider.xml" />
- <xi:include href="xml/nautilus-menu-provider.xml" />
- </chapter>
-
- </part>
- <index>
- <title id="index-all">Index</title>
- </index>
-
- <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include>
-</book>
diff --git a/docs/reference/libnautilus-extension/libnautilus-extension-overrides.txt b/docs/reference/libnautilus-extension/libnautilus-extension-overrides.txt
deleted file mode 100644
index e69de29bb..000000000
--- a/docs/reference/libnautilus-extension/libnautilus-extension-overrides.txt
+++ /dev/null
diff --git a/docs/reference/libnautilus-extension/libnautilus-extension-sections.txt b/docs/reference/libnautilus-extension/libnautilus-extension-sections.txt
deleted file mode 100644
index 6b918209f..000000000
--- a/docs/reference/libnautilus-extension/libnautilus-extension-sections.txt
+++ /dev/null
@@ -1,154 +0,0 @@
-<INCLUDE>nautilus-extension.h</INCLUDE>
-
-<SECTION>
-<FILE>nautilus-extension</FILE>
-nautilus_module_initialize
-nautilus_module_shutdown
-nautilus_module_list_types
-</SECTION>
-
-<SECTION>
-<FILE>nautilus-menu-provider</FILE>
-NautilusMenuProvider
-NautilusMenuProviderInterface
-nautilus_menu_provider_get_file_items
-nautilus_menu_provider_get_background_items
-nautilus_menu_provider_emit_items_updated_signal
-
-<SUBSECTION Standard>
-NAUTILUS_MENU_PROVIDER
-NAUTILUS_IS_MENU_PROVIDER
-NAUTILUS_TYPE_MENU_PROVIDER
-NAUTILUS_PROVIDER_GET_IFACE
-
-<SUBSECTION Private>
-nautilus_menu_provider_get_type
-</SECTION>
-
-<SECTION>
-<FILE>nautilus-menu</FILE>
-NautilusMenu
-NautilusMenuItem
-nautilus_menu_new
-nautilus_menu_append_item
-nautilus_menu_get_items
-nautilus_menu_item_list_free
-nautilus_menu_item_new
-nautilus_menu_item_activate
-nautilus_menu_item_set_submenu
-
-<SUBSECTION Standard>
-NAUTILUS_MENU
-NAUTILUS_IS_MENU
-NAUTILUS_TYPE_MENU
-NAUTILUS_MENU_CLASS
-NAUTILUS_IS_MENU_CLASS
-NAUTILUS_MENU_GET_CLASS
-NAUTILUS_MENU_ITEM
-NAUTILUS_IS_MENU_ITEM
-NAUTILUS_TYPE_MENU_ITEM
-NAUTILUS_MENU_ITEM_CLASS
-NAUTILUS_IS_MENU_ITEM_CLASS
-NAUTILUS_MENU_ITEM_GET_CLASS
-
-<SUBSECTION Private>
-nautilus_menu_get_type
-nautilus_menu_item_get_type
-</SECTION>
-
-<SECTION>
-<FILE>nautilus-column-provider</FILE>
-NautilusColumnProvider
-NautilusColumnProviderInterface
-nautilus_column_provider_get_columns
-
-<SUBSECTION Standard>
-NAUTILUS_COLUMN_PROVIDER
-NAUTILUS_IS_COLUMN_PROVIDER
-NAUTILUS_TYPE_COLUMN_PROVIDER
-NAUTILUS_COLUMN_PROVIDER_CLASS
-NAUTILUS_IS_COLUMN_PROVIDER_CLASS
-NAUTILUS_COLUMN_PROVIDER_GET_CLASS
-
-<SUBSECTION Private>
-nautilus_column_provider_get_type
-</SECTION>
-
-<SECTION>
-<FILE>nautilus-file-info</FILE>
-NautilusFile
-NautilusFileInfo
-NautilusFileInfoInterface
-nautilus_file_info_create
-nautilus_file_info_create_for_uri
-nautilus_file_info_lookup
-nautilus_file_info_lookup_for_uri
-nautilus_file_info_list_copy
-nautilus_file_info_list_free
-nautilus_file_info_is_gone
-nautilus_file_info_get_file_type
-nautilus_file_info_get_location
-nautilus_file_info_get_name
-nautilus_file_info_get_uri
-nautilus_file_info_get_activation_uri
-nautilus_file_info_get_parent_location
-nautilus_file_info_get_parent_uri
-nautilus_file_info_get_mount
-nautilus_file_info_get_uri_scheme
-nautilus_file_info_get_parent_info
-nautilus_file_info_get_mime_type
-nautilus_file_info_is_mime_type
-nautilus_file_info_is_directory
-nautilus_file_info_can_write
-nautilus_file_info_add_emblem
-nautilus_file_info_get_string_attribute
-nautilus_file_info_add_string_attribute
-nautilus_file_info_invalidate_extension_info
-
-<SUBSECTION Standard>
-NAUTILUS_FILE_INFO
-NAUTILUS_IS_FILE_INFO
-NAUTILUS_TYPE_FILE_INFO
-NAUTILUS_FILE_INFO_GET_IFACE
-
-<SUBSECTION Private>
-nautilus_file_info_get_type
-</SECTION>
-
-<SECTION>
-<FILE>nautilus-column</FILE>
-NautilusColumn
-nautilus_column_new
-
-<SUBSECTION Standard>
-NAUTILUS_COLUMN
-NAUTILUS_IS_COLUMN
-NAUTILUS_TYPE_COLUMN
-NAUTILUS_COLUMN_CLASS
-NAUTILUS_IS_COLUMN_CLASS
-NAUTILUS_COLUMN_GET_CLASS
-
-<SUBSECTION Private>
-nautilus_column_get_type
-</SECTION>
-
-<SECTION>
-<FILE>nautilus-info-provider</FILE>
-NautilusInfoProvider
-NautilusInfoProviderInterface
-NautilusOperationHandle
-NautilusOperationResult
-nautilus_info_provider_update_file_info
-nautilus_info_provider_cancel_update
-nautilus_info_provider_update_complete_invoke
-
-<SUBSECTION Standard>
-NAUTILUS_INFO_PROVIDER
-NAUTILUS_IS_INFO_PROVIDER
-NAUTILUS_TYPE_INFO_PROVIDER
-NAUTILUS_INFO_PROVIDER_GET_IFACE
-
-<SUBSECTION Private>
-nautilus_info_provider_get_type
-</SECTION>
-
diff --git a/docs/reference/libnautilus-extension/meson.build b/docs/reference/libnautilus-extension/meson.build
deleted file mode 100644
index 32af79e69..000000000
--- a/docs/reference/libnautilus-extension/meson.build
+++ /dev/null
@@ -1,20 +0,0 @@
-docs_conf = configuration_data()
-docs_conf.set('NAUTILUS_EXTENSION_VERSION_INFO', nautilus_extension_version)
-
-configure_file(
- input: 'version.xml.in',
- output: 'version.xml',
- configuration: docs_conf
-)
-
-gnome.gtkdoc(
- 'libnautilus-extension',
- main_xml: 'libnautilus-extension-docs.xml',
- src_dir: join_paths(meson.project_source_root(), 'libnautilus-extension'),
- dependencies: nautilus_extension,
- install: true,
- scan_args: [
- '--ignore-headers=nautilus-extension-private.h',
- '--rebuild-types'
- ],
-)
diff --git a/docs/reference/libnautilus-extension/version.xml.in b/docs/reference/libnautilus-extension/version.xml.in
deleted file mode 100644
index 4ac82962c..000000000
--- a/docs/reference/libnautilus-extension/version.xml.in
+++ /dev/null
@@ -1 +0,0 @@
-@NAUTILUS_EXTENSION_VERSION_INFO@
diff --git a/docs/reference/meson.build b/docs/reference/meson.build
index a352d2680..b617ba914 100644
--- a/docs/reference/meson.build
+++ b/docs/reference/meson.build
@@ -1 +1,31 @@
-subdir('libnautilus-extension')
+toml_data = configuration_data()
+toml_data.set('VERSION', meson.project_version())
+
+nautilus_toml = configure_file(
+ input: 'nautilus.toml.in',
+ output: 'nautilus.toml',
+ configuration: toml_data,
+)
+
+custom_target(
+ 'nautilus-doc',
+ input: [
+ nautilus_toml,
+ nautilus_extension_gir[0],
+ ],
+ output: 'nautilus',
+ command: [
+ gi_docgen,
+ 'generate',
+ '--quiet',
+ '--add-include-path=@0@'.format(meson.project_source_root() / 'libnautilus-extension'),
+ '--config=@INPUT0@',
+ '--output-dir=@OUTPUT@',
+ '--no-namespace-dir',
+ '--content-dir=@0@'.format(meson.current_source_dir()),
+ '@INPUT1@',
+ ],
+ build_by_default: true,
+ install: true,
+ install_dir: docdir,
+)
diff --git a/docs/reference/nautilus.toml.in b/docs/reference/nautilus.toml.in
new file mode 100644
index 000000000..1d160ad62
--- /dev/null
+++ b/docs/reference/nautilus.toml.in
@@ -0,0 +1,22 @@
+[library]
+version = "@VERSION@"
+description = "Nautilus Extension API"
+license = "GPL-2.0-or-later"
+browse_url = "https://gitlab.gnome.org/GNOME/nautilus/"
+repository_url = "https://gitlab.gnome.org/GNOME/nautilus.git"
+devhelp = true
+search_index = true
+
+[theme]
+name = "basic"
+show_index_summary = true
+show_class_hierarchy = true
+
+[source-location]
+# The base URL for the web UI
+base_url = "https://gitlab.gnome.org/GNOME/nautilus/-/blob/master/"
+# The format for links, using "filename" and "line" for the format
+file_format = "{filename}#L{line}"
+
+[extra]
+urlmap_file = "urlmap.js"
diff --git a/docs/reference/urlmap.js b/docs/reference/urlmap.js
new file mode 100644
index 000000000..84b05c3e6
--- /dev/null
+++ b/docs/reference/urlmap.js
@@ -0,0 +1,9 @@
+// SPDX-FileCopyrightText: 2021 GNOME Foundation
+// SPDX-License-Identifier: LGPL-2.1-or-later
+
+// A map between namespaces and base URLs for their online documentation
+baseURLs = [
+ ["GLib", "https://docs.gtk.org/glib/"],
+ ["Gio", "https://docs.gtk.org/gio/"],
+ ["GObject", "https://docs.gtk.org/gobject/"],
+];
diff --git a/libnautilus-extension/meson.build b/libnautilus-extension/meson.build
index 457166993..3c2ab4bcf 100644
--- a/libnautilus-extension/meson.build
+++ b/libnautilus-extension/meson.build
@@ -65,7 +65,7 @@ libnautilus_extension = shared_library(
)
if get_option('introspection')
- gnome.generate_gir(
+ nautilus_extension_gir = gnome.generate_gir(
libnautilus_extension,
export_packages: [
'libnautilus-extension'
diff --git a/meson.build b/meson.build
index 99464e9ff..65dacb133 100644
--- a/meson.build
+++ b/meson.build
@@ -23,6 +23,7 @@ desktopdir = join_paths(datadir, 'applications')
includedir = get_option('includedir')
libdir = get_option('libdir')
localedir = get_option('localedir')
+docdir = datadir / 'doc'
extensiondir = join_paths(libdir, 'nautilus', 'extensions-' + nautilus_extension_version)
servicedir = join_paths(datadir, 'dbus-1', 'services')
@@ -121,6 +122,7 @@ endif
tracker_sparql = dependency('tracker-sparql-3.0')
xml = dependency('libxml-2.0', version: '>= 2.7.8')
cloudproviders = dependency('cloudproviders', version: '>= 0.3.1')
+gi_docgen = find_program('gi-docgen', required: get_option('docs'))
####################
# End dependencies #
@@ -203,7 +205,7 @@ subdirs = [
# Conditional building #
########################
-if get_option('docs')
+if gi_docgen.found()
subdirs += 'docs'
endif
if get_option('tests') != 'none'