/* ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*/ /* */ /* P†l Hedne 1990 */ /* */ /* ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*/ _init (...) { int label_key; global label_key; label_key=0; } /* ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*/ extern gen_help, _reg_exp, // Regular expressions on/off. _block_search; // Block search on/off. find_label (...) { int line,col,line1,col1,match,ind,length,buf_key, nwrite,maxlength,dum; string text,label,fname,ext,bname; maxlength=30; message("Searching.."); inq_position (line, col); top_of_buffer(); /* inq_names(fname,ext,bname); ind = search_string (".",fname,length,0,0); if (ind>0) fname=substr(fname,1,ind-1); fname=fname+".lbl";*/ fname="LABELS IN FILE "+bname; label_key=create_buffer("labels",NULL,1); buf_key=inq_buffer(); nwrite=0; match=1; while (match > 0) { match = search_fwd ("\\label\\{*\\}",1, 0, 0); if (match > 0) { inq_position (line1, col1); text = read(); text=trim(text); length=strlen(text); bname=text; while ((ind=search_string(";",text,dum,0,0)) > 0) text=substr(bname,1,ind-1)+":"+substr(bname,ind+1,length); if (length>maxlength) maxlength=length; while (strlen(text)2) { label=substr(text,ind+1,length-2); set_buffer(label_key); insert("Line %d: %s ;insert_text %c%s%c\n",line1,text,34,label,34); set_buffer(buf_key); ++nwrite; } } move_rel(0, match); } move_abs (line, col); if (nwrite>0) { message(" "); text=gen_help(fname,label_key); } else message("No labels in file."); /* delete_buffer(label_key);*/ } /* ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*/ disp_label (...) { string fname; fname=" "; if (label_key>0) fname=gen_help(fname,label_key); } /* ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;*/ insert_text(...) { string text; if (get_parm (0, text)) insert(text); }