.#! 1* _traceback! 1+ _debug_info3 Dabbrev_delete_tail! 0 / custom_variable7 Dabbrev_Default_Buflist! 0 / custom_variable5 Dabbrev_Look_in_Folds! 1 / custom_variable3 Dabbrev_Case_Search! 0 / custom_variable,* # buf+ # buf & setbuf - get_mode_namew4 get_buffer_mode_name,* % scope+* $ cbuf+ ' whatbuf$ cbuf % scope. $ cbufw/b* ' buffers+ + buffer_listP' buffers % scope! 3?. ' buffers $ cbufB % where ' buffers!' buffers! 3% scope/c* ! i+! 0 $ cbuf!" 32B. ( Int_Type }' strncmp ' buffers! ! 1 ) array_map % where! i ! i ' buffers!' buffers/c % scope.! 1x3 ( Int_Type}. buffer_visible ' buffers ) array_map! i/.! 2x3* $ mode+ - get_mode_name$ mode $ mode + String_Type}4 get_buffer_mode_name ' buffers ) array_mapA! i $ cbuf & setbuf/.! 3x3! 1 ' buffers & length! i/j ! i % where ' buffers!' buffers ' buffers" \n ' strjoinw+ get_buflist,* * word_chars $ kill+ ) push_mark * word_chars * skip_chars 7 exchange_point_and_mark $ kill. 0 bufsubstr_deletew/. ) bufsubstrw/d1 dab_get_word_tail& 0 Dab_Context_Type+) scan_mark/ completion_list( patterns- pattern_index+ buffer_list1 buffer_list_index- match_methods3 match_methods_index* word_chars* search_dir* start_mark * completion+ prefix_mark, start_buffer" 140 Dab_Context_Type,* ! c # buf+ 0 create_user_mark ! c* start_mark # buf & setbuf ) push_spot - count_narrows 5 Dabbrev_Look_in_FoldsC. + push_narrow , widen_buffer/c ! c") scan_mark $ NULLB. ! c ") scan_mark . goto_user_mark/. # buf ! c", start_bufferB. # eob/c/d, enter_buffer,* ! c+ * pop_narrow ( pop_spot ! c"* start_mark 0 user_mark_buffer & setbuf ! c"* start_mark . goto_user_mark, leave_buffer,* & prefix $ word+ & prefix $ word & prefix & strlen ' strncmp. $ NULLw/c $ wordw/ dab_exact_match,* & prefix $ word+ $ word % strupw3 dab_uppercase_match,* & prefix $ word+ $ word & strloww3 dab_lowercase_match,* ! c+ 0 Dab_Context_TypeM! c* + buffer_list+ ' whatbuf ! c , start_buffer & _NARGS. & _NARGS! 1?.R Incorrect usage of dabbrev-- one argument expected % error/c+ buffer_list + buffer_list & typeof + String_TypeB. + buffer_list + get_buflist+ buffer_list/c/.* - buflist_scope+" -1 / prefix_argument - buflist_scope - buflist_scope" -1A. 7 Dabbrev_Default_Buflist- buflist_scope/c - buflist_scope + get_buflist+ buffer_list/d + buffer_list & strlen! 0A.! 0 + String_Type! ! c+ buffer_list/. + buffer_list" 10! 0 ' strchop ! c + buffer_list/d! 0 ! c1 buffer_list_index* * word_chars+2 dabbrev_word_chars 2 mode_get_mode_info* word_chars * word_chars $ NULLA.* Word_Chars 1 blocal_var_exists.* Word_Chars . get_blocal_var* word_chars/.! _ . get_word_chars9 * word_chars/d/c * word_chars ! c* word_chars ) push_mark! ^ * word_chars9 + bskip_chars* # tmp+ 0 create_user_mark# tmp * word_chars + bskip_chars 0 create_user_mark ! c+ prefix_mark 7 exchange_point_and_mark* ' pattern+ ) bufsubstr' pattern # tmp ! c"+ prefix_markA.1 nothing to expand % error/c ' pattern ! c( patterns! 0 ! c- pattern_index ( Int_Type * Assoc_Type! ! c/ completion_list! 1 ! c"/ completion_list}/ dab_exact_match ! c- match_methods* " cs+ $ NULL" cs 3 Dabbrev_Case_Search 1 blocal_var_exists.3 Dabbrev_Case_Search . get_blocal_var" cs/.3 dabbrev_case_search 2 mode_get_mode_info" cs/d " cs $ NULLA. 3 Dabbrev_Case_Search" cs/c " cs! 0A. ' pattern & strlow ' patternA. ! c"- match_methods }3 dab_lowercase_match ! c- match_methods/c ' pattern % strup ' patternA. ! c"- match_methods}3 dab_uppercase_match ! c- match_methods/c/c! 0 ! c3 match_methods_index! 0 ! c* search_dir ! cw9 create_completion_context,* ! c * search_dir , match_method ' pattern+* " cs+ + CASE_SEARCH" cs. " cs+ CASE_SEARCH/o! 0+ CASE_SEARCH* % found * word_chars+ ! c"* word_chars* word_chars* + prefix_mark+ ! c"+ prefix_mark+ prefix_mark.. * search_dir! 1A.! 1 ( go_right ' pattern ' fsearch % found/. ' pattern ' bsearch% found/d % found. $ NULLw/b ) push_spot * word_chars + bskip_chars* ! m+ 0 create_user_mark! m ( pop_spot/. ! m 0 create_user_markB ! m + prefix_markAD/k* # len+ ' pattern & strlen# len ) push_spot ) push_mark # len ( go_right * word_chars * skip_chars* $ word+ ) bufsubstr$ word ( pop_spot ' pattern $ word , match_methodM$ word $ word $ NULLB. # len $ word!w/c/e* dab_search,* ! c * completion+ ! c"/ completion_list * completion 0 assoc_key_exists.! 0w/c! 1 * completion ! c"/ completion_list! 1w0 is_completion_ok,* ! c # buf ' pattern+ ! c # buf , enter_buffer. ! c , leave_buffer/o* # dir+ ! c"* search_dir# dir. # dir! 2=/.* 3 match_methods_index+ ! c "3 match_methods_index3 match_methods_index* 7 match_methods_index_max+ ! c"- match_methods & length7 match_methods_index_max. 3 match_methods_index 7 match_methods_index_max=/.* , match_method+ 3 match_methods_index ! c"- match_methods! , match_method* * completion+ ! c # dir , match_method ' pattern * dab_search* completion * completion $ NULLA. ) goto_spot3 match_methods_indexu/c ! c * completion 0 is_completion_ok. 3 match_methods_index ! c3 match_methods_index 0 create_user_mark ! c) scan_mark # dir ! c* search_dir * completionw/c/f! 0 ! c3 match_methods_index# dir/f! 0 ! c* search_dir $ NULL ! c) scan_mark $ NULLw2 dab_process_buffer,* ! c+* * completion+. ! c"- pattern_index ! c"( patterns & length=/.* ' pattern+ ! c"- pattern_index ! c"( patterns!' pattern* 1 buffer_list_index+ ! c"1 buffer_list_index1 buffer_list_index* 5 buffer_list_index_max+ ! c"+ buffer_list & length5 buffer_list_index_max. 1 buffer_list_index 5 buffer_list_index_max=/. ! c 1 buffer_list_index ! c"+ buffer_list! ' pattern 2 dab_process_buffer* completion * completion $ NULLB. 1 buffer_list_index ! c1 buffer_list_index * completionw/c1 buffer_list_index/f! 0 ! c1 buffer_list_index ! c - pattern_index/f! 0 ! c- pattern_indexD No more completions for "%s" in [%s] ! c"( patterns! , ' strjoin ! c"+ buffer_list! , ' strjoin ( vmessage $ NULLw* dab_expand& 2 Completion_Context+ $ NULL2 Completion_Context& * Completion+ $ NULL * Completion,/ before_key_hook,* # fun+! 0 # fun' dabbrev ) is_substrA * Completion $ NULLAD.5 _jed_before_key_hooks}/ before_key_hook 0 remove_from_hook $ NULL2 Completion_Contextw/c ) push_mark * Completion & strlen ' go_left * del_region/ before_key_hook,* $ type # fun # key $ args+ & _NARGS * __pop_args$ args5 _jed_before_key_hooks}/ before_key_hook + add_to_hook 2 Completion_Context $ NULLA. $ args + __push_args 9 create_completion_context2 Completion_Context /c 2 Completion_Context * dab_expand* Completion * Completion $ NULLB. * Completion & insert/c' dabbrev