diff -ur v32/ezmd.py v33/ezmd.py --- v32/ezmd.py 2019-10-13 02:24:13.000000000 +0900 +++ v33/ezmd.py 2019-10-13 14:04:53.000000000 +0900 @@ -697,7 +697,16 @@ do_mode_ul(buf) return outbuf.pop_tmp() - return flat_map( lambda tag: f(tag.v) if tag.name == 'index' else tag, outbuf.lst_get() ) + def f_o(o): + if is_lst(o): + return flat_map(f_o, o) + if is_tag(o): + if o.name == 'index': + return f( o.v ) + o.v = f_o( o.v ) + return o + + return f_o( outbuf.lst_get() ) def ezmd(lst): lst = ['p'] + lst