diff options
author | dan sutton <danielsutton01@gmail.com> | 2018-06-01 10:47:09 -0500 |
---|---|---|
committer | Bozhidar Batsov <bozhidar.batsov@gmail.com> | 2018-06-04 09:53:22 +0900 |
commit | 4ff5d3ae39c4d5bc821cd851bed94d3544eb99c6 (patch) | |
tree | c53952ef5991d8bdfa568e059d363f1dec4f79f6 /doc | |
parent | 89cb4a4130c662945956761e525ab150f5c9f29b (diff) |
[Fix #2294] simplify stacktrace filter mechanism
previously there were two separate lists of positive and negative
filters and complicated logic spread throughout of how these
interacted. Now there is a single list that you can toggle flags on or
off and their interaction is dictated inside of a single function
`cider-stacktrace-apply-filters`. Since their interaction is here we
no longer need to remember previous flags as they are just toggled on
and off.
Positive filters are 'all or 'project. These dictate that all frames
should be shown or only any frame from a project namespace should be
shown, despite other filters. Also, these two cannot exist at the same
time, so we need to check which is most "recent". Since if 'project is
selected, it hides all but project frames and if 'all is selected it
must show all. We do what was most recently selected in this case
then.
So the frame filtering is quite simply a list of tags you want to
filter by: '(java clj tooling repl dup project all). These are toggled
on and off as desired.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/navigating_stacktraces.md | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/doc/navigating_stacktraces.md b/doc/navigating_stacktraces.md index 9e71f3fa..924ead1e 100644 --- a/doc/navigating_stacktraces.md +++ b/doc/navigating_stacktraces.md @@ -64,12 +64,17 @@ There are two more selective strategies for the error buffer: (setq cider-auto-select-error-buffer nil) ``` -* Error buffer stacktraces may be filtered by default. Valid filter types -include `java`, `clj`, `repl`, `tooling`, and `dup`. Setting this to `nil` will -show all stacktrace frames. +* Error buffer stacktraces may be filtered by default. Valid filter +types include `java`, `clj`, `repl`, `tooling`, and `dup`. There are +also "positive" filtering types. The value `project` will cause only +project frames to be shown or `all` will force all stackframes to be +shown. Note that `project` and `all` are mutually exclusive. Whichever +one is first will determine the behavior if they are both present. ```el (setq cider-stacktrace-default-filters '(tooling dup)) +;; or +(setq cider-stacktrace-default-filters '(project)) ``` * Error messages may be wrapped for readability. If this value is nil, messages |