Andrew Hyatt [Tue, 10 May 2016 03:21:15 +0000 (23:21 -0400)]
Version 1.6, mostly fixes for fragmented headers.
* websocket.el (websocket-verify-response-code, websocket-outer-filter):
Fix handling of fragmented headers.
* websocket.el (websocket-server): Accept host for listening on.
* websocket-functional-test.el: Stop stopping the listener process on
Windows.
(ampc-current-playlist-mode): Set font-lock-defaults instead.
(ampc-item-mode): Remove broken highlight rule.
(ampc-handle-status): Use font-lock-flush when available.
Stefan Monnier [Wed, 27 Apr 2016 13:39:46 +0000 (09:39 -0400)]
* debbugs: Use cl-lib. Use lexical-binding when available
* debbugs-gnu.el: Only require subr-x at compile time. Use cl-lib.
(debbugs-gnu-print-entry): Remove unused var `title-length'.
(debbugs-gnu-sort-title): Mark `s2' as unused.
* debbugs-org.el (debbugs-gnu): Use cl-lib.
* debbugs.el: Add `cl-lib' as dependency. Use cl-lib.
(debbugs-soap-invoke-async): Mark `args' as unused.
* packages/debbugs/debbugs-gnu.el (debbugs-gnu-patches): New command.
(debbugs-gnu-get-bugs): Remove the "user tags" cond -- it didn't
allow us to search for bugs with specific tags.
* packages/debbugs/debbugs-gnu.el (debbugs-gnu-insert-changelog):
When handling git-formatted patches, get all the info from the
patches automatically.
Oleh Krehel [Fri, 22 Apr 2016 08:39:08 +0000 (10:39 +0200)]
Add a couple tests for ivy-read with alists
* ivy-test.el (ivy-read): Add tests.
To summarize how it works:
1. Only the keys of the alist are offered for completion, not the values
- this is the standard Emacs behavior.
2. `ivy-read' will return the selected key, not the value or the cons
cell.
3. When :action is specified, it will be called with the value
corresponding to the selected key. Not the key, and not the cons.
This allows keys to work as aliases for the actual data, and :action
arguments to be simple functions that deal with data (i.e. not having to
deal with the `cdr' of the passed argument).
Oleh Krehel [Mon, 18 Apr 2016 07:42:05 +0000 (09:42 +0200)]
ivy.el (ivy-use-ignore-default): New defcustom
* ivy.el (ivy-use-ignore): Is now set to `ivy-use-ignore-default'.
(ivy-toggle-ignore): Update.
(ivy--reset-state): Update.
(ivy--switch-buffer-matcher): When `ivy-use-ignore' is t, and they
only cands that match the input also match `ivy-ignore-buffers' show
them anyway. But when `ivy-use-ignore' is 'always, show nothing in that
case.
Oleh Krehel [Wed, 13 Apr 2016 17:29:12 +0000 (19:29 +0200)]
Fix counsel-grep-last-line bug
Need to reset `counsel-grep-last-line' each time the input changes.
That var should only be used for cycling the complete cands, not during
input updates.
Oleh Krehel [Wed, 13 Apr 2016 17:14:15 +0000 (19:14 +0200)]
Add much faster scrolling to counsel-grep
* counsel.el (counsel-grep-last-line): New defvar.
(counsel-grep): Set `counsel-grep-last-line' to nil.
(counsel-grep-action): Instead of going to `point-min' and
`forward-line' with a huge arg (e.g. to scroll 50K lines). Scroll
relative to the last position stored in `counsel-grep-last-line'.
This change resulted in a much smoother scrolling in a 50K line file
with 22K matches.
Oleh Krehel [Wed, 13 Apr 2016 17:04:58 +0000 (19:04 +0200)]
Make ivy--regex work with "[^ ]"
* ivy.el (ivy--split): Add a work around to not consider spaces like
"[^ ]". It's pretty hacky, the space has to come right after "[^".
But better than nothing.
* ivy-test.el (ivy--split): Add test.
Use-case: open a freedict file, where each word being defined is with no
indentation and the explanation is with indentation.
`swiper' or `counsel-grep' will now work properly with input "^[^ ]".
Michael Albinus [Wed, 13 Apr 2016 08:43:38 +0000 (10:43 +0200)]
Release debbugs 0.9.2
* packages/debbugs/debbugs.el: Increase Version to 0.9.2. Require
soap-client 3.1.1.
(soap-invoke-async, async-start, async-get): Do not declare.
(debbugs-soap-invoke-async, debbugs-get-status): Remove fallback
with async.
(debbugs-get-status): Do not use `floor'.
(debbugs-search-est): Use :max instead of :skip twice.
Oleh Krehel [Mon, 11 Apr 2016 14:48:28 +0000 (16:48 +0200)]
New feature: virtual views in ivy-switch-buffer
* ivy.el (ivy-views): New defvar that stores the pre-defined views.
(ivy-source-views): New defun.
(ivy-set-view-recur): New defun.
(ivy--switch-buffer-action): Extend.
(ivy-set-sources): Attach `ivy-source-views' as an additional source to
`ivy-switch-buffer'.
How to use: just set `ivy-views' appropriately. An example value is
provided (but nulled, so that it's empty initially).
Stefan Monnier [Wed, 6 Apr 2016 03:48:01 +0000 (23:48 -0400)]
Various cleanup
* yasnippet/yasnippet.el: Add Package-Requires since we use cl-lib.
(yas-installed-snippets-dir, yas--default-user-snippets-dir)
(yas--load-directory-1, yas-load-snippet-buffer-and-close):
Use expand-file-name.
(yas-buffer-local-condition): Let's not quote lambdas.
(yas--modes-to-activate): Fix compiler warning about free `dfs' var and
unused return value of `mapcar'.
(yas-minor-mode): Don't confuse emulation-mode-map-alists for a hook.
(yas--font-lock-keywords): Don't hardcode the name of emacs-lisp-mode's
font-lock keywords.
(yas--calculate-group): Use file-relative-name.
(yas--subdirs): Don't mismatch \n in file name.
(yas-expand-from-trigger-key, yas-tryout-snippet): Prefer numbers to
number names.
(yas--guess-snippet-directories): Use expand-file-name rather than
removing&adding / by hand.
(yas--on-field-overlay-modification): Mark `length' as unused.
(yas--update-mirrors): Try to better fit within 80 columns.
(yas--backported-syms, yas--exported-syms): Don't mismatch \n in
symbol name.
Oleh Krehel [Fri, 8 Apr 2016 11:38:16 +0000 (13:38 +0200)]
Allow to customize the action hint formatter
* ivy.el (ivy-read-action-format-function): New defvar.
(ivy-read-action-format-default): New defun, extracted from
`ivy-read-action'.
(ivy-read-action'): Update.
- delete duplication of #'ivy-next-line and #'ivy-previous-line
- replace alias #'backward-delete-char by #'delete-backward-char because
only the second is bound to a key