;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\302\303\304\305\306\307\306\301&\210\310\311\312\313\314DD\315\316\317\306\303&\210\310\320\312\313\321DD\322\316\323\306\303&\210\310\324\312\313\325DD\326\316\323\306\303&\210\310\327\312\313\330DD\331\316\323\306\303&\210\302\332\304\333\306\303\306\334&\210\335\336\337\340\306\332%\207" [require helm custom-declare-group helm-w32-launcher nil "Start Menu entry launcher." :group external custom-declare-variable helm-w32-launcher-csc-executable funcall function #[0 "\300\207" [nil] 1] "The C# compiler executable.\nIt can be either a file name or nil, in which case auto-detection is\nattempted.\nIt's used only once, to compile the C# helper." :type (choice (file :tag "Path") (const :tag "Try to guess" nil)) helm-w32-launcher-use-cache #[0 "\300\207" [t] 1] "Whether to cache the Start Menu entries.\nIf non-nil, the default, cache them." boolean helm-w32-launcher-fuzzy-match #[0 "\300\207" [nil] 1] "Whether to enable fuzzy matching in `helm-w32-launcher'.\nIf non-nil, enable fuzzy matching." helm-w32-launcher-use-paths-for-completion #[0 "\300\207" [nil] 1] "Whether to consider shortcut paths when completing candidates.\nIf non-nil, the pattern will be matched against full paths of shortcuts\nin addition to the shortcut names." helm-w32-launcher-faces "`helm-w32-launcher' faces." helm-faces custom-declare-face helm-w32-launcher-path ((t :inherit font-lock-comment-face)) "Face to highlight full paths of Start Menu entries."] 8) #@193 Launch a program as if from the Start Menu. When `helm-w32-launcher-use-cache' is non-nil, this function caches the Start Menu entries, use `helm-w32-launcher-flush-cache' to flush the cache. (defalias 'helm-w32-launcher #[0 "\300\301!\207" [helm-w32-launcher--helm helm-w32-launcher--launch] 2 (#$ . 1570) nil]) #@218 Launch a program as if from the Start Menu with elevated privileges. When `helm-w32-launcher-use-cache' is non-nil, this function caches the Start Menu entries, use `helm-w32-launcher-flush-cache' to flush the cache. (defalias 'helm-w32-launcher-elevated #[0 "\300\301!\207" [helm-w32-launcher--helm helm-w32-launcher--launch-elevated] 2 (#$ . 1890) nil]) #@194 Open the directory of the selected shortcut. When `helm-w32-launcher-use-cache' is non-nil, this function caches the Start Menu entries, use `helm-w32-launcher-flush-cache' to flush the cache. (defalias 'helm-w32-launcher-open-shortcut-directory #[0 "\300\301!\207" [helm-w32-launcher--helm helm-w32-launcher--open-directory] 2 (#$ . 2253) nil]) #@195 Open the properties of the selected shortcut. When `helm-w32-launcher-use-cache' is non-nil, this function caches the Start Menu entries, use `helm-w32-launcher-flush-cache' to flush the cache. (defalias 'helm-w32-launcher-open-shortcut-properties #[0 "\300\301!\207" [helm-w32-launcher--helm helm-w32-launcher--open-properties] 2 (#$ . 2606) nil]) #@111 The Start Menu entry cache, as returned by the helper program. It's a list of (NAME . FULL-PATH-TO-LNK-FILE). (defvar helm-w32-launcher--entry-cache nil (#$ . 2962)) #@47 Flush the internal `helm-w32-launcher' cache. (defalias 'helm-w32-launcher-flush-cache #[0 "\301\211\207" [helm-w32-launcher--entry-cache nil] 2 (#$ . 3134) nil]) #@98 Execute the Helm source. ACTION is the function to call upon selecting a candidate. (fn ACTION) (defalias 'helm-w32-launcher--helm #[257 "\302\303\304\305\306 \203\307\310\311\312\313\314\"\315 \316 &\202*\307\310\311\312\315 \316 \317\313&\n\262$\207" [helm-w32-launcher-use-paths-for-completion helm-w32-launcher-fuzzy-match helm :buffer "*helm w32-launcher*" :sources helm-w32-launcher--get-entries helm-make-source "W32 Launcher" helm-source-sync :candidates helm-w32-launcher--show-paths nil :fuzzy-match :action :filtered-candidate-transformer] 17 (#$ . 3304)]) #@51 Get Start Menu entries, possibly using the cache. (defalias 'helm-w32-launcher--get-entries #[0 "\204\302 \207 \203 \207\302 \211\207" [helm-w32-launcher-use-cache helm-w32-launcher--entry-cache helm-w32-launcher--call-helper-list-items] 2 (#$ . 3889)]) #@65 Open the shortcut located at SHORTCUT-PATH. (fn SHORTCUT-PATH) (defalias 'helm-w32-launcher--launch #[257 "\300\301\"\207" [helm-w32-launcher--shell-execute "open"] 4 (#$ . 4155)]) #@90 Open the shortcut located at SHORTCUT-PATH with elevated privileges. (fn SHORTCUT-PATH) (defalias 'helm-w32-launcher--launch-elevated #[257 "\300\301\"\207" [helm-w32-launcher--shell-execute "runas"] 4 (#$ . 4344)]) #@58 Open the directory of SHORTCUT-PATH. (fn SHORTCUT-PATH) (defalias 'helm-w32-launcher--open-directory #[257 "\300\301\"\207" [helm-w32-launcher--shell-execute "--explore--"] 4 (#$ . 4568)]) #@75 Open the properites of the shortcut at SHORTCUT-PATH. (fn SHORTCUT-PATH) (defalias 'helm-w32-launcher--open-properties #[257 "\300\301\"\207" [helm-w32-launcher--shell-execute "properties"] 4 (#$ . 4765)]) #@71 Add the full paths to the list of CANDIDATES. (fn CANDIDATES SOURCE) (defalias 'helm-w32-launcher--show-paths #[514 "\300\301\"\207" [mapcar #[257 "\211@\300\301A\302Q\303\304#PAB\207" [propertize " [" "]" face helm-w32-launcher-path] 6 "\n\n(fn CANDIDATE)"]] 5 (#$ . 4979)]) (defconst helm-w32-launcher--package-directory (byte-code "\302\206 !\207" [load-file-name default-directory file-name-directory] 2)) (defconst helm-w32-launcher--helper-source (expand-file-name "helper-src/*" helm-w32-launcher--package-directory)) (defconst helm-w32-launcher--helper-name (expand-file-name "helper.exe" helm-w32-launcher--package-directory)) #@62 Call the helper program to get the list of Start Menu items. (defalias 'helm-w32-launcher--call-helper-list-items #[0 "\300\301\302!!\207" [read helm-w32-launcher--call-helper "ItemLister"] 3 (#$ . 5628)]) #@109 Get Windows to perform OPERATION on SHORTCUT. See `w32-shell-execute' for details. (fn OPERATION SHORTCUT) (defalias 'helm-w32-launcher--shell-execute #[514 "\300\301\302!\302!#\207" [helm-w32-launcher--call-helper "ProcessStarter" helm-w32-launcher--encode-string] 7 (#$ . 5841)]) #@76 Call the helper program with ARGS and return its output.. (fn &rest ARGS) (defalias 'helm-w32-launcher--call-helper #[128 "\3031 \304\305#0\207\210 \204\306 \206\307\310!\305 \311\312\313\314\315\316\317!P\317\n!&\210\304\305#\207" [helm-w32-launcher--helper-name helm-w32-launcher-csc-executable helm-w32-launcher--helper-source (file-error) apply helm-w32-launcher--call-process helm-w32-launcher--guess-csc-executable error "Can't guess the path to csc.exe\nPlease set `helm-w32-launcher-csc-executable'" "/nologo" "/t:exe" "/debug-" "/utf8output" "/o" "/out:" helm-w32-launcher--slash-to-backslash] 11 (#$ . 6132)]) #@78 Encode a STRING by treating it as UTF-8 and base64-encoding it. (fn STRING) (defalias 'helm-w32-launcher--encode-string #[257 "\300\301\302\"!\207" [base64-encode-string encode-coding-string utf-8] 5 (#$ . 6771)]) #@78 Return a new STRING with all slashes replaced with backslashes. (fn STRING) (defalias 'helm-w32-launcher--slash-to-backslash #[257 "\300\301\302\303\211%\207" [replace-regexp-in-string "/" "\\" t] 7 (#$ . 6993)]) (byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put helm-w32-launcher-process-returned-non-zero error-conditions (helm-w32-launcher-process-returned-non-zero error) error-message "Process returned non-zero"] 4) #@187 Call PROGRAM synchronously in a separate process. PROGRAM and ARGS are as in `call-process'. The PROGRAM's output, decoded using UTF-8, is returned as a string. (fn PROGRAM &rest ARGS) (defalias 'helm-w32-launcher--call-process #[385 "\301\302\303\"r\211q\210\304\305\"\216\306\307\310\311\303\311&\312\313\314 T\"\315U\204.\316\317E\"\210)\262*\207" [coding-system-for-read generate-new-buffer " *temp*" t make-closure #[0 "\301\300!\205 \302\300!\207" [V0 buffer-name kill-buffer] 2] utf-8 apply call-process nil buffer-substring-no-properties 1 buffer-size 0 signal helm-w32-launcher-process-returned-non-zero] 10 (#$ . 7435)]) #@70 Try to guess the path to the newest possible C# compiler executable. (defalias 'helm-w32-launcher--guess-csc-executable #[0 "\3002c\301\302\303\304!\"\301\305\"\306!\203\211\202,\301\307\"\306!\203&\211\202*\310\300\311\"\262\262\312\313\311\314\315\316\317\"\"\"\320\"\211\211\203_\211@\301\321\301@\"\"\322!\203W\310\300\"\210\210A\266\202\202=\266\3110\207" [--cl-block-return-- expand-file-name "Microsoft.NET" getenv "WINDIR" "Framework64" file-directory-p "Framework" throw nil sort delq mapcar #[257 "\211GSH\300U\205\3011\302\303O!B0\207\210\304\207" [47 (error) version-to-list 1 nil] 7 "\n\n(fn NAME)"] file-name-all-completions "v" #[514 "\300AA\"\207" [version-list-<] 5 "\n\n(fn A B)"] "csc.exe" file-exists-p] 10 (#$ . 8087)]) (provide 'helm-w32-launcher)