type css = string list
+type uri = string
+
+type ext = string
+
+type anchor = string
+
+type absolute = bool
+
type size = {
y : int; (* first row *)
x : int; (* first column *)
w: bool; (* west *)
}
-type key = Text of string list
+type text = Plain of string
+ | Link of absolute * string * string
+
+type key = Text of text list
| Glue of int option
type table = {
+ tn: anchor; (* named anchor *)
mutable tc: css; (* css classes *)
+ mutable tu: uri; (* uri *)
+ mutable tx: ext; (* uri extension *)
mutable ts: size; (* dimension *)
tb: border; (* border *)
te: entry; (* contents *)
n = b; s = b; e = b; w = b;
}
-let mk_key k tc = {
- ts = no_size; tb = border false; te = Key k; tc = tc;
+let mk_key k tc tu tx tn = {
+ ts = no_size; tb = border false; te = Key k;
+ tc = tc; tu = tu; tx = tx; tn = tn;
ti = id ();
}
-let mk_line b tl tc = {
- ts = no_size; tb = border b; te = Line (b, tl); tc = tc;
+let mk_line b tl tc tu tx tn = {
+ ts = no_size; tb = border b; te = Line (b, tl);
+ tc = tc; tu = tu; tx = tx; tn = tn;
ti = id ();
}