+proc display-grs-line {w r i} {
+ global tagSet
+
+ if {[tk4]} {
+ set start [$w index insert]
+ }
+ foreach e $r {
+ if {![tk4]} {
+ for {set j 0} {$j < $i} {incr j} {
+ insertWithTags $w " " marc-tag
+ }
+ }
+ set ttype [lindex $e 0]
+ set tval [lindex $e 2]
+ if {[info exists tagSet($ttype,$tval)]} {
+ insertWithTags $w "$tagSet($ttype,$tval) " marc-pref
+ } else {
+ insertWithTags $w "$tval " marc-pref
+ }
+ if {[lindex $e 3] == "string"} {
+ insertWithTags $w [lindex $e 4] marc-text
+ insertWithTags $w "\n"
+ break
+ }
+ }
+ if {[tk4]} {
+ $w tag configure indent$i \
+ -lmargin1 [expr $i * 10] \
+ -lmargin2 [expr $i * 10 + 5]
+ $w tag add indent$i $start insert
+ }
+}