New Zealand
Feel free to contact me at my username at foldling.org, or visit my homepage for more info.
Comment by ~evhan on ~evhan/vim-scheme
Hi again Jeremy! I've added this to the plugin, with a few additions:
- When
g:is_chicken
is enabled, setcompiler
automatically.- Set
makeprg
according to a simple heuristic that will hopefully do the right thing in the majority of cases.- Filter
errorformat
so that only useful messages are kept in the quick list, omitting all the empty lines, shell commands, etc.I'm closing this issue but leaving #2 open so you can report any issues or feedback over there -- I'd appreciate it if you could give this a try and see if it works as you were hoping. It's working for me with and without the vim-dispatch plugin.
For your current setup, you may wish to set
compiler chicken
explicitly, which will leavemakeprg
set tomake
just like you have above.
REPORTED
RESOLVED IMPLEMENTEDComment by ~evhan on ~evhan/beaker
I've finally gotten around to implementing this, and version 0.0.23 will include a lint for that
if-begin
pattern.I'll leave this ticket open for now, until the other suggestions are implemented or moved to their own issues.
Comment by ~evhan on ~evhan/vim-scheme
Hey Jeremy, this is a good idea, thank you! I haven't personally used that feature, nor the plugin you mentioned, so I'll familiarize myself with them as a kind of quality control and see about adding this option as a default.
Fantastic!
As I was just thinking about it more, I have some other (basic) suggestions for lints as well if you're open to them:
(if condition #t #f)The #t / #f literals in either branch of the
if
can probably be replaced by the condition itself, or some variant (e.g.(not condition)
).Also:
(if condition-1 (if condition-2 a b) c)Nested
if
s are probably best turned into acond
as well as an(and condition-1 condition-2)
:(cond ((and condition-1 condition-2) a) (condition-1 b) (else c))I suppose that experienced Schemers probably won't fall for these, but giving the linter good defaults for this sort of behaviour would be ideal :)
Thanks again for anything you can add here, I really appreciate the tool!
On 11/13/23 23:50, ~evhan wrote:
Hey Jeremy, thanks for the suggestion! That's not a bad idea, and it shouldn't be too complex to implement, either.
-- Jeremy Steward
Comment by ~evhan on ~evhan/beaker
Hey Jeremy, thanks for the suggestion! That's not a bad idea, and it shouldn't be too complex to implement, either.
Comment by ~evhan on ~evhan/beaker
Fixed in 0.0.22.
REPORTED
RESOLVED FIXEDComment by ~evhan on ~evhan/beaker
The example provided was the following:
(module foo () (import scheme) (import (chicken base) (chicken module)))
But that can be simplified to just an empty module form, i.e.
(module ())
. Both of these yield("lint.scm:1" warning unnecessary-quote '#f)
.