Screenshots • Installation • Command-line completion • Man documentation • FAQ • Usage • Build Status • Contributing • Thanks • License
𝑎𝑙𝑖𝑔𝑜 is a utility for checking and viewing Golang struct alignment info.
To build the aligo from scratch, make sure you have a working Go 1.19+ workspace (instructions), then:
go install github.com/essentialkaos/aligo/v2@latest
For using aligo with Github Actions use this workflow file or add job Aligo
to your workflow:
name: Aligo
on:
push:
branches: [master, develop]
pull_request:
branches: [master]
jobs:
Aligo:
name: Aligo
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: '1.20.x'
- name: Check Golang sources with Aligo
uses: essentialkaos/aligo-action@v2
with:
files: ./...
You can generate completion for bash
, zsh
or fish
shell.
Bash:
sudo aligo --completion=bash 1> /etc/bash_completion.d/aligo
ZSH:
sudo aligo --completion=zsh 1> /usr/share/zsh/site-functions/aligo
Fish:
sudo aligo --completion=fish 1> /usr/share/fish/vendor_completions.d/aligo.fish
You can generate man page for aligo using next command:
aligo --generate-man | sudo gzip > /usr/share/man/man1/aligo.1.gz
Q: I think my struct is well aligned. How can I disable check for it?
A: You could add a comment with text aligo:ignore
for this struct, and aligo will ignore all problems with it. Example:
// This is my supa-dupa struct
// aligo:ignore
type MyStruct struct {
A bool
B int
}
Usage: aligo {options} {command} package…
Commands
check Check package for alignment problems
view Print alignment info for all structs
Options
--arch, -a name Architecture name
--struct, -s name Print info only about struct with given name
--tags, -t tag… Build tags (mergeble)
--pager, -P Use pager for long output
--no-color, -nc Disable colors in output
--help, -h Show this help message
--version, -v Show version
Examples
aligo view .
Show info about all structs in current package
aligo check .
Check current package
aligo check ./...
Check current package and all sub-packages
aligo --tags tag1,tag2,tag3 check ./...
Check current package and all sub-packages with custom build tags
aligo -s PostMessageParameters view .
Show info about PostMessageParameters struct
Branch | Status |
---|---|
master |
|
develop |
Before contributing to this project please read our Contributing Guidelines.
We would like to thank: