README.md 2.51 KB
Newer Older
Sébastien Wilmet's avatar
Sébastien Wilmet committed
1
2
Devhelp
=======
Johan Dahlin's avatar
Johan Dahlin committed
3

Emmanuele Bassi's avatar
Emmanuele Bassi committed
4
5
6
7
8
9
10
11
12
Description
-----------

Devhelp is a developer tool for browsing and searching API documentation.
It provides an easy way to navigate through libraries and to search by
function, struct, or macro.

The documentation must be installed locally, so an internet connection is
not needed to use Devhelp.
Sébastien Wilmet's avatar
Sébastien Wilmet committed
13

Emmanuele Bassi's avatar
Emmanuele Bassi committed
14
15
16
17
18
19
20
21
Devhelp works natively with the documentation generators used by the GNOME
project libraries. Other development platforms can be supported as well, as
long as the API documentation is available in HTML and a `*.devhelp2` index
file is generated.

Devhelp integrates with other applications such as Glade, Builder or
Anjuta, and plugins are available for different text editors (gedit, Vim,
Emacs, Geany, …).
Sébastien Wilmet's avatar
Sébastien Wilmet committed
22

23
24
25
26
27
Installation of the Devhelp Flatpak
-----------------------------------

- [Devhelp on Flathub](https://flathub.org/apps/details/org.gnome.Devhelp)

28
29
30
How to contribute
-----------------

Emmanuele Bassi's avatar
Emmanuele Bassi committed
31
See the [contribution guide](CONTRIBUTING.md).
32

Sébastien Wilmet's avatar
Sébastien Wilmet committed
33
34
Dependencies
------------
Sébastien Wilmet's avatar
Sébastien Wilmet committed
35

36
37
38
- GLib
- GTK
- WebKitGTK
39
- gsettings-desktop-schemas
Johan Dahlin's avatar
Johan Dahlin committed
40

41
42
43
Integration with other developer tools
--------------------------------------

44
45
Devhelp provides some command line options, such as `--search` and
`--search-assistant`. A text editor plugin can for example launch the command
46
`devhelp --search function_name` when a keyboard shortcut is pressed, with the
47
`function_name` under the cursor.
48

Sébastien Wilmet's avatar
Sébastien Wilmet committed
49
Devhelp also provides a shared library, to integrate the GTK widgets inside an
50
51
IDE. It is used for example by Builder and Anjuta.

52
For the `--search` command line option, see the class description of
Emmanuele Bassi's avatar
Emmanuele Bassi committed
53
`DhKeywordModel`, the search string supports additional features useful for IDEs
54
55
or other developer tools.

56
57
Other documentation
-------------------
58

59
60
61
62
63
64
- There is user documentation written in the Mallard format in the `help/C/`
  directory. You can open that documentation with the `yelp help/C/` command,
  or pressing F1 in the Devhelp application.

- There is an API reference manual for the libdevhelp that can be built with
  GTK-Doc, see the `gtk_doc` build option.
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81

Default development branch
--------------------------

The default development branch of Devhelp has been renamed to `main`. If you
have just cloned the Devhelp repository, you don't need to change anything.
If you have an older local checkout, you can use these commands to switch
from the old default branch name to the new one:

```
git switch master
git branch -m master main
git fetch
git branch --unset-upstream
git branch -u origin/main
git symbolic-ref refs/remotes/origin/HEAD refs/remotes/origin/main
```