;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312&\207" [require electric text-property-search custom-declare-group tmm nil "Text mode access to menu-bar." :prefix "tmm-" :group menu] 8)
(defvar tmm-old-mb-map nil)
(defvar tmm-c-prompt nil)#@455 Text-mode emulation of looking and choosing from a menubar.
See the documentation for `tmm-prompt'.
X-POSITION, if non-nil, specifies a horizontal position within the menu bar;
we make that menu bar item (the one at that position) the default choice.

Note that \[menu-bar-open] by default drops down TTY menus; if you want it
to invoke `tmm-menubar' instead, customize the variable
`tty-menu-open-use-tmm' to a non-nil value.

(fn &optional X-POSITION)
(defalias 'tmm-menubar #[256 "\301\302!\210\203 \303 \207\304 \205 \305!\306\307\205 @#\207" [isearch-mode run-hooks menu-bar-update-hook isearch-tmm-menubar menu-bar-keymap menu-bar-item-at-x tmm-prompt nil] 7 (#$ . 347) nil])#@237 Text-mode emulation of looking and choosing from a menubar.
This command is used when you click the mouse in the menubar
on a console which has no window system but does have a mouse.
See the documentation for `tmm-prompt'.

(fn EVENT)
(defalias 'tmm-menubar-mouse #[257 "\300\301!\3028\262@!\207" [tmm-menubar event-start 2] 5 (#$ . 1044) "e"])
(byte-code "\300\301\302\303\304DD\305\306\307%\207" [custom-declare-variable tmm-mid-prompt funcall function #[0 "\300\207" ["==>"] 1 ""] "String to insert between shortcut and menu item.\nIf nil, there will be no shortcuts.  It should not consist only of spaces,\nor else the correct item might not be found in the `*Completions*' buffer." :type (choice (const :tag "No shortcuts" nil) string)] 6)#@34 A place to store minibuffer map.
(defvar tmm-mb-map nil (#$ . 1798))
(byte-code "\300\301\302\303\304DD\305\306\307%\210\300\310\302\303\311DD\312\306\313%\210\300\314\302\303\315DD\316\306\317%\207" [custom-declare-variable tmm-completion-prompt funcall function #[0 "\300\207" ["Press PageUp key to reach this buffer from the minibuffer.\nAlternatively, you can use Up/Down keys (or your History keys) to change\nthe item in the minibuffer, and press RET when you are done, or press the\nmarked letters to pick up your choice.  Type C-g or ESC ESC ESC to cancel.\n"] 1 #1=""] "Help text to insert on the top of the completion buffer.\nTo save space, you can set this to nil,\nin which case the standard introduction text is deleted too." :type (choice string (const nil)) tmm-shortcut-style #[0 "\300\207" [(downcase upcase)] 1 #1#] "What letters to use as menu shortcuts.\nMust be either one of the symbols `downcase' or `upcase',\nor else a list of the two in the order you prefer." (choice (const downcase) (const upcase) (repeat (choice (const downcase) (const upcase)))) tmm-shortcut-words #[0 "\300\207" [2] 1 #1#] "How many successive words to try for shortcuts, nil means all.\nIf you use only one of `downcase' or `upcase' for `tmm-shortcut-style',\nspecify nil for this variable." (choice integer (const nil))] 6)
(custom-declare-face 'tmm-inactive '((t :inherit shadow)) "Face used for inactive menu items.")#@14 

(fn ITEMS)
(defalias 'tmm--completion-table #[257 "\300\301\"\207" [make-closure #[771 "\211\301=\203 \302\207\303\300$\207" [V0 metadata (metadata (display-sort-function . identity)) complete-with-action] 8 "\n\n(fn STRING PRED ACTION)"]] 4 (#$ . 3225)])
(defvar tmm--history nil)#@694 Text-mode emulation of calling the bindings in keymap.
Creates a text-mode menu of possible choices.  You can access the elements
in the menu in two ways:
   *)  via history mechanism from minibuffer;
   *)  Or via completion-buffer that is automatically shown.
The last alternative is currently a hack, you cannot use mouse reliably.

MENU is like the MENU argument to `x-popup-menu': either a
keymap or an alist of alists.
DEFAULT-ITEM, if non-nil, specifies an initial default choice.
Its value should be an event that has a binding in MENU.
NO-EXECUTE, if non-nil, means to return the command the user selects
instead of executing it.

(fn MENU &optional IN-POPUP DEFAULT-ITEM NO-EXECUTE)
(defalias 'tmm-prompt #[1025 "\306\307\211\211\211\211\211\211\211\211\310!?	\311\312!\210\211\204, \313\314\"\210\202v \211\203u \211@\211;\203? \211\262\202n \211<\203L \315\"\210\202n \316!\203n \211G\317\211W\203l \315HB\"\210\211T\262\202U \266A\266\202\202. \210\211\203\211 \fG\320U\203\211 \f@A\262\202\220\f\204\221 \321\322!\210\f\203T\317\203\240 \323\f!\202\243 \324\f!\203\360 \307\203\356 @\242=\204\356 @:\203\347 @A\242;\204\343 @A\242\325=\203\347 \326\327@\233\330\"\262\211\203\343 \331!\203\347 T\262A\262\202\254 \266\332;\205\373 \333\334!PP\324\335\307\336\337\340\"\f\"\"!,\210,G\262	SZ,8\203&\211\f8@\202Q\341\342\343!\211\337\344#M\210\337\345\"\216\346\347\"\210\350\351P\352\f!\307\353\307\354\324,!&)\266\202\262\n\210\355	\f\"A\262\204x\356\n\n\"\203x\nG\307O\262	\355	\f\"A\262\204\220\203\220\357	\f\"\262	\355	\f\"A\262@\262A\262\203\241\202\361\211\203\257\360\353\307$\202\361\310!\203\3269\203\277\361!\262\3621\313\363\364!0\210\202\314\210\360\307\211$\202\361\205\361\203\360\203\347\202\3616\365!\202\361-\207" [tmm-short-cuts tmm-old-mb-map tmm-c-prompt tmm-table-undef tmm-km-list tmm-mid-prompt "Menu bar" nil keymapp run-hooks activate-menubar-hook map-keymap #[514 "\300B!\207" [tmm-get-keymap] 5 "\n\n(fn K V)"] tmm-get-keymap vectorp 0 1 error "Empty menu reached" tmm-add-shortcuts reverse menu-item plist-get 4 :visible eval "^" "." regexp-quote delq mapcar make-closure #[257 "\301\300@\"\205\n \211@\207" [V0 string-match] 4 "\n\n(fn ELT)"] tmm-add-prompt make-symbol "minibuffer-setup" #[0 "\302\303\300\"\210\301 \207" [V0 V1 remove-hook minibuffer-setup-hook] 3] #[0 "\301\302\300\"\207" [V0 remove-hook minibuffer-setup-hook] 3] add-hook minibuffer-setup-hook completing-read-default " (up/down to change, PgUp to menu): " tmm--completion-table t tmm--history assoc string-prefix-p try-completion tmm-prompt indirect-function (error) require mouse call-interactively last-command-event] 27 (#$ . 3520)])#@226 Add shortcuts to cars of elements of the list.
Takes a list of lists with a string as car, returns list with
shortcuts added to these cars.
Stores a list of all the shortcuts in the free variable `tmm-short-cuts'.

(fn LIST)
(defalias 'tmm-add-shortcuts #[257 "\301\302\303\304!\")\207" [tmm-next-shortcut-digit 48 mapcar tmm-add-one-shortcut reverse] 5 (#$ . 6316)])#@12 

(fn ELT)
(defalias 'tmm-add-one-shortcut #[257 "\211AA\305=\203 \306\307G\310\"@QAB\207\211@\311\312\"\313\211\314\3152\250 	\203, 	W\203\211 \316\317#\211\262\203\211 \203B V\204\211 \313U\204Q SH\320U\204~ \n<\203Z \n\202\\ \nC\211\203} \211@\211H!\262>\204v \321\315\"\210A\266\202\202\\ \210T\262\313\225\262\202\" \f\322X\203\243 \f\262\fT\211>\204\211 \321\315\"\210\202\211 \314\211\2620\210\211\203\261 \211B\211\203\275 \323!P\202\303 \307GT\324\"PAB\207" [tmm-mid-prompt tmm-shortcut-words tmm-shortcut-style tmm-short-cuts tmm-next-shortcut-digit ignore " " make-string 45 string-search "(" 0 nil done string-match "\\w+" 46 throw 57 char-to-string 32] 11 (#$ . 6691)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tmm-add-one-shortcut speed -1 put byte-optimizer byte-compile-inline-expand] 5)#@19 

(fn MINIBUFFER)
(defalias 'tmm-define-keys #[257 "\302 \303\304\"\210\211\2037 \211@	<\203 \305\306!\307#\210\2020 \305\306\227!\307#\210\305\306\226!\307#\210A\266\202\202 \210\203Z \305\310\311#\210\305\312\311#\210\305\313\311#\210\305\314\315#\210\305\316\317#\210\320 \321\322\320 \"!\210\207" [tmm-short-cuts tmm-shortcut-style make-sparse-keymap suppress-keymap t define-key char-to-string tmm-shortcut [pageup] tmm-goto-completions [prior] "v" "" next-history-element "" previous-history-element current-local-map use-local-map append] 8 (#$ . 7566)])
(defalias 'tmm-completion-delete-prompt #[0 "rq\210eb\210\302`\303\"\203 `\206 \304`\303\"\212\305\306\307\310#)\211\2053 \311!	>\2040 \312\313\314D\"\210\211\315H\204< \211?\206Q `\203K \203K ^\206P \206P |\266\203)\207" [standard-output cl-struct-prop-match-tags get-text-property mouse-face next-single-char-property-change text-property-search-forward face tmm-inactive t type-of signal wrong-type-argument prop-match 1] 6])#@58 Remove the mouse-face property from inactive menu items.
(defalias 'tmm-remove-inactive-mouse-face #[0 "\302\303\304G\305\"P\306\212eb\210m\2041 \307`\310\"\262\311!\203+ \312`\313#\210\314`\315#\210\211b\210\202 )\316\306!)\207" [tmm-mid-prompt inhibit-read-only t " " make-string 45 nil next-single-char-property-change mouse-face looking-at remove-text-properties (mouse-face nil) add-text-properties (face tmm-inactive) set-buffer-modified-p] 7 (#$ . 8595)])
(defalias 'tmm-add-prompt #[0 "\204 \304\305!\210\306\307!\n\204 \310\311\312\313#\210\314\216\315 )\210r\316q\210\317 \210\n\205C \307\320\316!eb\210\nc\210\211\205@ \321\322\211\211\211\307&)\266\202)\207" [tmm-c-prompt tmm-old-mb-map tmm-completion-prompt inhibit-read-only error "No active menu entries" tmm-define-keys t add-hook completion-setup-hook tmm-completion-delete-prompt append #[0 "\300\301\302\"\207" [remove-hook completion-setup-hook tmm-completion-delete-prompt] 3] minibuffer-completion-help "*Completions*" tmm-remove-inactive-mouse-face get-buffer-window fit-window-to-buffer nil] 9])#@42 Choose the shortcut that the user typed.
(defalias 'tmm-shortcut #[0 "\305	9\203\f 	!\262\n>\205Y \306 \307\232\203( eb\210\310\311\312!Q!\210\313 \207\314 d|\210\f\211\203S \211@\211@\315GT@G^O\312!P\230\203L \211@\262A\266\202\202. \210\211c\210\316 \207" [last-command-event tmm-shortcut-style tmm-short-cuts tmm-mid-prompt tmm-km-list nil buffer-name "*Completions*" re-search-forward "\\(^\\|[ 	]\\)" char-to-string choose-completion minibuffer-prompt-end 0 exit-minibuffer] 8 (#$ . 9687) nil])#@33 Jump to the completions buffer.
(defalias 'tmm-goto-completions #[0 "\301 \211d{\211d|\266\302\303!\210\304!\210\305!\207" [tmm-c-prompt minibuffer-prompt-end switch-to-buffer-other-window "*Completions*" search-forward search-backward] 3 (#$ . 10204) nil])#@412 Prepend (DOCSTRING EVENT BINDING) to free variable `tmm-km-list'.
The values are deduced from the argument ELT, that should be an
element of keymap, an `x-popup-menu' argument, or an element of
`x-popup-menu' argument (when IN-X-MENU is not-nil).
This function adds the element only if it is not already present.
It uses the free variable `tmm-table-undef' to keep undefined keys.

(fn ELT &optional IN-X-MENU)
(defalias 'tmm-get-keymap #[513 "\302\211\211\211\211\211@A\262	\303=\203 \211CB\211\207\304\"\204o\305	!\2041 \306	!\2038 \262\2025\306	\243!\204H \305	\243!\203\\ A\262@;\2035@\262\2025\306	\243\243!\204n \305	\243\243!\203\203 AA\262@;\2035@\262\2025\242\307=\203\351 \243\243\243\262\242:\203\234 \243\262\310	8\262\311	A@!\262\312\313\"\262\203\272 !\262\312\314\"\262\203\316 \311!\205\314 \262\312\315\"\262\2035\311!\203\343 \202\344 \316\262\2025\306	\243\243\243!\204\375 \305	\243\243\243!\203AAA\262@;\2035@\262\2025\211;\2035\211\262\302\262\204*\242;\203/\2023\317	B\262\316=\204o\203o\320\302\321#\211\203n\322!\262\323\324 \310\245\325Z^\326\310\327\f!Z\327!Z]\330\"Q\262\210\210\203~;\203~\262\203\2419\203\241\331N\203\241\311\331N!\203\236\202\237\316\262\205\274\205\274\304	\"\206\274BB	B\211\207" [tmm-table-undef tmm-km-list nil undefined assoc functionp keymapp menu-item 2 eval plist-get :filter :visible :enable ignore keymap where-is-internal t key-description 30 window-width 10 make-string string-width 32 menu-enable] 17 (#$ . 10472)])
(provide 'tmm)
