Imported Upstream version 0.19.5
[platform/upstream/fribidi.git] / doc / fribidi_remove_bidi_marks.3
1 .\" WARNING! THIS FILE WAS GENERATED AUTOMATICALLY BY c2man!
2 .\" DO NOT EDIT! CHANGES MADE TO THIS FILE WILL BE LOST!
3 .TH "fribidi_remove_bidi_marks" 3 "2 December 2012" "GNU FriBidi 0.19.4" "Programmer's Manual"
4 .SH "NAME"
5 fribidi_remove_bidi_marks \- remove bidi marks out of an string
6 .SH "SYNOPSIS"
7 .ft B
8 #include <fribidi.h>
9 .sp
10 FriBidiStrIndex fribidi_remove_bidi_marks
11 .br
12 (
13 .br
14         FriBidiChar *str,
15 .br
16         const FriBidiStrIndex len,
17 .br
18         FriBidiStrIndex *positions_to_this,
19 .br
20         FriBidiStrIndex *position_from_this_list,
21 .br
22         FriBidiLevel *embedding_levels
23 .br
24 );
25 .ft R
26 .SH "PARAMETERS"
27 .TP
28 .B "FriBidiChar *str"
29 Input string to clean.
30 .TP
31 .B "const FriBidiStrIndex len"
32 Input string length.
33 .TP
34 .B "FriBidiStrIndex *positions_to_this"
35 List mapping positions to the
36 order used in str.
37 .TP
38 .B "FriBidiStrIndex *position_from_this_list"
39 List mapping positions from the
40 order used in str.
41 .TP
42 .B "FriBidiLevel *embedding_levels"
43 List of embedding levels.
44 .SH "DESCRIPTION"
45 This function removes the bidi and boundary-neutral marks out of an string
46 and the accompanying lists.  It implements rule X9 of the Unicode
47 Bidirectional Algorithm available at
48 http://www.unicode.org/reports/tr9/#X9, with the exception that it removes
49 U+200E LEFT-TO-RIGHT MARK and U+200F RIGHT-TO-LEFT MARK too.
50
51 If any of the input lists are NULL, the list is skipped.  If str is the
52 visual string, then positions_to_this is  positions_L_to_V and
53 position_from_this_list is positions_V_to_L;  if str is the logical
54 string, the other way. Moreover, the position maps should be filled with
55 valid entries.
56
57 A position map pointing to a removed character is filled with \-1. By the
58 way, you should not use embedding_levels if str is visual string.
59
60 For best results this function should be run on a whole paragraph, not
61 lines; but feel free to do otherwise if you know what you are doing.
62 Deprecated.  Use fribidi_remove_special_chars instead.
63 .SH "RETURNS"
64 New length of the string, or \-1 if an error occured (memory
65 allocation failure most probably).
66 .SH "SEE ALSO"
67 fribidi_charset_to_unicode(3),
68 fribidi_unicode_to_charset(3),
69 fribidi_parse_charset(3),
70 fribidi_shape_arabic(3),
71 fribidi_get_par_direction(3),
72 fribidi_get_par_embedding_levels(3),
73 fribidi_reorder_line(3),
74 fribidi_get_bidi_type(3),
75 fribidi_get_bidi_types(3),
76 fribidi_get_bidi_type_name(3),
77 fribidi_debug_status(3),
78 fribidi_mirroring_status(3),
79 fribidi_set_mirroring(3),
80 fribidi_reorder_nsm_status(3),
81 fribidi_set_reorder_nsm(3),
82 fribidi_log2vis_get_embedding_levels(3),
83 fribidi_get_type(3),
84 fribidi_get_type_internal(3),
85 fribidi_log2vis(3),
86 fribidi_join_arabic(3),
87 fribidi_get_joining_type(3),
88 fribidi_get_joining_types(3),
89 fribidi_get_joining_type_name(3),
90 fribidi_get_mirror_char(3),
91 fribidi_shape_mirroring(3),
92 fribidi_shape(3)