summaryrefslogtreecommitdiffstats
path: root/doc/common.c
diff options
context:
space:
mode:
Diffstat (limited to 'doc/common.c')
-rw-r--r--doc/common.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/doc/common.c b/doc/common.c
new file mode 100644
index 0000000..492f9b9
--- /dev/null
+++ b/doc/common.c
@@ -0,0 +1,47 @@
+char *escape_string(const char *str, char *buffer, int buffer_size)
+{
+ int i = 0, j = 0;
+
+
+ while (str[i] != 0 && j < buffer_size - 1) {
+ if (str[i] == '_') {
+ buffer[j++] = '\\';
+ buffer[j++] = '_';
+ buffer[j++] = '\\';
+ buffer[j++] = '-';
+ } else if (str[i] == '#') {
+ buffer[j++] = '\\';
+ buffer[j++] = '#';
+ } else {
+ buffer[j++] = str[i];
+ }
+ i++;
+ };
+
+ buffer[j] = 0;
+
+ return buffer;
+
+}
+
+char *escape_texi_string(const char *str, char *buffer, int buffer_size)
+{
+ int i = 0, j = 0;
+
+
+ while (str[i] != 0 && j < buffer_size - 1) {
+ if (str[i] == '_') {
+ buffer[j++] = '_';
+ buffer[j++] = '@';
+ buffer[j++] = '-';
+ } else {
+ buffer[j++] = str[i];
+ }
+ i++;
+ };
+
+ buffer[j] = 0;
+
+ return buffer;
+
+}