+
+
+LY_DEFINE(ly_load_text_dimensions, "ly:load-text-dimensions",
+ 1, 0, 0,
+ (SCM dimension_alist),
+ "Load dimensions from TeX in a (KEY . (W H D)) format alist")
+{
+ if (!tex_dimension_hash_tab)
+ {
+ tex_dimension_hash_tab =
+ scm_gc_protect_object (scm_make_hash_table (scm_from_int (113)));
+ }
+
+ for (SCM s = dimension_alist;
+ scm_is_pair (s);
+ s = scm_cdr (s))
+ {
+ SCM key = scm_caar (s);
+ SCM val = scm_cdar (s);
+
+ if (scm_hash_ref (tex_dimension_hash_tab, key, SCM_BOOL_F)
+ == SCM_BOOL_F)
+ {
+ scm_hash_set_x (tex_dimension_hash_tab, key, val);
+ }
+ }
+
+ return SCM_UNSPECIFIED;
+}