X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=formats%2Fmedium.tcl;h=6904a2626d0506562fe375b4029527cdf8a3e5eb;hb=a7e17ee4caa661c7cd6c40604b6c2eafcc970068;hp=52ea4af63d4ebcd473535b4a770b747825a4f7c6;hpb=a30e5aa7c67a5f71e3f39d2b76175c7e9950cae9;p=ir-tcl-moved-to-github.git diff --git a/formats/medium.tcl b/formats/medium.tcl index 52ea4af..6904a26 100644 --- a/formats/medium.tcl +++ b/formats/medium.tcl @@ -4,7 +4,19 @@ # Sebastian Hammer, Adam Dickmeiss # # $Log: medium.tcl,v $ -# Revision 1.5 1995-06-22 13:16:29 adam +# Revision 1.9 1995-10-17 14:18:10 adam +# Minor changes in presentation formats. +# +# Revision 1.8 1995/10/17 10:58:09 adam +# More work on presentation formats. +# +# Revision 1.7 1995/10/16 17:01:03 adam +# Medium presentation format looks better. +# +# Revision 1.6 1995/09/20 11:37:06 adam +# Work on GRS. +# +# Revision 1.5 1995/06/22 13:16:29 adam # Feature: SUTRS. Setting getSutrs implemented. # Work on display formats. # @@ -20,10 +32,29 @@ # as popup windows. # # +proc display-grs-medium {w r i} { + foreach e $r { + for {set j 0} {$j < $i} {incr j} { + insertWithTags $w " " marc-tag + } + insertWithTags $w "([lindex $e 0]:[lindex $e 2]) " marc-tag + if {[lindex $e 3] == "string"} { + insertWithTags $w [lindex $e 4] {} + insertWithTags $w "\n" + } elseif {[lindex $e 3] == "subtree"} { + insertWithTags $w "\n" + display-grs-medium $w [lindex $e 4] [expr $i+1] + } else { + insertWithTags $w [lindex $e 4] {} + insertWithTags $w " ?\n" {} + } + } +} proc display-medium {sno no w hflag} { if {$hflag} { - insertWithTags $w "\n$no\n" marc-data + insertWithTags $w " $no " marc-head + insertWithTags $w "\n" } else { $w delete 0.0 end } @@ -46,16 +77,20 @@ proc display-medium {sno no w hflag} { $w insert end "\n" return } + if {$rtype == "GRS1"} { + display-grs-medium $w [z39.$sno getGrs $no] 0 + return + } if {[catch {set i [z39.$sno getMarc $no field 245 * a]}]} { insertWithTags $w "Unknown record type: $rtype\n" marc-id return } if {"x$i" != "x"} { - insertWithTags $w "Title: " marc-tag - insertWithTags $w [string trimright [lindex $i 0] /] marc-data + insertWithTags $w "Title " marc-pref + insertWithTags $w [string trimright [lindex $i 0] /] marc-text set i [z39.$sno getMarc $no field 245 * b] if {"x$i" != "x"} { - insertWithTags $w [string trimright [lindex $i 0] /] marc-data + insertWithTags $w [string trimright [lindex $i 0] /] marc-text } $w insert end "\n" } @@ -65,20 +100,20 @@ proc display-medium {sno no w hflag} { } if {"x$i" != "x"} { if {[llength $i] > 1} { - insertWithTags $w "Authors: " marc-tag + insertWithTags $w "Authors " marc-pref } else { - insertWithTags $w "Author: " marc-tag + insertWithTags $w "Author " marc-pref } foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-it } $w insert end "\n" } set i [z39.$sno getMarc $no field 110 * *] if {"x$i" != "x"} { - insertWithTags $w "Co-Author: " marc-tag + insertWithTags $w "Co-Author " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" } @@ -86,12 +121,12 @@ proc display-medium {sno no w hflag} { set i [z39.$sno getMarc $no field 650 * *] if {"x$i" != "x"} { set n 0 - insertWithTags $w "Keywords: " marc-tag + insertWithTags $w "Keywords " marc-pref foreach x $i { if {$n > 0} { $w insert end ", " } - insertWithTags $w $x marc-data + insertWithTags $w $x marc-it incr n } $w insert end "\n" @@ -99,49 +134,49 @@ proc display-medium {sno no w hflag} { set i [concat [z39.$sno getMarc $no field 260 * a] \ [z39.$sno getMarc $no field 260 * b]] if {"x$i" != "x"} { - insertWithTags $w "Publisher: " marc-tag + insertWithTags $w "Publisher " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" } set i [z39.$sno getMarc $no field 020 * a] if {"x$i" != "x"} { - insertWithTags $w "ISBN: " marc-tag + insertWithTags $w "ISBN " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" } set i [z39.$sno getMarc $no field 022 * a] if {"x$i" != "x"} { - insertWithTags $w "ISSN: " marc-tag + insertWithTags $w "ISSN " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" } set i [z39.$sno getMarc $no field 030 * a] if {"x$i" != "x"} { - insertWithTags $w "CODEN: " marc-tag + insertWithTags $w "CODEN " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" } set i [z39.$sno getMarc $no field 015 * a] if {"x$i" != "x"} { - insertWithTags $w "Ctl number: " marc-tag + insertWithTags $w "Ctl number " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" } set i [z39.$sno getMarc $no field 010 * a] if {"x$i" != "x"} { - insertWithTags $w "LC number: " marc-tag + insertWithTags $w "LC number " marc-pref foreach x $i { - insertWithTags $w $x marc-data + insertWithTags $w $x marc-text } $w insert end "\n" }