;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310%\210\311\312\313\314\315DD\316\317\320%\210\311\321\313\314\322DD\323\317\324%\210\311\325\313\314\326DD\327\317\330%\207" [require dired dash custom-declare-group sxiv nil "Run the Simple X Image Viewer." :group multimedia custom-declare-variable sxiv-arguments funcall function #[0 "\300\207" [("-a" "-f" "-o")] 1] "Arguments to be passed to the sxiv process.\nIt must contain \"-o\" for marking in Dired buffers to function." :type (repeat string) sxiv-exclude-strings #[0 "\300\207" [nil] 1] "Exclude files whose paths match these strings." (repeat string) sxiv-after-exit-functions #[0 "\300\207" [(sxiv-dired-mark-files)] 1] "Functions run after the sxiv process exits.\nEach function must accept two arguments, the associated process\nand a string, which is output just received from it." (repeat function)] 6) #@86 Directory `sxiv' was called from. Used by `sxiv-filter' to know where to mark files. (defvar sxiv--directory nil (#$ . 968)) #@128 Return t if there are marked files in the current Dired buffer. With no marked files, or if not in a Dired buffer, return nil. (defalias 'sxiv-dired-marked-files-p #[0 "\301\302!\205\212eb\210\303\304\305#)\207" [dired-re-mark derived-mode-p dired-mode re-search-forward nil t] 4 (#$ . 1100)]) #@101 Insert subdirectories from PATHS into the current Dired buffer. Return PATHS unchanged. (fn PATHS) (defalias 'sxiv-insert-subdirs #[257 "\306 \n \307\310 !!?\205\307 !\f\311\312 !!   & \207" [for path in when do finally cl-loop file-exists-p file-name-nondirectory dired-insert-subdir file-name-directory return] 13 (#$ . 1404)]) #@93 Open a `dired' buffer and mark any files marked by the user in `sxiv'. (fn PROCESS OUTPUT) (defalias 'sxiv-dired-mark-files #[514 "\306!\210\307\310\"\311\312\"\313!\262\262\314\315\316 \317 \320 \212\321\262\322\323\n\324=\203-\325\2028 \n=\2037\326\2028\327\330 \n=\203C\331\202D\332\203M\333\202N\332%\210b\210`W\203\312\f\314\334!)\262\204\304l\204\304\335\314\211\"\211\205\256\315\321\315\211\211\203\251\211A\262\242\262\262\211\262\203\251\232\203\234\315\262\203\251\262\262T\262\202x\266\211\262\262\203\304g\nU\204\304\336\312!\210\nc\210T\262\312y\210\202S\322\337\330\340!\n\324=\203\334\341\202\335\332\n =\203\347\342\202\350\343 \203\361\333\202\362\332&\210)\321V\205\375)\207" [sxiv--directory inhibit-read-only dired-marker-char dired-del-marker dired-re-dot inhibit-changing-match-data find-file split-string "\n" -drop-last 1 sxiv-insert-subdirs t nil dired-mark--region-use-p dired-mark--region-beginning dired-mark--region-end 0 message "%s %ss%s%s..." 32 "Unmarking" "Flagging" "Marking" "file" " for deletion" "" " in region" looking-at dired-get-filename delete-char "%s %s%s %s%s%s" dired-plural-s "un" "flagged" "marked"] 17 (#$ . 1747)]) #@111 Used as process filter for `sxiv'. OUTPUT is the output of the sxiv process as a string. (fn PROCESS OUTPUT) (defalias 'sxiv-filter #[514 "\300\301#\207" [run-hook-with-args sxiv-after-exit-functions] 6 (#$ . 2998)]) (defalias 'sxiv-paths-raw #[0 "\301 \203\302 \207\303\304!\203\305\306ed\"\307\"\207\310!\207" [default-directory sxiv-dired-marked-files-p dired-get-marked-files derived-mode-p text-mode split-string buffer-substring-no-properties "\n" directory-files] 4]) #@152 Return index of file at point. PATHS should be a list of relative file names as strings, and is required for dired-mode buffers. (fn &optional PATHS) (defalias 'sxiv-file-at-point-index #[256 "\300\301!\203'\302 \211\205\303!\205\304!\211\205 \305\306\307\"\"\211\205&\211T\207\300\310!\205/\311 \207" [derived-mode-p dired-mode dired-file-name-at-point file-regular-p file-relative-name -find-index make-closure #[257 "\300\232\207" [V0] 3 "\n\n(fn IT)"] text-mode line-number-at-pos] 7 (#$ . 3488)]) #@431 Run sxiv(1), the Simple X Image Viewer. By default, when run in a Dired buffer, open all files in the current directory. Files marked in sxiv will be marked in Dired. If run from a Dired buffer with marked files, open only those files. With prefix argument PREFIX, or when only provided directories, run recursively (-r). If run from a text file containing one file name per line, open the files listed. (fn &optional PREFIX) (defalias 'sxiv #[256 "\304\305 \306\304C\304\203<\211A\262\242\240\210\262T\262\242\307\232\204\242\310\232\204\311\312\313\"\"\204\242B\262\202\266\211\237\262\206J\314\315\"\211\203R\202V\316\315\"\317!\211\205`\320!\203h\321\202i\322 \323\324!\210\325\326\327\330\331\327!\332\333\334 \n\205\203\335 D\n\336D%\337\340\341\342\343\344&\f\207" [sxiv-exclude-strings default-directory sxiv--directory sxiv-arguments nil sxiv-paths-raw 0 "." ".." -find make-closure #[257 "\211\300\242\302\303\304#)\207" [V0 inhibit-changing-match-data nil t string-match] 8 "\n\n(fn EXCLUDE)"] -every\? file-directory-p seq-remove sxiv-file-at-point-index number-to-string "-r" "" message "Running sxiv..." make-process :name "sxiv" :buffer generate-new-buffer-name :command append ("sxiv") "-n" "--" :connection-type pipe :filter sxiv-filter :stderr "sxiv-errors"] 20 (#$ . 4011) "P"]) (provide 'sxiv)