;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\301\302\"\203=\303\304\305\"\210\306\304\307\310#\210\311\304\312\313#\210\303\314\315\"\210\306\314\307\310#\210\311\314\312\313#\210\303\316\317\"\210\306\316\307\310#\210\311\316\312\313#\210\202A\320\321!\210\322\323\324\325\326\327\330\331&\210\332\333\334\335\326\323%\210\332\336\337\340\326\323%\210\332\341\342\343\326\323%\210\332\344\345\346\326\323%\210\332\347\350\351\326\323%\210\332\352\353\354\326\323%\210\332\355\356\357\326\323%\210\332\360\361\362\326\323%\210\332\363\364\365\326\323%\210\366\367\370\371\372DD\373\374\375\326\327&\207" [emacs-version version< "26.1" defalias string-trim-left #[513 "\300\301\206\302\303Q\"\203\304\305\306\211$\207\207" [string-match "\\`\\(?:" "[ \n ]+" "\\)" replace-match #1="" t] 7 "Trim STRING of leading string matching REGEXP.\n\nREGEXP defaults to \"[ \\t\\n\\r]+\".\n\n(fn STRING &optional REGEXP)"] function-put speed -1 put byte-optimizer byte-compile-inline-expand string-trim-right #[513 "\300\301\206\302\303Q\"\203\304\305\306\211$\207\207" [string-match "\\(?:" "[ \n ]+" "\\)\\'" replace-match #1# t] 7 "Trim STRING of trailing string matching REGEXP.\n\nREGEXP defaults to \"[ \\t\\n\\r]+\".\n\n(fn STRING &optional REGEXP)"] string-trim #[769 "\301\206\302\303Q\304\305\306#)\266\203\211\203#\307O\266\203\202&\266\203\306\310\206.\302\311Q\"\203;\307\225\304O\207\207" [inhibit-changing-match-data "\\(?:" "[ \n ]+" "\\)\\'" nil t string-match 0 "\\`\\(?:" "\\)"] 12 "Trim STRING of leading and trailing strings matching TRIM-LEFT and TRIM-RIGHT.\n\nTRIM-LEFT and TRIM-RIGHT default to \"[ \\t\\n\\r]+\".\n\n(fn STRING &optional TRIM-LEFT TRIM-RIGHT)"] require subr-x custom-declare-group lispy-faces nil "Font-lock faces for `lispy'." :group lispy :prefix "lispy-face-" custom-declare-face lispy-face-hint ((((class color) (background light)) :background "#fff3bc" :foreground "black") (((class color) (background dark)) :background "black" :foreground "#fff3bc")) "Basic hint face." lispy-face-req-nosel ((t (:inherit lispy-face-hint))) "Face for required unselected args." lispy-face-req-sel ((t (:inherit lispy-face-req-nosel :bold t))) "Face for required selected args." lispy-face-opt-nosel ((t (:inherit lispy-face-hint :slant italic))) "Face for optional unselected args." lispy-face-key-nosel ((t (:inherit lispy-face-hint :slant italic))) "Face for keyword unselected args." lispy-face-opt-sel ((t (:inherit lispy-face-opt-nosel :bold t))) "Face for optional selected args." lispy-face-key-sel ((t (:inherit lispy-face-opt-nosel :bold t))) "Face for keyword selected args." lispy-face-rst-nosel ((t (:inherit lispy-face-hint))) "Face for rest unselected args." lispy-face-rst-sel ((t (:inherit lispy-face-rst-nosel :bold t))) "Face for rest selected args." custom-declare-variable lispy-window-height-ratio funcall function #[0 "\300\207" [0.65] 1] "`lispy--show' will fail with string taller than window height times this.\nThe caller of `lispy--show' might use a substitute e.g. `describe-function'." :type float] 8) #@76 Modes for which `lispy--eval-elisp' and related functions are appropriate. (defvar lispy-elisp-modes '(emacs-lisp-mode lisp-interaction-mode eltex-mode minibuffer-inactive-mode suggest-mode) (#$ . 3153)) #@60 Modes for which clojure related functions are appropriate. (defvar lispy-clojure-modes '(clojure-mode clojurescript-mode clojurex-mode clojurec-mode) (#$ . 3363)) #@24 Hint overlay instance. (defvar lispy-overlay nil (#$ . 3532)) #@58 Point position where the hint should be (re-) displayed. (defvar lispy-hint-pos nil (#$ . 3600)) #@62 Move point from function call at point to the function name. (defalias 'lispy--back-to-python-function #[0 "`\300\301 \203 \302\303!\207\3041#\305 \211\262\203\211@b\210\306\307!0\210\202'\210b\210\310\311!?\2053\312\311\313 \"\207" [nil lispy--in-comment-p error "Not possible in a comment" (error) lispy--bounds-string up-list -1 looking-at "\\_<" re-search-backward line-beginning-position] 5 (#$ . 3703)]) #@55 Display arglist for `lispy--current-function' inline. (defalias 'lispy-arglist-inline #[0 "\212\304=\203 \305 \210\202\306 \210\307 \310 \203\311\312 \313\"\210\205# `U?\205\234\n>\203C\314\315 !\316!\205>`\317\320!!\262\202\234\321=\204O >\203^\322\323!\210`\317\324\315 !!\202\234\325\267\202\230\322\326!\210`\317\327\315 !!\202\234\322\330!\210`\331\332 \333 \334 i$`Sf\335=\203\220\336 \210\202\202\317!\262\202\234\337\340\")\207" [major-mode lispy-hint-pos lispy-elisp-modes lispy-clojure-modes python-mode lispy--back-to-python-function lispy--back-to-paren lispy--cleanup-overlay window-minibuffer-p window-resize selected-window -1 intern-soft lispy--current-function fboundp lispy--show lispy--pretty-args cider-repl-mode require le-clojure lispy--clojure-args #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (lisp-mode 100 python-mode 115)) le-lisp lispy--lisp-args le-python lispy--python-arglist python-info-current-symbol buffer-file-name line-number-at-pos 46 backward-sexp error "%s isn't supported currently"] 5 (#$ . 4127) nil]) #@60 Store window configuration before `lispy-describe-inline'. (defvar lispy--di-window-config nil (#$ . 5251)) #@50 Point position for the first column of the hint. (defalias 'lispy--hint-pos #[0 "\212\301 \203 \302 b\210\202+\303=\203(\3041 \305\306!b0\210\202+\210\307\310!\210\202+\311 \210`)\207" [major-mode region-active-p region-beginning python-mode (error) beginning-of-thing sexp up-list -1 lispy--back-to-paren] 2 (#$ . 5365)]) #@52 Delete `lispy-overlay' if it's valid and return t. (defalias 'lispy--cleanup-overlay #[0 "\301!\205 \302!\210\303\304\207" [lispy-overlay overlayp delete-overlay nil t] 2 (#$ . 5701)]) #@26 Toggle the overlay hint. (defalias 'lispy--describe-inline #[0 "\3031O\304 \305=\203\306 !\203\307 \266\202\202M\212\310\311 `\"\312U\203)\313\314!\210\n\315=\2036\316 \202J\317\320 !\211\262\205Jb\210\321\322\323\324#!)\266\2020\207\210\307 \207" [lispy-hint-pos lispy-overlay major-mode (error) lispy--hint-pos nil overlayp lispy--cleanup-overlay count-lines window-start 0 recenter 1 scheme-mode geiser-doc-symbol-at-point lispy--docstring lispy--current-function lispy--show propertize face lispy-face-hint] 7 (#$ . 5896)]) #@38 Get the docstring for SYM. (fn SYM) (defalias 'lispy--docstring #[257 " >\203*\303!\262\304!\203\305!\206)\306\207\307!\203(\310\311\"\206)\306\207\312\207\n>\2046\313=\203\234\314\315!\210\316!\317\320\321;\203Q\322\323\324\325\"!!\202\204\326\267\202g\322\323\324\325\"!!\202\204\327\202\204<\203y@\330=\203yA@\202\204\331!\206\204\324\332\"#\333\334\335\206\215\336\337Q\"\203\232\340\225\333O\207\207\341\267\202\334\314\342!\210\343!\207\314\344!\210\211\203\266\345!\207\314\346!\210\347\350!\210\351 \211\203\330\352\353\354#\262\345!\206\333\355\356\"\210\333\207\357\360!\207\324\361\"\207" [major-mode lispy-elisp-modes lispy-clojure-modes intern-soft fboundp documentation "undocumented" boundp documentation-property variable-documentation "unbound" cider-repl-mode require le-clojure lispy--clojure-resolve replace-regexp-in-string "^\\(?:-+\n\\|\n*.*$.*@.*\n*\\)" "" read lispy--eval-clojure format "(with-out-str (clojure.repl/doc %s))" #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (special 87 keyword 99)) "No docs for keywords" variable lispy--describe-clojure-java "Could't resolve '%s" nil string-match "\\`\\(?:" "[ \n ]+" "\\)" 0 #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (lisp-mode 162 python-mode 170)) le-lisp lispy--lisp-describe le-python lispy--python-docstring semantic semantic-mode 1 semantic-ctxt-current-symbol mapconcat identity "." message "no doc: %s" error "The point is not on a symbol" "%s isn't supported currently"] 10 (#$ . 6447)]) #@61 Display documentation for `lispy--current-function' inline. (defalias 'lispy-describe-inline #[0 "\301\302\303 \"\203\304!\205\305!\207\306 \207" [lispy--di-window-config cl-some #[257 "\300\301!!\302\232\207" [buffer-name window-buffer "*lispy-help*"] 4 "\n\n(fn WINDOW)"] window-list window-configuration-p set-window-configuration lispy--describe-inline] 3 (#$ . 8068) nil]) #@38 Get arglist for SYMBOL. (fn SYMBOL) (defalias 'lispy--arglist #[257 "\300\301\302\303\"\"\211\262\203\211@\207\304\305\303\"B!\207" [nil help-split-fundoc documentation t prin1-to-string help-function-arglist] 7 (#$ . 8459)]) #@65 Join STRS padding each line with WIDTH spaces. (fn STRS WIDTH) (defalias 'lispy--join-pad #[514 "\300\301\302\303\"\"\304\305\"\306\307\"\310\311\312#\313#\207" [apply max mapcar length make-string 32 format "%%- %ds" mapconcat make-closure #[257 "\300\302\301\"\303\304G\305\306%\210\211\262P\207" [V0 V1 format font-lock-append-text-property 0 face lispy-face-hint] 9 "\n\n(fn X)"] "\n"] 10 (#$ . 8699)]) #@73 Return nil if window isn't large enough to display STR whole. (fn STR) (defalias 'lispy--show-fits-p #[257 "\301\302\"\211G\303 _W\204\304 \205\211\207" [lispy-window-height-ratio split-string "\n" window-height window-minibuffer-p] 5 (#$ . 9124)]) #@57 Show STR hint when `lispy--show-fits-p' is t. (fn STR) (defalias 'lispy--show #[257 "`\304!\211\203w\305\306 \203\307 eZ\202\310\311\312 `{!\\\"\262\212b\210\313y\313U\2034\314P\262\202<\315\210\314P\262``T{P\262 \203X\316 ``T#\210\317 \320\315#\210\202d\321``T\"\317 \322\323#\210\317 \324#\210\317 \325\326#\210\327\301\330#)\207\331 \332 r\333\334\"\216\335\336\337!!\210\340ed|\210c\210eb\210\341 +\207" [lispy-hint-pos lispy-overlay lispy--di-window-config inhibit-read-only lispy--show-fits-p lispy--join-pad window-minibuffer-p minibuffer-prompt-end 0 string-width line-beginning-position -1 "\n" nil move-overlay overlay-put invisible make-overlay priority 9999 display after-string "" put last-point current-window-configuration internal--before-save-selected-window make-closure #[0 "\301\300!\207" [V0 internal--after-save-selected-window] 2] pop-to-buffer get-buffer-create "*lispy-help*" t help-mode] 9 (#$ . 9386)]) #@72 Return a vector of fontified strings for function SYMBOL. (fn SYMBOL) (defalias 'lispy--pretty-args #[257 "\300\301!!A\302\303\304\305$\302\306\304\305$\206\307\310\"\311\312\206&\206&G#\2057\311T\2066G#\205>\313!\314\315\316\317\320\321\322 !\323\324#C\325\326\n\"\325\327\n\"\325\330\n\"$\331#\"\207" [read lispy--arglist cl-position &optional :test equal &rest cl-position-if #[257 "\2119\205 \300\301\302!\"\207" [string-match "\\.\\.\\.\\'" symbol-name] 5 "\n\n(fn X)"] cl-subseq 0 last format "(%s)" mapconcat identity append propertize symbol-name face lispy-face-hint mapcar #[257 "\300\301!\227\302\303#\207" [propertize prin1-to-string face lispy-face-req-nosel] 5 "\n\n(fn X)"] #[257 "\300\301!\227\302\303#\207" [propertize prin1-to-string face lispy-face-opt-nosel] 5 "\n\n(fn X)"] #[257 "\300!\227\262\301\302\"\204\211\303P\262\304\305\306#\207" [symbol-name string-match "\\.\\.\\.$" "..." propertize face lispy-face-rst-nosel] 5 "\n\n(fn X)"] " "] 18 (#$ . 10350)]) (provide 'lispy-inline)