• Stars
    star
    222
  • Rank 179,123 (Top 4 %)
  • Language
    Go
  • License
    MIT License
  • Created about 6 years ago
  • Updated 12 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

โŠ Whitespace Linter - Forces you to use empty lines!

wsl - Whitespace Linter

forthebadge forthebadge

GitHub Actions Coverage Status

wsl is a linter that enforces a very non scientific vision of how to make code more readable by enforcing empty lines at the right places.

This linter is aggressive and a lot of projects I've tested it on have failed miserably. For this linter to be useful at all I want to be open to new ideas, configurations and discussions! Also note that some of the warnings might be bugs or unintentional false positives so I would love an issue to fix, discuss, change or make something configurable!

Installation

go install github.com/bombsimon/wsl/v4/cmd...@master

Usage

Note: This linter provides a fixer that can fix most issues with the --fix flag. However, currently golangci-lint does not support suggested fixes so the --fix flag in golangci-lint will not work.

wsl uses the analysis package meaning it will operate on package level with the default analysis flags and way of working.

wsl --help
wsl [flags] </path/to/package/...>

wsl --allow-cuddle-declarations --fix ./...

wsl is also integrated in golangci-lint

golangci-lint run --no-config --disable-all --enable wsl

Issues and configuration

The linter suppers a few ways to configure it to satisfy more than one kind of code style. These settings could be set either with flags or with YAML configuration if used via golangci-lint.

The supported configuration can be found in the documentation.

Below are the available checklist for any hit from wsl. If you do not see any, feel free to raise an issue.

Note: this linter doesn't take in consideration the issues that will be fixed with go fmt -s so ensure that the code is properly formatted before use.

More Repositories

1

logrusr

๐Ÿ“ A logr implementation using Logrus
Go
26
star
2

gorm-bulk

๐Ÿ›ข Perform bulk actions with Gorm
Go
20
star
3

hltv-python

๐Ÿ“บ HLTV live score implementation with Socket.IO
Python
15
star
4

det-blev-ingen-cd.com

๐Ÿ’ฟ Source code for the web site
Elm
14
star
5

meta-go-imports

๐Ÿ“ฆ HTTP server responding with <meta> tag for go import to work
Go
10
star
6

tld-validator

๐ŸŒ Top level domains with Go
Go
5
star
7

mdbook-all-the-markdowns

๐Ÿ—ƒ๏ธ Preprocessor for mdbook to render all the markdowns!
Rust
4
star
8

git-hooks-installer

Share and install Git hooks in your project with ease!
Shell
4
star
9

laundry

๐Ÿงบ Laundry booking service
Go
3
star
10

github-stars

โญ๏ธ Get repository stars on GitHub for a user.
Rust
2
star
11

mysql-error-numbers

โ›”๏ธ Constants for all MySQL error numbers
Go
2
star
12

tweets-to-discord

๐Ÿฆ Stream a Twitter user's feed and post content to Discord
Rust
2
star
13

dotfiles

๐Ÿ’ป ...
Lua
2
star
14

distcron

๐Ÿ—“ Run scheduled jobs in several instances but only run once!
Go
1
star
15

news-headers

๐Ÿ“ฐ Get news headers
Python
1
star
16

mkdocs-repositories

Use MkDocs to view documentation for all your repositories
Python
1
star
17

go-personnummer

๐Ÿ”ข Validate Swedish personal identity numbers
Go
1
star
18

pasture

School assignment during Java class
Java
1
star
19

advent-of-code-2022

๐ŸŽ„ Advent of Code 2022
Rust
1
star
20

calibre-sync

๐Ÿ“š Synchronize Calibre library with robocopy/rsync
Batchfile
1
star
21

noll-9-noll

๐Ÿ’ฌ Yet another IRC bot
Perl
1
star
22

garmin-seaside

โŒš๏ธ Seaside - A minimalistic Garmin Watch Face
Monkey C
1
star
23

play-out

โ˜„๏ธ A Breakout clone written for Playdate
Lua
1
star
24

flickr-upload

Yet another API implementation
Python
1
star
25

elixir-nm

Nim implementation with Elixir
Elixir
1
star
26

async-await-demo

Trying out async/.await
Python
1
star
27

haskell-personnummer

๐Ÿ”ข Validate Swedish personal identity numbers
Haskell
1
star
28

what-depends

Describe all your dependencies and their licenses
Go
1
star
29

rust-personnummer

๐Ÿ”ข Validate Swedish personal identity numbers
Rust
1
star
30

gclv

Version manager for golangci-lint
Shell
1
star
31

v-hashids

Generate YouTube-like ids from numbers.
V
1
star