From d389f39eb1280295be093f83da0636c4fa272b78 Mon Sep 17 00:00:00 2001 From: Adam Dickmeiss Date: Mon, 12 Jun 1995 07:59:35 +0000 Subject: [PATCH] New MARC display routines. --- formats/medium.tcl | 101 ++++++++++++++++++++++++++++++++++++++++++++++++++++ formats/raw.tcl | 27 ++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 formats/medium.tcl create mode 100644 formats/raw.tcl diff --git a/formats/medium.tcl b/formats/medium.tcl new file mode 100644 index 0000000..83d9244 --- /dev/null +++ b/formats/medium.tcl @@ -0,0 +1,101 @@ + +proc display-nice {sno no w} { + $w delete 0.0 end + set i [z39.$sno getMarc $no field 245 * a] + if {$i != ""} { + set i [lindex $i 0] + insertWithTags $w "Title: " marc-tag + insertWithTags $w $i marc-data + set i [z39.$sno getMarc $no field 245 * b] + if {$i != ""} { + insertWithTags $w [lindex $i 0] marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 700 * a] + if {$i == ""} { + set i [z39.$sno getMarc $no field 100 * a] + } + if {$i != ""} { + if {[llength $i] > 1} { + insertWithTags $w "Authors: " marc-tag + } else { + insertWithTags $w "Author: " marc-tag + } + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 110 * *] + if {$i != ""} { + insertWithTags $w "Co-Author: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + + set i [z39.$sno getMarc $no field 650 * *] + if {$i != ""} { + set n 0 + insertWithTags $w "Keywords: " marc-tag + foreach x $i { + if {$n > 0} { + $w insert end ", " + } + insertWithTags $w $x marc-data + incr n + } + $w insert end "\n" + } + set i [concat [z39.$sno getMarc $no field 260 * a] \ + [z39.$sno getMarc $no field 260 * b]] + if {$i != ""} { + insertWithTags $w "Publisher: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 020 * a] + if {$i != ""} { + insertWithTags $w "ISBN: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 022 * a] + if {$i != ""} { + insertWithTags $w "ISSN: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 030 * a] + if {$i != ""} { + insertWithTags $w "CODEN: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 015 * a] + if {$i != ""} { + insertWithTags $w "Ctl number: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } + set i [z39.$sno getMarc $no field 010 * a] + if {$i != ""} { + insertWithTags $w "LC number: " marc-tag + foreach x $i { + insertWithTags $w $x marc-data + } + $w insert end "\n" + } +} diff --git a/formats/raw.tcl b/formats/raw.tcl new file mode 100644 index 0000000..ec0e710 --- /dev/null +++ b/formats/raw.tcl @@ -0,0 +1,27 @@ + +proc display-raw {sno no w} { + $w delete 0.0 end + set r [z39.$sno getMarc $no list * * *] + foreach line $r { + set tag [lindex $line 0] + set indicator [lindex $line 1] + set fields [lindex $line 2] + + if {$indicator != ""} { + insertWithTags $w "$tag $indicator" marc-tag + } else { + insertWithTags $w "$tag " marc-tag + } + foreach field $fields { + set id [lindex $field 0] + set data [lindex $field 1] + if {$id != ""} { + insertWithTags $w " $id " marc-id + } + set start [$w index insert] + insertWithTags $w $data {} + } + $w insert end "\n" + } +} + -- 1.7.10.4