00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef AUDACIOUS_STRINGS_H
00027 #define AUDACIOUS_STRINGS_H
00028
00029 #include <stdlib.h>
00030 #include <glib.h>
00031
00032 G_BEGIN_DECLS
00033
00034 gchar *escape_shell_chars(const gchar * string);
00035
00036 gchar *str_append(gchar * str, const gchar * add_str);
00037 gchar *str_replace(gchar * str, gchar * new_str);
00038 void str_replace_in(gchar ** str, gchar * new_str);
00039
00040 gboolean str_has_prefix_nocase(const gchar * str, const gchar * prefix);
00041 gboolean str_has_suffix_nocase(const gchar * str, const gchar * suffix);
00042 gboolean str_has_suffixes_nocase(const gchar * str, gchar * const *suffixes);
00043
00044 gchar *str_assert_utf8(const gchar *str);
00045 extern gchar *(*str_to_utf8)(const gchar * str);
00046 gchar *str_to_utf8_fallback(const gchar * str);
00047 extern gchar * (* chardet_to_utf8) (const gchar * string, gssize length, gsize *
00048 bytes_read, gsize * bytes_written, GError * * error);
00049
00050 const gchar *str_skip_chars(const gchar * str, const gchar * chars);
00051
00052 gchar *convert_dos_path(gchar * text);
00053
00054 extern gchar *(*chardet_to_utf8)(const gchar *str, gssize len,
00055 gsize *arg_bytes_read, gsize *arg_bytes_write,
00056 GError **arg_error);
00057
00058 gchar *filename_get_subtune(const gchar * filename, gint * track);
00059 gchar *filename_split_subtune(const gchar * filename, gint * track);
00060
00061 void string_replace_char (gchar * string, gchar old_str, gchar new_str);
00062 void string_decode_percent (gchar * string);
00063 gchar * string_encode_percent (const gchar * string, gboolean is_filename);
00064
00065 gboolean uri_is_utf8 (const gchar * uri, gboolean warn);
00066 gchar * uri_to_utf8 (const gchar * uri);
00067 void uri_check_utf8 (gchar * * uri, gboolean warn);
00068 gchar * filename_to_uri (const gchar * filename);
00069 gchar * uri_to_filename (const gchar * uri);
00070
00071 void string_cut_extension(gchar *string);
00072 gint string_compare (const gchar * a, const gchar * b);
00073 gint string_compare_encoded (const gchar * a, const gchar * b);
00074
00075 const void * memfind (const void * mem, gint size, const void * token, gint
00076 length);
00077
00078 G_END_DECLS
00079
00080 #endif