<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>libkate: Text manipulation</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.1 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> </div> <div class="contents"> <h1>Text manipulation</h1><table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__text.html#gaae4d3d9398e169a717a953979ed13bee">kate_text_get_character</a> (<a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> text_encoding, const char **const text, size_t *len0)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__text.html#ga05f6feee792a3f42d01c490822ff20f9">kate_text_set_character</a> (<a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> text_encoding, int c, char **const text, size_t *len0)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__text.html#ga406a2311d578dad99bb5ec139cba2cb4">kate_text_remove_markup</a> (<a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> text_encoding, char *text, size_t *len0)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__text.html#gaf039cd8bf94f2ad66ad65443e3aa5525">kate_text_validate</a> (<a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> text_encoding, const char *text, size_t len0)</td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <hr/><h2>Function Documentation</h2> <a class="anchor" id="gaae4d3d9398e169a717a953979ed13bee"></a><!-- doxytag: member="kate_text.c::kate_text_get_character" ref="gaae4d3d9398e169a717a953979ed13bee" args="(kate_text_encoding text_encoding, const char **const text, size_t *len0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int kate_text_get_character </td> <td>(</td> <td class="paramtype"><a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> </td> <td class="paramname"> <em>text_encoding</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char **const </td> <td class="paramname"> <em>text</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t * </td> <td class="paramname"> <em>len0</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Reads a code point from the string, advancing the text pointer to the next one. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>text_encoding</em> </td><td>the character encoding the text is coded in </td></tr> <tr><td valign="top"></td><td valign="top"><em>text</em> </td><td>a pointer to the text pointer, to be advanced to the next character on success </td></tr> <tr><td valign="top"></td><td valign="top"><em>len0</em> </td><td>a pointer to the length of the buffer, including any terminating NUL, to be decreased by the number of bytes that text is advanced on success </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>>=0 success, the unicode code point read </dd> <dd> KATE_E_* error </dd></dl> <p>References <a class="el" href="kate_8h_source.html#l00653">KATE_E_INVALID_PARAMETER</a>, <a class="el" href="kate_8h_source.html#l00658">KATE_E_TEXT</a>, and <a class="el" href="kate_8h_source.html#l00034">kate_utf8</a>.</p> <p>Referenced by <a class="el" href="kate__tracker_8c_source.html#l00033">kate_tracker_init()</a>.</p> </div> </div> <a class="anchor" id="ga406a2311d578dad99bb5ec139cba2cb4"></a><!-- doxytag: member="kate_text.c::kate_text_remove_markup" ref="ga406a2311d578dad99bb5ec139cba2cb4" args="(kate_text_encoding text_encoding, char *text, size_t *len0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int kate_text_remove_markup </td> <td>(</td> <td class="paramtype"><a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> </td> <td class="paramname"> <em>text_encoding</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"> <em>text</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t * </td> <td class="paramname"> <em>len0</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Removes markup from the given text. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>text_encoding</em> </td><td>the character encoding the text is coded in </td></tr> <tr><td valign="top"></td><td valign="top"><em>text</em> </td><td>the text to remove markup from </td></tr> <tr><td valign="top"></td><td valign="top"><em>len0</em> </td><td>the length in bytes of the text, including any terminating NUL - will be set to the length of the text with markup removed, including any terminating NUL </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>0 success </dd> <dd> KATE_E_* error </dd></dl> <p>References <a class="el" href="kate_8h_source.html#l00653">KATE_E_INVALID_PARAMETER</a>, and <a class="el" href="kate_8h_source.html#l00034">kate_utf8</a>.</p> </div> </div> <a class="anchor" id="ga05f6feee792a3f42d01c490822ff20f9"></a><!-- doxytag: member="kate_text.c::kate_text_set_character" ref="ga05f6feee792a3f42d01c490822ff20f9" args="(kate_text_encoding text_encoding, int c, char **const text, size_t *len0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int kate_text_set_character </td> <td>(</td> <td class="paramtype"><a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> </td> <td class="paramname"> <em>text_encoding</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>c</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char **const </td> <td class="paramname"> <em>text</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t * </td> <td class="paramname"> <em>len0</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Writes a code point to the given string, advancing the text pointer to the next byte. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>text_encoding</em> </td><td>the character encoding the text is coded in </td></tr> <tr><td valign="top"></td><td valign="top"><em>c</em> </td><td>the unicode code point to write to the string </td></tr> <tr><td valign="top"></td><td valign="top"><em>text</em> </td><td>a pointer to the text pointer, to be advanced to the next character on success </td></tr> <tr><td valign="top"></td><td valign="top"><em>len0</em> </td><td>a pointer to the length of the buffer, including any terminating NUL, to be decreased by the number of bytes that text is advanced on success </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>>=0 success, the number of bytes used to write this code point </dd> <dd> KATE_E_* error </dd></dl> <p>References <a class="el" href="kate_8h_source.html#l00653">KATE_E_INVALID_PARAMETER</a>, <a class="el" href="kate_8h_source.html#l00658">KATE_E_TEXT</a>, and <a class="el" href="kate_8h_source.html#l00034">kate_utf8</a>.</p> </div> </div> <a class="anchor" id="gaf039cd8bf94f2ad66ad65443e3aa5525"></a><!-- doxytag: member="kate_text.c::kate_text_validate" ref="gaf039cd8bf94f2ad66ad65443e3aa5525" args="(kate_text_encoding text_encoding, const char *text, size_t len0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int kate_text_validate </td> <td>(</td> <td class="paramtype"><a class="el" href="kate_8h.html#a9e8a915382d068016312baad10053902">kate_text_encoding</a> </td> <td class="paramname"> <em>text_encoding</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>text</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"> <em>len0</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Validates text for the given character encoding, flagging partial sequences and invalid sequences. </p> <dl><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>text_encoding</em> </td><td>the character encoding the text is coded in </td></tr> <tr><td valign="top"></td><td valign="top"><em>text</em> </td><td>the text to validate (may include embedded NULs) </td></tr> <tr><td valign="top"></td><td valign="top"><em>len0</em> </td><td>the length in bytes of the text, including any terminating NUL </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>0 success </dd> <dd> KATE_E_* error </dd></dl> <p>References <a class="el" href="kate_8h_source.html#l00653">KATE_E_INVALID_PARAMETER</a>, <a class="el" href="kate_8h_source.html#l00658">KATE_E_TEXT</a>, and <a class="el" href="kate_8h_source.html#l00034">kate_utf8</a>.</p> <p>Referenced by <a class="el" href="kate__comment_8c_source.html#l00086">kate_comment_add_length()</a>, and <a class="el" href="kate__encode_8c_source.html#l00878">kate_encode_text_raw_times()</a>.</p> </div> </div> </div> <hr size="1"/><address style="text-align: right;"><small>Generated on Wed Dec 23 04:05:07 2009 for libkate by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address> </body> </html>