; ; Read macro definition ; IF debug_w THEN print, ' ENTER get_macro_def...' ; name of macro file file_mac = hom_def+'fld_macros.def' IF debug_w THEN print, ' var_name in get_macro_def: ', var_name ; ; special case for stddev monthly stddev_mth = '00' pos_underscore = strpos(var_name,'_') IF pos_underscore GE 0 THEN BEGIN stddev_mth = STRMID(var_name, pos_underscore + 1, 2) var_name = STRMID(var_name, 0, pos_underscore) ENDIF ; find definition of macro spawn, 'grep -i " '+STRMID(var_name, 2, 16)+' " '+file_mac, line line = strcompress(strtrim(line[0], 2)) length = strlen(line) IF debug_w THEN print, ' line: ', line IF length EQ 0 THEN BEGIN print, ' *** WARNING : No macro definition for field ', var_name, $ ' in file ', file_mac stop ENDIF ; Separate macro def and legend+unit ; leg_pos = strpos(line,'<') line_def = STRMID(line,0,leg_pos) line_def = strcompress(strtrim(line_def[0], 2)) macro_def = str_sep(line_def, ' ') nfields = n_elements(macro_def) ; ; extract legend and unit ; legend = extract_str(line, '<', '>') unit = extract_str(line, '[', ']') IF debug_w THEN print, ' EXIT get_macro_def...'