возможно ли вернуть последние файлы обратно в буфер *vc-dir*
? до сих пор я использовал psvn.el
(и до этого cvs-examine
), у обоих есть команда, которая позволяет мне видеть полное содержание / статус дерева.
если что-то подобное есть в *vc-dir*
, мне не удается его найти.
если нет, как вы, парни и девушки, используете это?
так что похоже, что функциональности еще нет, и теперь я думаю, что этот вопрос был корректно перенесен из программистов в stackoverflow: речь идет не о самом инструменте, а о его расширении.
Я взглянул на источники, и мне кажется, что мне нужна функция для рекурсии подкаталога, включающего только те файлы, которые, как известно, находятся под контролем версий. если бы эта функция существовала и называлась vc-dir-find-versioned-child-files
, то решение было бы близко к этому:
(define-key map [follow-link] 'mouse-face)
(define-key map "x" 'vc-dir-hide-up-to-date)
+ (define-key map "X" 'vc-dir-show-child-files)
(define-key map "S" 'vc-dir-search) ;; FIXME: Maybe use A like dired?
(define-key map "Q" 'vc-dir-query-replace-regexp)
и
(ewoc-set-hf vc-ewoc (vc-dir-headers backend def-dir) ""))))
+(defun vc-dir-show-child-files ()
+ "expand the directory under the cursor"
+ (interactive)
+ (let ((files (vc-dir-find-versioned-child-files (vc-dir-current-file)))
+ fileentries)
+ (when files
+ (dolist (crt files)
+ (push (list (file-relative-name crt) (vc-state crt))
+ fileentries))
+ (vc-dir-update fileentries (current-buffer)))))
(defun vc-dir-show-fileentry (file)
закрыть, но не точно, так как статус вычислен неправильно, теперь он дает nil
.
что я до сих пор скучаю в vc-dir
- это информация о том, кто сделал последний коммит, и номер ревизии для каждой записи (желательно локальной и удаленной). но я недостаточно хорош, чтобы взаимодействовать с LISP.
если vc-dir
не делает то, что мне нужно, как насчет ecb
?