From f343220d66c4514e3b92881f568f6065a00b8223 Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Tue, 28 May 2013 12:26:39 +0200 Subject: [PATCH 1/7] Handle Dired buffers correctly (buffer-file-name) evaluates to nil in Dired buffers: Use default-directory (current directory) as fallback in Dired(+) buffers. --- workgroups.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workgroups.el b/workgroups.el index 4dccd65..743f8b4 100644 --- a/workgroups.el +++ b/workgroups.el @@ -941,7 +941,7 @@ EWIN should be an Emacs window object." `((type . window) (edges . ,(window-edges ewin)) (bname . ,(buffer-name)) - (fname . ,(buffer-file-name)) + (fname . ,(or (buffer-file-name) default-directory)) (point . ,(wg-window-point ewin)) (mark . ,(mark)) (markx . ,mark-active) From dacdd8e7865c74067fb07d72c05631860b9c35a4 Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Tue, 28 May 2013 17:23:18 +0200 Subject: [PATCH 2/7] Keep wg-list in MRU order This will also ensure that the last used workgroup will be used on emacs startup. Fixes #18. --- workgroups.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/workgroups.el b/workgroups.el index 743f8b4..1ed61c5 100644 --- a/workgroups.el +++ b/workgroups.el @@ -1571,6 +1571,8 @@ BASE non-nil means restore WORKGROUP's base config." (wg-restore-workgroup workgroup base) (wg-set-previous-workgroup (wg-current-workgroup t)) (wg-set-current-workgroup workgroup) + (wg-aif (wg-move-elt workgroup wg-list 0) + (setq wg-list it wg-dirty t)) (run-hooks 'wg-switch-hook) (wg-fontified-msg (:cmd "Switched: ") (wg-disp))) From 0559dd3d6ea7150a75c077cf1c7d99d581ffa9a2 Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Wed, 29 May 2013 18:00:00 +0200 Subject: [PATCH 3/7] Fix Repository URLs --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 268a0c1..9a95b48 100644 --- a/README.md +++ b/README.md @@ -67,9 +67,9 @@ things like frame morphing, window moving, frame reversing and other operations. ## Getting Workgroups The latest version of Workgroups can always be found -[here](http://github.com/tlh/workgroups.el). You can clone the repo by running: +[here](http://github.com/workgroups/workgroups.el). You can clone the repo by running: - git clone git://github.com/tlh/workgroups.el + git clone git://github.com/workgroups/workgroups.el Workgroups is being actively developed. Later on, when you want to update to the latest: @@ -366,13 +366,13 @@ To bring up a help buffer listing all the commands and their bindings, hit ## Feature Requests Feature requests, like other parameters you'd like Workgroups to persist, should -be added to the [wiki](http://github.com/tlh/workgroups.el/wiki) +be added to the [wiki](http://github.com/workgroups/workgroups.el/wiki) ## Reporting Bugs If you encounter a bug in Workgroups, please file an issue -[here](http://github.com/tlh/workgroups.el/issues). If possible, please include +[here](http://github.com/workgroups/workgroups.el/issues). If possible, please include a stack-trace and the value of `wg-list`. From 39bc0d7ba667defd33191c9d144b824c1135e2f6 Mon Sep 17 00:00:00 2001 From: zech Date: Mon, 11 Feb 2013 20:04:08 -0700 Subject: [PATCH 4/7] correct a typo jump to the help window when the help buffer is launched --- workgroups.el | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/workgroups.el b/workgroups.el index 1ed61c5..92672c6 100644 --- a/workgroups.el +++ b/workgroups.el @@ -2050,13 +2050,15 @@ The string is passed through a format arg to escape %'s." (defun wg-help () "Display Workgroups' help buffer." (interactive) - (with-output-to-temp-buffer "*workroups help*" + (let ((wg-help-buffer-name "*workgroups help*")) + (with-output-to-temp-buffer wg-help-buffer-name (princ "Workgroups' keybindings:\n\n") (dolist (elt (wg-partition wg-help 2)) (wg-dbind (cmd help-string) elt (princ (format "%15s %s\n" (substitute-command-keys cmd) - help-string)))))) + help-string))))) + (pop-to-buffer (get-buffer wg-help-buffer-name)))) ;;; keymap From b70b419de4ecf5f61459752c3ce78001c34b902a Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Wed, 29 May 2013 18:00:00 +0200 Subject: [PATCH 5/7] Revert dacdd8e (Keep wg-list) in MRU order This commit broke wg-switch-to-index, refs #18. --- workgroups.el | 2 -- 1 file changed, 2 deletions(-) diff --git a/workgroups.el b/workgroups.el index 92672c6..ab2d116 100644 --- a/workgroups.el +++ b/workgroups.el @@ -1571,8 +1571,6 @@ BASE non-nil means restore WORKGROUP's base config." (wg-restore-workgroup workgroup base) (wg-set-previous-workgroup (wg-current-workgroup t)) (wg-set-current-workgroup workgroup) - (wg-aif (wg-move-elt workgroup wg-list 0) - (setq wg-list it wg-dirty t)) (run-hooks 'wg-switch-hook) (wg-fontified-msg (:cmd "Switched: ") (wg-disp))) From dbdf557c43c33984d04778998427cc02b7e879d3 Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Wed, 29 May 2013 18:00:00 +0200 Subject: [PATCH 6/7] `wg-read-workgroup': Start list of choices with wg-previous-workgroup Refs #18 --- workgroups.el | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/workgroups.el b/workgroups.el index ab2d116..a79b024 100644 --- a/workgroups.el +++ b/workgroups.el @@ -1471,7 +1471,11 @@ Query to overwrite if a workgroup with the same name exists." (defun wg-read-workgroup (&optional noerror) "Read a workgroup with `wg-completing-read'." (wg-get-workgroup - 'name (wg-completing-read "Workgroup: " (wg-names)) + 'name (wg-completing-read "Workgroup: " + ;; move previous workgroup on front of choices + (wg-aif (wg-previous-workgroup t) + (wg-move-elt (wg-name it) (wg-names) 0) + (wg-names))) noerror)) (defun wg-read-buffer-name () From 101d9540d8f835f66c66ffb827c38504affb7852 Mon Sep 17 00:00:00 2001 From: Juergen Hoetzel Date: Thu, 30 May 2013 15:29:44 +0200 Subject: [PATCH 7/7] `wg-switch-to-window-buffer': use unique buffer names if a buffer name exist in multiple workgroups (visiting different files) rename-buffer will raise an error when UNIQUE is omitted. Refs #26. --- workgroups.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workgroups.el b/workgroups.el index a79b024..5c65b50 100644 --- a/workgroups.el +++ b/workgroups.el @@ -1003,7 +1003,7 @@ Return the buffer if it was found, nil otherwise." (wg-abind win (fname bname) (cond ((and fname (file-exists-p fname)) (find-file fname) - (rename-buffer bname) + (rename-buffer bname t) (current-buffer)) ((wg-awhen (get-buffer bname) (switch-to-buffer it))) (t (switch-to-buffer wg-default-buffer) nil))))