Help us shape the future of Go! Take the 2026 Go Developer Survey

asciicheck

package module
v0.4.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 15, 2025 License: MIT Imports: 8 Imported by: 22

README

asciicheck Go Report Card codecov Go

Simple linter to check that your code does not contain non-ASCII identifiers

Install

go get -u github.com/tdakkota/asciicheck/cmd/asciicheck

Reason to use

So, do you see this code? Looks correct, isn't it?

package main

import "fmt"

type TеstStruct struct{}

func main() {
	s := TestStruct{}
	fmt.Println(s)
}

But if you try to run it, you will get an error:

./prog.go:8:7: undefined: TestStruct

What? TestStruct is defined above, but compiler thinks diffrent. Why?

Answer: Because TestStruct is not TеstStruct.

type TеstStruct struct{}
      ^ this 'e' (U+0435) is not 'e' (U+0065)

Usage

asciicheck uses singlechecker package to run:

asciicheck: checks that all code identifiers does not have non-ASCII symbols in the name

Usage: asciicheck [-flag] [package]


Flags:
  -V	print version and exit
  -all
    	no effect (deprecated)
  -c int
    	display offending line with this many lines of context (default -1)
  -cpuprofile string
    	write CPU profile to this file
  -debug string
    	debug flags, any subset of "fpstv"
  -fix
    	apply all suggested fixes
  -flags
    	print analyzer flags in JSON
  -json
    	emit JSON output
  -memprofile string
    	write memory profile to this file
  -source
    	no effect (deprecated)
  -tags string
    	no effect (deprecated)
  -trace string
    	write trace log to this file
  -v	no effect (deprecated)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewAnalyzer

func NewAnalyzer() *analysis.Analyzer

Types

This section is empty.

Directories

Path Synopsis
cmd
asciicheck command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL