7070 " Exit flag for this minor mode." )
7171
7272
73+ (defun helm-file-preview--do-preview (fp ln cl )
74+ " Do preview with filepath (FP), line number (LN), column (CL)."
75+ (let ((did-find-file nil ))
76+ (save-selected-window
77+ (when (or (not helm-file-preview-only-when-line-numbers)
78+ (and helm-file-preview-only-when-line-numbers
79+ ln))
80+ (select-window helm-file-preview--prev-window)
81+
82+ (find-file fp)
83+ (setq did-find-file t )
84+
85+ (when helm-file-preview-preview-only
86+ (setq helm-file-preview--current-select-fb (current-buffer ))
87+ (push helm-file-preview--current-select-fb helm-file-preview--file-buffer-list)
88+ (delete-dups helm-file-preview--file-buffer-list)))
89+
90+ (when did-find-file
91+ (let ((ln-num nil )
92+ (cl-num nil ))
93+ (when ln
94+ (setq ln-num (string-to-number ln))
95+ (when (< 0 ln-num)
96+ (goto-char (point-min ))
97+ (forward-line (1- ln-num))
98+ (when cl
99+ (setq cl-num (string-to-number cl))
100+ (when (< 0 cl-num)
101+ (move-to-column (1- cl-num)))))))))))
102+
73103(defun helm-file-preview--helm-move-selection-after-hook (&rest _args )
74104 " Helm after move selection for `helm-' related commands preview action.
75105ARGS : rest of the arguments."
@@ -82,35 +112,12 @@ ARGS : rest of the arguments."
82112 (cl (nth 2 sel-lst)) ; column
83113 (root (cdr (project-current )))
84114 (fp (concat root fn)) ; file path
85- (ln-num nil )
86- (cl-num nil )
87- (did-find-file nil )
88115 )
116+ ; ; NOTE: Try expand file, if the file not found relative to
117+ ; ; project directory.
118+ (unless (file-exists-p fp) (setq fp (expand-file-name fn)))
89119 (when (file-exists-p fp)
90- (save-selected-window
91- (when (or (not helm-file-preview-only-when-line-numbers)
92- (and helm-file-preview-only-when-line-numbers
93- ln))
94- (select-window helm-file-preview--prev-window)
95-
96- (find-file fp)
97- (setq did-find-file t )
98-
99- (when helm-file-preview-preview-only
100- (setq helm-file-preview--current-select-fb (current-buffer ))
101- (push helm-file-preview--current-select-fb helm-file-preview--file-buffer-list)
102- (delete-dups helm-file-preview--file-buffer-list)))
103-
104- (when did-find-file
105- (when ln
106- (setq ln-num (string-to-number ln))
107- (when (< 0 ln-num)
108- (goto-char (point-min ))
109- (forward-line (1- ln-num))
110- (when cl
111- (setq cl-num (string-to-number cl))
112- (when (< 0 cl-num)
113- (move-to-column (1- cl-num)))))))))))))
120+ (helm-file-preview--do-preview fp ln cl))))))
114121
115122
116123(defun helm-file-preview--opened-buffer (in-list in-buf )
0 commit comments