branch: master
commit c3580db9535c1837b209e176d16e9eb0c5e38f6b
Author: Alexey Veretennikov <[email protected]>
Commit: Alexey Veretennikov <[email protected]>
Updated readme; renamed the ztree to ztree-dir
---
README.md | 47 +++++++++++++++++++++++++++++++++++++++------
ztree-diff.el | 3 +-
ztree.el => ztree-dir.el | 13 +++++------
3 files changed, 48 insertions(+), 15 deletions(-)
diff --git a/README.md b/README.md
index 1754294..ed56c93 100644
--- a/README.md
+++ b/README.md
@@ -1,23 +1,56 @@
ztree
=====
-Simple text-mode directory tree for Emacs. See screenshots below for GUI and
the terminal versions of the zterm.
+Ztree is a project dedicated to implementation of several text-tree
applications inside Emacs. It consists of 2 subprojects: `ztree-dir` and
`ztree-diff.
-
-
-
+ztree-dir
+---------
+`ztree-dir` is a simple text-mode directory tree for Emacs. See screenshots
below for GUI and the terminal versions of the zterm.
Add the following to your .emacs file:
```scheme
(push (substitute-in-file-name "path-to-ztree-directory") load-path)
-(require 'ztree)
+(require 'ztree-dir)
```
-Call the `ztree` interactive function:
+Call the `ztree-dir` interactive function:
```
-M-x ztree
+M-x ztree-dir
```
Open/close directories with double-click, `RET` or `Space` keys. To jump to
the parent directory, hit the `Backspace` key.
+
+
+
+
+
+
+ztree-diff
+==========
+`ztree-diff` is a directory-diff tool for Emacs inspired by commercial tools
like Beyond Compare or Araxis Merge. It supports showing the difference between
two directories; copying between directories, calling Ediff for not matching
files, hiding/showing equal files/directories. The comparison itself performed
with the external `GNU diff` tool, so make sure to have one in executable path.
+
+Add the following to your .emacs file:
+
+```scheme
+(push (substitute-in-file-name "path-to-ztree-directory") load-path)
+(require 'ztree-diff)
+```
+
+Call the `ztree-diff` interactive function:
+
+```
+M-x ztree-dir
+```
+Then you need to specify the left and right directories to compare.
+
+Hotkeys supported - same as for the `ztree-dir`. Additionally:
+ * `RET` or `Space` on different files starts the Ediff
+ * `TAB` to fast switch between panels
+ * `h` key toggle show/hide identical files/directories
+ * `C` key to copy current file or directory to the left or right panel
+ * `F5` forces the full rescan.
+
+Screenshat
+
diff --git a/ztree-diff.el b/ztree-diff.el
index 5b3f957..c0cc6c0 100644
--- a/ztree-diff.el
+++ b/ztree-diff.el
@@ -243,7 +243,8 @@ apparently shall not be visible"
(defun ztree-node-is-visible (node)
- (and (not (ztree-node-is-in-filter-list (ztree-diff-node-short-name node)))
+ (and (ztree-diff-node-parent node) ; parent is always visible
+ (not (ztree-node-is-in-filter-list (ztree-diff-node-short-name node)))
(or ztree-diff-show-equal-files
(ztree-diff-node-different node))))
diff --git a/ztree.el b/ztree-dir.el
similarity index 94%
rename from ztree.el
rename to ztree-dir.el
index 8d0a1df..36f4595 100644
--- a/ztree.el
+++ b/ztree-dir.el
@@ -1,4 +1,4 @@
-;;; ztree.el --- Text mode directory tree
+;;; ztree-dir.el --- Text mode directory tree
;; Copyright (C) 2013 Alexey Veretennikov
;;
@@ -29,17 +29,16 @@
;; Add the following to your .emacs file:
;;
;; (push (substitute-in-file-name "path-to-ztree-directory") load-path)
-;; (require 'ztree)
+;; (require 'ztree-dir)
;;
;; Call the ztree interactive function:
-;; M-x ztree
+;; M-x ztree-dir
;; Open/close directories with double-click, Enter or Space keys
;;
;;; Issues:
;;
;;; TODO:
;; 1) Add some file-handling and marking abilities
-;; 2) Extract tree code as as separate package
;;
;;
;;; Change Log:
@@ -90,7 +89,7 @@ including . and ..")
(not (string-match ztree-hidden-files-regexp
(file-short-name filename))))
-(defun ztree (path)
+(defun ztree-dir (path)
"Creates an interactive buffer with the directory tree of the path given"
(interactive "DDirectory: ")
(when (and (file-exists-p path) (file-directory-p path))
@@ -107,5 +106,5 @@ including . and ..")
nil)))) ; action
-(provide 'ztree)
-;;; ztree.el ends here
+(provide 'ztree-dir)
+;;; ztree-dir.el ends here