# META NAME PdExternalsSearch # META DESCRIPTION Parser for externals jsonfiles on puredata.info # META AUTHOR # Search URL: # http://puredata.info/Members/%user%/software/%packageName%/%packageVersion%/%packageName%-v%packageName%-Objects.json # The minimum version of TCL that allows the plugin to run package require Tcl 8.4 package require http 2 package require json #http://wiki.tcl.tk/8575 proc getPage { url } { set token [::http::geturl $url] set data [::http::data $token] ::http::cleanup $token return $data } #puts $contents set ourl "http://puredata.info/Members/fjkraan/software/tof/0.2.0/tof-v0.2.0-Objects.json" set contents [getPage $ourl] #set somefile "tof-v0.2.0-Objects.json" #set fp [open $somefile r] #set contents [read $fp] #close $fp #puts $contents set objectDict [json::json2dict $contents] set author [dict get $objectDict author] set version [dict get $objectDict version] set repository [dict get $objectDict repository] set objects [dict get $objectDict objects] puts "Author: $author" puts "Version: $version" puts "Repository $repository" #puts "Objects: '$objects'" set findObject [lindex $argv 0] foreach object $objects { # puts $object set objectName [dict get $object object] set description [dict get $object description] if {$findObject eq $objectName} { puts "" puts "$objectName : $description" } }