summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog18
-rw-r--r--src/guile/skribilo/resolve.scm12
2 files changed, 30 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 4123c95..c4318c3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,24 @@
 # arch-tag: automatic-ChangeLog--skribilo@sv.gnu.org--2006/skribilo--devo--1.2
 #
 
+2007-05-22 13:56:04 GMT	Ludovic Court`es <ludovic.courtes@laas.fr>	patch-94
+
+    Summary:
+      Resolve <command>s too.
+    Revision:
+      skribilo--devo--1.2--patch-94
+
+    * src/guile/skribilo/resolve.scm (do-resolve!<command>): New method.
+      Allows arguments of a command (the command body) to be properly
+      resolved.
+
+    modified files:
+     ChangeLog src/guile/skribilo/resolve.scm
+
+    new patches:
+     lcourtes@laas.fr--2006-libre/skribilo--devo--1.2--patch-53
+
+
 2007-05-04 13:48:29 GMT	Ludovic Court`es <ludovic.courtes@laas.fr>	patch-93
 
     Summary:
diff --git a/src/guile/skribilo/resolve.scm b/src/guile/skribilo/resolve.scm
index ba5af6a..94ab360 100644
--- a/src/guile/skribilo/resolve.scm
+++ b/src/guile/skribilo/resolve.scm
@@ -196,6 +196,18 @@
   node)
 
 
+(define-method (do-resolve! (node <command>) engine env)
+  (with-debug 5 'do-resolve<command>
+     (debug-item "node=" node)
+     (let ((p (assq 'parent env)))
+       (slot-set! node 'parent (and (pair? p) (pair? (cdr p)) (cadr p))))
+     (for-each (lambda (n)
+                 (do-resolve! n engine env))
+               (command-body node))
+     node))
+
+
+
 ;;;; ======================================================================
 ;;;;
 ;;;; RESOLVE-PARENT