1- ; ;; helm-file-preview.el --- Preview the current helm file selection. -*- lexical-binding : t ; -*-
1+ ; ;; helm-file-preview.el --- Preview the current helm file selection -*- lexical-binding : t ; -*-
22
33; ; Copyright (C) 2019 Shen, Jen-Chieh
44; ; Created date 2019-06-18 14:03:53
77; ; Description: Preview the current helm selection.
88; ; Keyword: file helm preview select selection
99; ; Version: 0.1.4
10- ; ; Package-Requires: ((emacs "24.4 ") (helm "2.0"))
10+ ; ; Package-Requires: ((emacs "25.1 ") (helm "2.0"))
1111; ; URL: https://github.com/jcs090218/helm-file-preview
1212
1313; ; This file is NOT part of GNU Emacs.
3535
3636(require 'helm )
3737
38-
3938(defgroup helm-file-preview nil
4039 " Preview the current helm file selection."
4140 :prefix " helm-file-preview-"
4241 :group 'tools
4342 :link '(url-link :tag " Repository" " https://github.com/jcs090218/helm-file-preview" ))
4443
45-
4644(defcustom helm-file-preview-only-when-line-numbers t
4745 " Find the file only when the line numbers appears in the selection."
4846 :type 'boolean
5351 :type 'boolean
5452 :group 'helm-file-preview )
5553
56-
5754(defvar helm-file-preview--prev-window nil
5855 " Record down the previous window before we do `helm-' related commands." )
5956
6966(defvar helm-file-preview--exiting t
7067 " Exit flag for this minor mode." )
7168
69+ ; ;; Core
7270
7371(defun helm-file-preview--do-preview (fp ln cl )
7472 " Do preview with filepath (FP), line number (LN), column (CL)."
75- (let (( did-find-file nil ) )
73+ (let (did-find-file)
7674 (save-selected-window
7775 (when (or (not helm-file-preview-only-when-line-numbers)
78- (and helm-file-preview-only-when-line-numbers
79- ln))
76+ (and helm-file-preview-only-when-line-numbers ln))
8077 (select-window helm-file-preview--prev-window)
8178
8279 (find-file fp)
8885 (delete-dups helm-file-preview--file-buffer-list)))
8986
9087 (when did-find-file
91- (let ((ln-num nil )
92- (cl-num nil ))
88+ (let (ln-num cl-num)
9389 (when ln
9490 (setq ln-num (string-to-number ln))
9591 (when (< 0 ln-num)
@@ -119,7 +115,6 @@ ARGS : rest of the arguments."
119115 (when (file-exists-p fp)
120116 (helm-file-preview--do-preview fp ln cl))))))
121117
122-
123118(defun helm-file-preview--opened-buffer (in-list in-buf )
124119 " Check if the IN-BUF in the opened buffer list, IN-LIST."
125120 (cl-some #' (lambda (buf ) (equal buf in-buf)) in-list))
@@ -147,6 +142,7 @@ ARGS : rest of the arguments."
147142 (setq helm-file-preview--current-select-fb nil )
148143 (helm-file-preview--cleanup))
149144
145+ ; ;; Entry
150146
151147(defun helm-file-preview--enable ()
152148 " Enable `helm-file-preview' ."
@@ -162,17 +158,13 @@ ARGS : rest of the arguments."
162158 (remove-hook 'minibuffer-exit-hook #'helm-file-preview--exit )
163159 (advice-remove 'helm-mark-current-line 'helm-file-preview--helm-move-selection-after-hook ))
164160
165-
166161;;;### autoload
167162(define-minor-mode helm-file-preview-mode
168163 " Minor mode 'helm-file-preview-mode'."
169164 :global t
170165 :require 'helm-file-preview
171166 :group 'helm-file-preview
172- (if helm-file-preview-mode
173- (helm-file-preview--enable)
174- (helm-file-preview--disable)))
175-
167+ (if helm-file-preview-mode (helm-file-preview--enable) (helm-file-preview--disable)))
176168
177169(provide 'helm-file-preview )
178170; ;; helm-file-preview.el ends here
0 commit comments