Ahem; that only didn't cause a segfault by sheer luck.
[sgt/halibut] / halibut.h
index 94493d4..6a0e944 100644 (file)
--- a/halibut.h
+++ b/halibut.h
 #include "tree234.h"
 
 /*
- * FIXME: Charset temporary workarounds
- */
-#define CS_FIXME CS_ISO8859_1
-#define CS_LOCAL CS_ISO8859_1
-
-/*
  * Structure tags
  */
 typedef struct input_Tag input;
@@ -243,6 +237,7 @@ enum {
     err_sectmarkerinblock,            /* section marker appeared in block */
     err_infodirentry,                 /* \cfg{info-dir-entry} missing param */
     err_infonodechar,                 /* colon/comma in node name in info */
+    err_text_codeline,                /* \c line too long in text backend */
     err_whatever                       /* random error of another type */
 };
 
@@ -282,6 +277,8 @@ char *utoa_dup(wchar_t const *s, int charset);
 char *utoa_dup_len(wchar_t const *s, int charset, int *len);
 char *utoa_careful_dup(wchar_t const *s, int charset);
 wchar_t *ufroma_dup(char const *s, int charset);
+char *utoa_locale_dup(wchar_t const *s);
+wchar_t *ufroma_locale_dup(char const *s);
 int ustrlen(wchar_t const *s);
 wchar_t *uadv(wchar_t *s);
 wchar_t *ustrcpy(wchar_t *dest, wchar_t const *source);
@@ -293,7 +290,14 @@ int utoi(wchar_t *);
 int utob(wchar_t *);
 int uisdigit(wchar_t);
 wchar_t *ustrlow(wchar_t *s);
-wchar_t *ustrftime(wchar_t *fmt, struct tm *timespec);
+wchar_t *ustrftime(const wchar_t *wfmt, const struct tm *timespec);
+int cvt_ok(int charset, const wchar_t *s);
+
+/*
+ * wcwidth.c
+ */
+int strwid(char const *s, int charset);
+int ustrwid(wchar_t const *s, int charset);
 
 /*
  * help.c
@@ -345,7 +349,7 @@ char *rdtrimc(rdstringc *rs);
 
 int compare_wordlists(word *a, word *b);
 
-void mark_attr_ends(paragraph *sourceform);
+void mark_attr_ends(word *words);
 
 typedef struct tagWrappedLine wrappedline;
 struct tagWrappedLine {