The listing recency change is necessary just in case the hash table used
for culling multishell-list happens to grow beyond the default
allocation during the culling.
Ken Manheimer [Fri, 12 Feb 2016 09:05:54 +0000 (04:05 -0500)]
multishell - Suppress trivial duplicates in completions list presentation.
The duplicates are useful in minibuffer, distinguishing active shells,
but not useful in multishell listing, where active shells are sorted
early and with "+" signs before them.
Ken Manheimer [Thu, 11 Feb 2016 06:19:39 +0000 (01:19 -0500)]
multishell - method to conclude minibuffer interaction from multishell-list
Use throw-catch facility for non-local minibuffer exit. Originally
implemented for invoking and passing control to the minibuffer-list from
the minibuffer, it proves to be much more tidy than the non-local
minibuffer exit provisions in, eg, buff-menu.
For now, the most crucial binding in this context is the
mouse-click. The keyboard cases are also handled, but generally
switching the *Completions* buffer to the target one.
Ken Manheimer [Tue, 9 Feb 2016 18:52:25 +0000 (13:52 -0500)]
multishell - roughly working draft using multishell-list for completions
Workable, need to resolve pending issues:
- depends on flet - what do i need to do about that?
- adaptation of multishell-list to purpose needs doc update, maybe rethink
- likewise hacking of multishell-list-entries
- inhibit duplicates from organized listing, preferring detailed one
- get mouse click so it ~properly concludes minibuffer activity
Ken Manheimer [Tue, 9 Feb 2016 11:02:26 +0000 (06:02 -0500)]
Rough stab at using tabulated-list-mode for minibuffer-completion-help
A few big problems with what's implemented here:
- looks like tabulated-list-mode is incongruous with temp display
operation.
- using flet is no good - it's deprecated - but cl-flet lexical scoping
doesn't have needed effect.
Ken Manheimer [Sat, 30 Jan 2016 18:30:16 +0000 (13:30 -0500)]
multishell - shake out some initial multishell-list glitches
- (Offer to) delete shell buffer, if present, when deleting an entry.
Rely on the default active-shell deletion prompting for confirmation,
supplementing with our own confirmation for inactive shell buffers.
- Set recency (numeric rank) as initial sort field, get closer to
stable sort - still needs work.
- Recompute list on any operation that affects it, and try to
preserve stability. Also needs more work.
- multishell-list.el based on tabulated-list
- refactor multishell-pop-to-shell so users can activate multishell-list
from universal-arg prompt in minibuffer, via throw/catch
- ensure pivotal multishell-name-from-entry reliability
- remove unnecessary complications from multishell-all-entries
Ken Manheimer [Fri, 29 Jan 2016 05:47:02 +0000 (00:47 -0500)]
multishell - include active shell buffers names along with history entries.
The effect is that existing shell buffers will complete as both the bare
names and the name/path forms, while purely history entries will
complete as just the name/path forms. The difference will provide a cue,
a kind of lubrication for completing existing buffers.
Stefan Monnier [Tue, 26 Jan 2016 16:12:51 +0000 (11:12 -0500)]
2016-01-26 Stefan Monnier <monnier@iro.umontreal.ca>
* ztree/ztree-diff-model.el (ztree-diff-node): Define with cl-defstruct.
Remove `children', `short-name', and `right-short-name' args from
ztree-diff-node-create, and compute them instead.
(ztree-diff-model-partial-rescan, ztree-diff-model-subtree)
(ztree-diff-node-update-diff-from-children)
(ztree-diff-node-update-diff-from-parent)
(ztree-diff-node-recreate):
Use setf rather than `ztree-diff-node-set-'.
Adjust call to ztree-diff-node-create.
(ztree-diff-untrampify-filename): Silence byte-compiler.
* ztree/ztree-diff.el (ztree-diff): Adjust call ztree-diff-node-create.
(ztree-diff-delete-file, ztree-diff-copy-dir, ztree-diff-copy-file):
Use setf rather than `ztree-diff-node-set-'.
* ztree/ztree-dir.el (ztree-dir): Don't quote lambdas and prefer #'
when quoting function symbols.
* ztree/ztree-util.el (ztree-defrecord): Remove macro.
* ztree/ztree-view.el (ztree-refresh-buffer): Prefer inhibit-read-only
and limit its scope.
* ztree/ztree.el: Declare dependency on cl-lib.
Ken Manheimer [Tue, 26 Jan 2016 16:50:42 +0000 (11:50 -0500)]
multishell - reduce multishell-primary-name savehist extra fuss
I'm finding that preserving multishell-primary-name across sessions
isn't so desirable, and thinking that the idea about including the value
of savehist-additional-variables on savehist-additional-variables may
not be either effective or necessarily useful, so removing the note
about it.
Ken Manheimer [Sun, 24 Jan 2016 22:07:27 +0000 (17:07 -0500)]
multishell - update features list, remove change log and todo
Use multishell code commentary for change log and todo, and refer to
that from here.
(The commentary has the advantage in informing people viewing the
package via the emacs package management system, while repository
visitors also have access.)