#!/bin/sh sed 's/(/ /g' ./dwg_summary.rpt > ./tmp1 sed 's/)/ /g' ./tmp1 > ./tmp2 awk ' BEGIN { printf("# Allegro script\n"); printf("images\n"); printf("setwindow form.cust_views\n"); printf("FORM cust_views viewname start\n"); printf("FORM cust_views save\n"); printf("FORM cust_views done\n"); printf("setwindow pcb\n\n"); printf("replay small_stall\n\n"); printf("color\n"); printf("setwindow form.cvf_main\n"); printf("FORM cvf_main global_vis All Visible\n"); printf("fillin yes\n"); printf("FORM cvf_main ok\n\n"); printf("setwindow pcb\n\n"); printf("property edit\n"); printf("setwindow form.find\n"); printf("FORM find all_off\n"); printf("FORM find symbols YES\n"); printf("FORM find vias YES\n"); printf("FORM find pins YES\n"); printf("FORM find clines YES\n"); printf("FORM find lines YES\n"); printf("FORM find shapes YES\n"); printf("setwindow pcb\n\n"); } { if (NF == 10 && $1 == "Drawing" && $2 == "Extents") { lower_x = $4; lower_y = $6; upper_x = $8; upper_y = $10; } if ($1 == "Dimensions") { printf("drag_start %s %s\ndrag_stop %s %s\n", lower_x, lower_y, upper_x, upper_y); } if ($1 == "Dimensions") { printf("setwindow form.editprop1\nFORM editprop1 properties CLIP_DRAWING\n"); } if ($1 == "Dimensions") { printf("setwindow form.editprop2\nFORM editprop2 clip_drawing prop_state YES\nFORM editprop2 apply\n"); } } END { printf("setwindow pcb\n"); printf("done\n"); printf("image restore userdefined\n"); printf("fillin start\n"); printf("setwindow pcb\n"); }' < tmp2 > delete_clp-prop.scr rm ./tmp1 ./tmp2