.#,*! 4 ! n # dir+*! 6 ! h+.! 9 ! h / set_line_hidden * pop_mark_0/n" 12 . is_line_hidden! h" 13! 0 / set_line_hidden" 14 1 push_visible_mark" 15 ! n ( go_right" 16 # dir! 0=. 7 exchange_point_and_mark/c" 17! 1 & update" 18 & getke y ( ungetkey" 19 3 EXECUTE_ERROR_BLOCK! 4y0 mark_next_nchars,*" 28 * search_fun # pat # rep % query ' rep_fun+*" 30 ! n & prompt $ doit # err " ch ' pat_len+*" 31 / undo_stack_type+" 33' rep_len" 34+ prev_string" 35) user_mark" 36$ next! 4 " 31/ undo_stack_type*" 38 * undo_stack+ $ NULL* undo_stack*" 39 # tmp+*" 40 2 replacement_length+ # rep & strlen2 replacement_length" 42E Replace '%s' with '%s'? (y/n/!/+/q/h) # pat # rep ' sprintf& prompt." 44 # pat * search_funM' pat _len ' pat_len! 0@/." 46 % query." 49 # rep ' pat_len ' rep_funMP" 50 ' pat_len! 0A." 53 * go_right_1/cu/b." 59 & prompt ' message" 60 ' pat_len" -1 0 mark_next_nchars" 62 & getkey" ch" 63 " ch# 114A." 65# 114 + window_info! 2< ( recenter/c/." 68 " ch# 114A/k" 70 " ch." 71# 117x * undo_stack $ NULLBC3" 72 * undo_stack") user_mark . goto_user_mark" 73 ) push_spot" 74 * undo_stack"+ prev_string * undo_stack"' rep_len ' rep_funMP" 75 ( pop_spot" 76 * undo_stack"$ next * undo_stack/." 78# 121x3" 79 / undo_stack_typeM# tmp" 80 * undo_stack # tmp$ next" 81 # tmp* undo_stack" 83 ) push_spot ) push_mark" 84 ' pat_len ( go_right ) bufsubstr * undo_stack+ prev_string" 85 ( pop_spot" 86 0 create_user_mark * und o_stack) user_mark" 87 # rep ' pat_len ' rep_funM * undo_stack' rep_len" 88 ' pat_len! 0A." 89! 1 ( go_right/c/." 91# 110x3 * go_right_1/." 92" 43x3 # rep ' pat_len ' rep_funMP" 93 ' pat_len! 0A." 94! 1 ( go_right/cv/." 97" 33x3" 98! 0% query/.# 100# 113x3v/.# 102k y:replace, n:skip, !:replace all, u: undo last, +:replace then quit, q:quit % flush# 103" 30 - input_pendingP/j/f" 28y2 replace_with_query,*# 108 # fun # str # dir , match_ok_fun+*# 110 " ch # len+.# 112 # str # dir # funM# len # len! 0@/.# 114 , match_ok_funM.# 116 / EXECUTING_MACRO . DEFINING_MACROD.! 1w/c# 117@ Press RET to continue searching. ' message# 118 # len" -1 0 mark_next_nchars# 119 & getkey" ch# 120 " ch" 13B.# 122 " ch ( ungetkey# 123! 1w/c/c# 126 # dir! 0?. * go_right_1/c/f# 128! 0w# 108y2 search_maybe_again,*# 139 & off_on+# Off" On& off_on# 140 + CASE_SEARCHN+ CASE_SEARCH# 141> Case Search %s for this buffer + CASE_SEARCH & off_on! ( vmessag e# 1372 toggle_case_search# 144( srchmisc ' provide