The default timeout is 25s
[platform/upstream/glib.git] / docs / reference / glib / tmpl / keyfile.sgml
1 <!-- ##### SECTION Title ##### -->
2 Key-value file parser
3
4 <!-- ##### SECTION Short_Description ##### -->
5 parses <filename>.ini</filename>-like config files
6
7 <!-- ##### SECTION Long_Description ##### -->
8 <para>
9 #GKeyFile lets you parse, edit or create files containing groups of
10 key-value pairs, which we call <firstterm>key files</firstterm> for 
11 lack of a better name. Several freedesktop.org specifications use
12 key files now, e.g the 
13 <ulink url="http://freedesktop.org/Standards/desktop-entry-spec">Desktop
14 Entry Specification</ulink> and the
15 <ulink url="http://freedesktop.org/Standards/icon-theme-spec">Icon
16 Theme Specification</ulink>. 
17 </para>
18
19 <para>
20 The syntax of key files is described in detail in the 
21 <ulink url="http://freedesktop.org/Standards/desktop-entry-spec">Desktop
22 Entry Specification</ulink>, here is a quick summary: Key files
23 consists of groups of key-value pairs, interspersed with comments.
24 </para>
25
26 <informalexample><programlisting>
27 # this is just an example
28 # there can be comments before the first group
29
30 [First Group]
31
32 Name=Key File Example\tthis value shows\nescaping
33
34 # localized strings are stored in multiple key-value pairs
35 Welcome=Hello
36 Welcome[de]=Hallo
37 Welcome[fr_FR]=Bonjour
38 Welcome[it]=Ciao
39 Welcome[be@latin]=Hello
40
41 [Another Group]
42
43 Numbers=2;20;-200;0
44
45 Booleans=true;false;true;true
46
47 </programlisting></informalexample>
48
49 <para>
50 Lines beginning with a '#' and blank lines are considered comments.
51 </para>
52
53 <para>
54 Groups are started by a header line containing the group name enclosed
55 in '[' and ']', and ended implicitly by the start of the next group or
56 the end of the file. Each key-value pair must be contained in a group.
57 </para>
58
59 <para>
60 Key-value pairs generally have the form <literal>key=value</literal>, 
61 with the exception of localized strings, which have the form 
62 <literal>key[locale]=value</literal>, with a locale identifier of the form
63 <literal>lang_COUNTRY@MODIFIER</literal> where <literal>COUNTRY</literal> and 
64 <literal>MODIFIER</literal> are optional. Space before and after the 
65 '=' character are ignored. Newline, tab, carriage return and backslash 
66 characters in value are escaped as \n, \t, \r, and \\, respectively. 
67 To preserve leading spaces in values, these can also be escaped as \s.
68 </para>
69
70 <para>
71 Key files can store strings (possibly with localized variants), integers,
72 booleans and lists of these. Lists are separated by a separator character,
73 typically ';' or ','. To use the list separator character in a value in
74 a list, it has to be escaped by prefixing it with a backslash.
75 </para>
76
77 <para>
78 This syntax is obviously inspired by the <filename>.ini</filename> 
79 files commonly met on Windows, but there are some important differences:
80 <itemizedlist>
81 <listitem><para>
82 <filename>.ini</filename> files use the ';' character to begin comments,
83  key files use the '#' character.
84 </para></listitem>
85 <listitem><para>
86 Key files do not allow for ungrouped keys meaning only comments can precede the first group.
87 </para></listitem>
88 <listitem><para>
89 Key files are always encoded in UTF-8.
90 </para></listitem>
91 <listitem><para>
92 Key and Group names are case-sensitive, for example a group called
93 <literal>[GROUP]</literal> is a different group from <literal>[group]</literal>.
94 </para></listitem>
95 <listitem><para>
96 <filename>.ini</filename> files don't have a strongly typed boolean entry type, they only
97 have <literal>GetProfileInt</literal>. In <structname>GKeyFile</structname> only
98 <literal>true</literal> and <literal>false</literal> (in lower case) are allowed.
99 </para></listitem>
100 </itemizedlist>
101 </para>
102
103 <para>
104 Note that in contrast to the
105 <ulink url="http://freedesktop.org/Standards/desktop-entry-spec">Desktop
106 Entry Specification</ulink>, groups in key files may contain the same
107 key multiple times; the last entry wins. Key files may also contain
108 multiple groups with the same name; they are merged together.
109 Another difference is that keys and group names in key files are not
110 restricted to ASCII characters.
111 </para>
112
113 <!-- ##### SECTION See_Also ##### -->
114 <para>
115
116 </para>
117
118 <!-- ##### SECTION Stability_Level ##### -->
119
120
121 <!-- ##### SECTION Image ##### -->
122
123
124 <!-- ##### STRUCT GKeyFile ##### -->
125 <para>
126 The <structname>GKeyFile</structname> struct contains only private fields
127 and should not be used directly.
128 </para>
129
130
131 <!-- ##### MACRO G_KEY_FILE_ERROR ##### -->
132 <para>
133 Error domain for key file parsing. Errors in this domain will
134 be from the #GKeyFileError enumeration. See #GError for information on 
135 error domains.
136 </para>
137
138
139
140 <!-- ##### ENUM GKeyFileError ##### -->
141 <para>
142 Error codes returned by key file parsing.
143 </para>
144
145 @G_KEY_FILE_ERROR_UNKNOWN_ENCODING: the text being parsed was in an unknown encoding
146 @G_KEY_FILE_ERROR_PARSE: document was ill-formed
147 @G_KEY_FILE_ERROR_NOT_FOUND: the file was not found
148 @G_KEY_FILE_ERROR_KEY_NOT_FOUND: a requested key was not found
149 @G_KEY_FILE_ERROR_GROUP_NOT_FOUND: a requested group was not found
150 @G_KEY_FILE_ERROR_INVALID_VALUE: a value could not be parsed
151
152 <!-- ##### ENUM GKeyFileFlags ##### -->
153 <para>
154 Flags which influence the parsing.
155 </para>
156
157 @G_KEY_FILE_NONE: No flags, default behaviour
158 @G_KEY_FILE_KEEP_COMMENTS: Use this flag if you plan to write the (possibly modified)
159   contents of the key file back to a file; otherwise all comments will be lost when
160   the key file is written back.
161 @G_KEY_FILE_KEEP_TRANSLATIONS: Use this flag if you plan to write the (possibly modified)
162   contents of the key file back to a file; otherwise only the translations for the current
163   language will be written back.
164
165 <!-- ##### FUNCTION g_key_file_new ##### -->
166 <para>
167
168 </para>
169
170 @void: 
171 @Returns: 
172
173
174 <!-- ##### FUNCTION g_key_file_free ##### -->
175 <para>
176
177 </para>
178
179 @key_file: 
180
181
182 <!-- ##### FUNCTION g_key_file_set_list_separator ##### -->
183 <para>
184
185 </para>
186
187 @key_file: 
188 @separator: 
189
190
191 <!-- ##### FUNCTION g_key_file_load_from_file ##### -->
192 <para>
193
194 </para>
195
196 @key_file: 
197 @file: 
198 @flags: 
199 @error: 
200 @Returns: 
201
202
203 <!-- ##### FUNCTION g_key_file_load_from_data ##### -->
204 <para>
205
206 </para>
207
208 @key_file: 
209 @data: 
210 @length: 
211 @flags: 
212 @error: 
213 @Returns: 
214
215
216 <!-- ##### FUNCTION g_key_file_load_from_data_dirs ##### -->
217 <para>
218
219 </para>
220
221 @key_file: 
222 @file: 
223 @full_path: 
224 @flags: 
225 @error: 
226 @Returns: 
227
228
229 <!-- ##### FUNCTION g_key_file_load_from_dirs ##### -->
230 <para>
231
232 </para>
233
234 @key_file: 
235 @file: 
236 @search_dirs: 
237 @full_path: 
238 @flags: 
239 @error: 
240 @Returns: 
241
242
243 <!-- ##### FUNCTION g_key_file_to_data ##### -->
244 <para>
245
246 </para>
247
248 @key_file: 
249 @length: 
250 @error: 
251 @Returns: 
252
253
254 <!-- ##### FUNCTION g_key_file_get_start_group ##### -->
255 <para>
256
257 </para>
258
259 @key_file: 
260 @Returns: 
261
262
263 <!-- ##### FUNCTION g_key_file_get_groups ##### -->
264 <para>
265
266 </para>
267
268 @key_file: 
269 @length: 
270 @Returns: 
271
272
273 <!-- ##### FUNCTION g_key_file_get_keys ##### -->
274 <para>
275
276 </para>
277
278 @key_file: 
279 @group_name: 
280 @length: 
281 @error: 
282 @Returns: 
283
284
285 <!-- ##### FUNCTION g_key_file_has_group ##### -->
286 <para>
287
288 </para>
289
290 @key_file: 
291 @group_name: 
292 @Returns: 
293
294
295 <!-- ##### FUNCTION g_key_file_has_key ##### -->
296 <para>
297
298 </para>
299
300 @key_file: 
301 @group_name: 
302 @key: 
303 @error: 
304 @Returns: 
305
306
307 <!-- ##### FUNCTION g_key_file_get_value ##### -->
308 <para>
309
310 </para>
311
312 @key_file: 
313 @group_name: 
314 @key: 
315 @error: 
316 @Returns: 
317
318
319 <!-- ##### FUNCTION g_key_file_get_string ##### -->
320 <para>
321
322 </para>
323
324 @key_file: 
325 @group_name: 
326 @key: 
327 @error: 
328 @Returns: 
329
330
331 <!-- ##### FUNCTION g_key_file_get_locale_string ##### -->
332 <para>
333
334 </para>
335
336 @key_file: 
337 @group_name: 
338 @key: 
339 @locale: 
340 @error: 
341 @Returns: 
342
343
344 <!-- ##### FUNCTION g_key_file_get_boolean ##### -->
345 <para>
346
347 </para>
348
349 @key_file: 
350 @group_name: 
351 @key: 
352 @error: 
353 @Returns: 
354
355
356 <!-- ##### FUNCTION g_key_file_get_integer ##### -->
357 <para>
358
359 </para>
360
361 @key_file: 
362 @group_name: 
363 @key: 
364 @error: 
365 @Returns: 
366
367
368 <!-- ##### FUNCTION g_key_file_get_double ##### -->
369 <para>
370
371 </para>
372
373 @key_file: 
374 @group_name: 
375 @key: 
376 @error: 
377 @Returns: 
378
379
380 <!-- ##### FUNCTION g_key_file_get_string_list ##### -->
381 <para>
382
383 </para>
384
385 @key_file: 
386 @group_name: 
387 @key: 
388 @length: 
389 @error: 
390 @Returns: 
391
392
393 <!-- ##### FUNCTION g_key_file_get_locale_string_list ##### -->
394 <para>
395
396 </para>
397
398 @key_file: 
399 @group_name: 
400 @key: 
401 @locale: 
402 @length: 
403 @error: 
404 @Returns: 
405
406
407 <!-- ##### FUNCTION g_key_file_get_boolean_list ##### -->
408 <para>
409
410 </para>
411
412 @key_file: 
413 @group_name: 
414 @key: 
415 @length: 
416 @error: 
417 @Returns: 
418
419
420 <!-- ##### FUNCTION g_key_file_get_integer_list ##### -->
421 <para>
422
423 </para>
424
425 @key_file: 
426 @group_name: 
427 @key: 
428 @length: 
429 @error: 
430 @Returns: 
431
432
433 <!-- ##### FUNCTION g_key_file_get_double_list ##### -->
434 <para>
435
436 </para>
437
438 @key_file: 
439 @group_name: 
440 @key: 
441 @length: 
442 @error: 
443 @Returns: 
444
445
446 <!-- ##### FUNCTION g_key_file_get_comment ##### -->
447 <para>
448
449 </para>
450
451 @key_file: 
452 @group_name: 
453 @key: 
454 @error: 
455 @Returns: 
456
457
458 <!-- ##### FUNCTION g_key_file_set_value ##### -->
459 <para>
460
461 </para>
462
463 @key_file: 
464 @group_name: 
465 @key: 
466 @value: 
467
468
469 <!-- ##### FUNCTION g_key_file_set_string ##### -->
470 <para>
471
472 </para>
473
474 @key_file: 
475 @group_name: 
476 @key: 
477 @string: 
478
479
480 <!-- ##### FUNCTION g_key_file_set_locale_string ##### -->
481 <para>
482
483 </para>
484
485 @key_file: 
486 @group_name: 
487 @key: 
488 @locale: 
489 @string: 
490
491
492 <!-- ##### FUNCTION g_key_file_set_boolean ##### -->
493 <para>
494
495 </para>
496
497 @key_file: 
498 @group_name: 
499 @key: 
500 @value: 
501
502
503 <!-- ##### FUNCTION g_key_file_set_integer ##### -->
504 <para>
505
506 </para>
507
508 @key_file: 
509 @group_name: 
510 @key: 
511 @value: 
512
513
514 <!-- ##### FUNCTION g_key_file_set_double ##### -->
515 <para>
516
517 </para>
518
519 @key_file: 
520 @group_name: 
521 @key: 
522 @value: 
523
524
525 <!-- ##### FUNCTION g_key_file_set_string_list ##### -->
526 <para>
527
528 </para>
529
530 @key_file: 
531 @group_name: 
532 @key: 
533 @list: 
534 @length: 
535
536
537 <!-- ##### FUNCTION g_key_file_set_locale_string_list ##### -->
538 <para>
539
540 </para>
541
542 @key_file: 
543 @group_name: 
544 @key: 
545 @locale: 
546 @list: 
547 @length: 
548
549
550 <!-- ##### FUNCTION g_key_file_set_boolean_list ##### -->
551 <para>
552
553 </para>
554
555 @key_file: 
556 @group_name: 
557 @key: 
558 @list: 
559 @length: 
560
561
562 <!-- ##### FUNCTION g_key_file_set_integer_list ##### -->
563 <para>
564
565 </para>
566
567 @key_file: 
568 @group_name: 
569 @key: 
570 @list: 
571 @length: 
572
573
574 <!-- ##### FUNCTION g_key_file_set_double_list ##### -->
575 <para>
576
577 </para>
578
579 @key_file: 
580 @group_name: 
581 @key: 
582 @list: 
583 @length: 
584
585
586 <!-- ##### FUNCTION g_key_file_set_comment ##### -->
587 <para>
588
589 </para>
590
591 @key_file: 
592 @group_name: 
593 @key: 
594 @comment: 
595 @error: 
596 @Returns: 
597
598
599 <!-- ##### FUNCTION g_key_file_remove_group ##### -->
600 <para>
601
602 </para>
603
604 @key_file: 
605 @group_name: 
606 @error: 
607 @Returns: 
608
609
610 <!-- ##### FUNCTION g_key_file_remove_key ##### -->
611 <para>
612
613 </para>
614
615 @key_file: 
616 @group_name: 
617 @key: 
618 @error: 
619 @Returns: 
620
621
622 <!-- ##### FUNCTION g_key_file_remove_comment ##### -->
623 <para>
624
625 </para>
626
627 @key_file: 
628 @group_name: 
629 @key: 
630 @error: 
631 @Returns: 
632
633
634 <!-- ##### MACRO G_KEY_FILE_DESKTOP_GROUP ##### -->
635 <para>
636 The name of the main group of a desktop entry file, as defined in the
637 <ulink url="http://freedesktop.org/Standards/desktop-entry-spec">Desktop
638 Entry Specification</ulink>. Consult the specification for more
639 details about the meanings of the keys below.
640 </para>
641
642 @Since: 2.14
643
644
645 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_TYPE ##### -->
646 <para>
647 A key under <link
648 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
649 whose value is a string giving the type of the desktop entry. Usually
650 <link linkend="G-KEY-FILE-DESKTOP-TYPE-APPLICATION:CAPS"><literal>G_KEY_FILE_DESKTOP_TYPE_APPLICATION</literal></link>,
651 <link linkend="G-KEY-FILE-DESKTOP-TYPE-LINK:CAPS"><literal>G_KEY_FILE_DESKTOP_TYPE_LINK</literal></link>, or
652 <link linkend="G-KEY-FILE-DESKTOP-TYPE-DIRECTORY:CAPS"><literal>G_KEY_FILE_DESKTOP_TYPE_DIRECTORY</literal></link>.
653 </para>
654
655 @Since: 2.14
656
657
658 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_VERSION ##### -->
659 <para>
660 A key under <link
661 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
662 whose value is a string giving the version of the Desktop
663 Entry Specification used for the desktop entry file.
664 </para>
665
666 @Since: 2.14
667
668
669 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_NAME ##### -->
670 <para>
671 A key under <link
672 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
673 whose value is a localized string giving the specific name of the
674 desktop entry.
675 </para>
676
677 @Since: 2.14
678
679
680 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_GENERIC_NAME ##### -->
681 <para>
682 A key under <link
683 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
684 whose value is a localized string giving the generic name of the
685 desktop entry.
686 </para>
687
688 @Since: 2.14
689
690
691 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_NO_DISPLAY ##### -->
692 <para>
693 A key under <link
694 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
695 whose value is a boolean stating whether the desktop entry should be
696 shown in menus.
697 </para>
698
699 @Since: 2.14
700
701
702 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_COMMENT ##### -->
703 <para>
704 A key under <link
705 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
706 whose value is a localized string giving the tooltip for the desktop
707 entry.
708 </para>
709
710 @Since: 2.14
711
712
713 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_ICON ##### -->
714 <para>
715 A key under <link
716 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
717 whose value is a localized string giving the name of the icon to be
718 displayed for the desktop entry.
719 </para>
720
721 @Since: 2.14
722
723
724 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_HIDDEN ##### -->
725 <para>
726 A key under <link
727 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
728 whose value is a boolean stating whether the desktop entry has been
729 deleted by the user.
730 </para>
731
732 @Since: 2.14
733
734
735 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_ONLY_SHOW_IN ##### -->
736 <para>
737 A key under <link
738 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
739 whose value is a list of strings identifying the environments that
740 should display the desktop entry.
741 </para>
742
743 @Since: 2.14
744
745
746 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_NOT_SHOW_IN ##### -->
747 <para>
748 A key under <link
749 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
750 whose value is a list of strings identifying the environments that
751 should not display the desktop entry.
752 </para>
753
754 @Since: 2.14
755
756
757 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_TRY_EXEC ##### -->
758 <para>
759 A key under <link
760 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
761 whose value is a string giving the file name of a binary on disk
762 used to determine if the program is actually installed. It is only
763 valid for desktop entries with the <literal>Application</literal>
764 type.
765 </para>
766
767 @Since: 2.14
768
769
770 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_EXEC ##### -->
771 <para>
772 A key under <link
773 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
774 whose value is a string giving the command line to execute. It is only
775 valid for desktop entries with the <literal>Application</literal>
776 type.
777 </para>
778
779 @Since: 2.14
780
781
782 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_PATH ##### -->
783 <para>
784 A key under <link
785 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
786 whose value is a string containing the working directory to run the
787 program in. It is only valid for desktop entries with the
788 <literal>Application</literal> type.
789 </para>
790
791 @Since: 2.14
792
793
794 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_TERMINAL ##### -->
795 <para>
796 A key under <link
797 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
798 whose value is a boolean stating whether the program should be
799 run in a terminal window. It is only valid for desktop entries with
800 the <literal>Application</literal> type.
801 </para>
802
803 @Since: 2.14
804
805
806 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_MIME_TYPE ##### -->
807 <para>
808 A key under <link
809 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
810 whose value is a list of strings giving the MIME types supported
811 by this desktop entry.
812 </para>
813
814 @Since: 2.14
815
816
817 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_CATEGORIES ##### -->
818 <para>
819 A key under <link
820 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
821 whose value is a list of strings giving the categories in which the
822 desktop entry should be shown in a menu.
823 </para>
824
825 @Since: 2.14
826
827
828 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_STARTUP_NOTIFY ##### -->
829 <para>
830 A key under <link
831 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
832 whose value is a boolean stating whether the application supports
833 the <ulink
834 url="http://www.freedesktop.org/Standards/startup-notification-spec">Startup
835 Notification Protocol Specification</ulink>.
836 </para>
837
838 @Since: 2.14
839
840
841 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_STARTUP_WM_CLASS ##### -->
842 <para>
843 A key under <link
844 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
845 whose value is string identifying the WM class or name hint of a
846 window that the application will create, which can be used to emulate
847 Startup Notification with older applications.
848 </para>
849
850 @Since: 2.14
851
852
853 <!-- ##### MACRO G_KEY_FILE_DESKTOP_KEY_URL ##### -->
854 <para>
855 A key under <link
856 linkend="G-KEY-FILE-DESKTOP-GROUP:CAPS"><literal>G_KEY_FILE_DESKTOP_GROUP</literal></link>
857 whose value is a string giving the URL to access. It is only valid
858 for desktop entries with the <literal>Link</literal> type.
859 </para>
860
861 @Since: 2.14
862
863
864 <!-- ##### MACRO G_KEY_FILE_DESKTOP_TYPE_APPLICATION ##### -->
865 <para>
866 The value of the <link
867 linkend="G-KEY-FILE-DESKTOP-KEY-TYPE:CAPS"><literal>G_KEY_FILE_DESKTOP_KEY_TYPE</literal></link>
868 key for desktop entries representing applications.
869 </para>
870
871 @Since: 2.14
872
873
874 <!-- ##### MACRO G_KEY_FILE_DESKTOP_TYPE_LINK ##### -->
875 <para>
876 The value of the <link
877 linkend="G-KEY-FILE-DESKTOP-KEY-TYPE:CAPS"><literal>G_KEY_FILE_DESKTOP_KEY_TYPE</literal></link>
878 key for desktop entries representing links to documents.
879 </para>
880
881 @Since: 2.14
882
883
884 <!-- ##### MACRO G_KEY_FILE_DESKTOP_TYPE_DIRECTORY ##### -->
885 <para>
886 The value of the <link
887 linkend="G-KEY-FILE-DESKTOP-KEY-TYPE:CAPS"><literal>G_KEY_FILE_DESKTOP_KEY_TYPE</literal></link>
888 key for desktop entries representing directories.
889 </para>
890
891 @Since: 2.14
892
893