;ELC ;;; Compiled ;;; in Emacs version 26.3 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\207" [require ebdb-com message sendmail] 2) #@62 A hashtable recording buffer, buffer-window and window-point (defvar ebdb-complete-info (make-hash-table) (#$ . 500)) #@102 Push email-address(es) of `records' to buffer in `ebdb-complete-info'. (fn RECORDS &optional _ ARG) (defalias 'ebdb-complete-push-mail #[769 "\302!\262\204 \303\304!\207\305\306\307\310\311\312!\313\"\314\315%\316#\317\320\"\211\205nr\211q\210\321\230\204h\212`\322 \323\"\324\325\326\327#)\266\203\205V\330\325\326\327#)\266\203?\266\203)\203_\316c\210c\210\303\331#\210\332\333`#)\207" [ebdb-complete-info inhibit-changing-match-data ebdb-record-list message "No records" mapconcat make-byte-code 257 "\301\302\300\"\"\207" vconcat vector [ebdb-dwim-mail ebdb-record-one-mail] 6 "\n\n(fn R)" ", " gethash :buffer "" line-beginning-position buffer-substring-no-properties "@" nil t string-match ", *$" "%s, will be push to buffer: \"%s\"" puthash :window-point] 15 (#$ . 625) (byte-code "\301 \302:\206 E\207" [current-prefix-arg ebdb-do-records nil] 3)]) #@96 Quit EBDB window and return message window. Before quit, this command will do some clean jobs. (defalias 'ebdb-complete-quit-window #[0 "r\302 q\210\303)\304 \210\305\306\307 \"\306\310 \"\"\210\311 !\211\207" [header-line-format ebdb-complete-info ebdb-make-buffer-name nil quit-window set-window-point gethash :window :window-point clrhash] 5 (#$ . 1523) nil]) #@60 Push email-address to Message window and quit EBDB window. (defalias 'ebdb-complete-push-mail-and-quit-window #[0 "\301\302\"\203\303\304!\210\305 \207\306\307!\207" [ebdb-complete-info gethash :buffer call-interactively ebdb-complete-push-mail ebdb-complete-quit-window message "Invalid push buffer, Do nothing!!"] 3 (#$ . 1894) nil]) #@56 Grab word at point, which used to build search string. (defalias 'ebdb-complete-grab-word #[0 "`\212\300\301!\210`){\207" [skip-syntax-backward "w_"] 3 (#$ . 2239)]) #@186 Open EBDB window as an email-address selector, if Word at point is found, EBDB will search this word and show search results in EBDB window. This command only useful in Message buffer. (defalias 'ebdb-complete #[0 "p\304\305\306!\204\305\307!\203(\310 \262\311\312#\210\311\313\314 #\210\311\315`#\210\202/\316!\304\262\211\203o\211G\317V\203o\320G[!\210\311\315`#\210\321\322 \323\304\"\262@\324\325\"\203[\326\202g\324\327\"\203f\323\202g\330\262\"\210\202\315\212`\331 \332\"\333\304\334\335#)\266\203\266\203)\203\247\334\336\337!\210\340 \210\314\341 !\342!\203\242\343\304\"\210\210)\202\315\321\322 \323\304\"\262@\324\325\"\203\274\326\202\310\324\327\"\203\307\323\202\310\330\262\344\"\210\305\306!\204\331\305\307!\205\351r\341 q\210\345\346\347!\350!\"\211)\207" [ebdb-complete-info inhibit-changing-match-data ebdb-complete-mail-allow-cycling header-line-format nil derived-mode-p message-mode mail-mode ebdb-complete-grab-word puthash :buffer :window get-buffer-window :window-point clrhash 0 delete-char ebdb this-command-keys append eql 124 filter 43 display line-beginning-position buffer-substring-no-properties "@.*>$" t string-match message "Cycling current user's email address!" ebdb-complete-mail ebdb-make-buffer-name window-live-p quit-window "" format substitute-command-keys "## Type `\\[ebdb-complete-push-mail]' or `\\[ebdb-complete-push-mail-and-quit-window]' to push email to buffer \"%s\". ##" buffer-name] 12 (#$ . 2412) nil]) #@187 A command which will be bound to TAB key in message-mode, when in message headers, this command will launch `ebdb-complete', when in message body, this command will indent regular text. (defalias 'ebdb-complete-message-tab #[0 "\212`\303 \210`V\262)\203!\304\305\306 \"\204!\304\307\306 \"\204!\310 \207\203( \207\311 \312\"\2067\311\n\312\"\2067\313 \207" [message-tab-body-function text-mode-map global-map message-goto-body looking-back "^\\(Subject\\|From\\): *.*" line-beginning-position "^" ebdb-complete lookup-key " " indent-relative] 3 (#$ . 3932) nil]) #@34 Setup ebdb-complete Keybindings. (defalias 'ebdb-complete-keybinding-setup #[0 "\301\302\303#\210\301\304\305#\210\301\306\307#\207" [ebdb-mode-map define-key "q" ebdb-complete-quit-window "" ebdb-complete-push-mail " " ebdb-complete-push-mail-and-quit-window] 4 (#$ . 4511)]) #@69 Enable ebdb-complete, it will rebind TAB key in `message-mode-map'. (defalias 'ebdb-complete-enable #[0 "\302\303!\210\304\305\306\"\210\307\310\311#\210\307 \310\311#\210\303\312!\207" [message-mode-map mail-mode-map require message add-hook ebdb-mode-hook ebdb-complete-keybinding-setup define-key " " ebdb-complete-message-tab "ebdb-complete: Override EBDB keybindings: `q', `C-c C-c' and `RET'"] 4 (#$ . 4799) nil]) (provide 'ebdb-complete)