1
0
mirror of https://github.com/ru-de/faq.git synced 2024-11-23 19:02:19 +00:00
faq-de/files/check_spell.go

54 lines
1.5 KiB
Go
Raw Normal View History

2018-05-03 22:28:41 +00:00
package main
import (
"fmt"
"os"
"github.com/ewgRa/ci-utils/diff_liner"
"github.com/ewgRa/ci-utils/hunspell_parser"
"github.com/google/go-github/github"
"flag"
"encoding/json"
)
func main() {
prLiner := flag.String("pr-liner", "", "Pull request liner")
hunspellParsedFile := flag.String("hunspell-parsed-file", "", "Hunspell parsed file name")
file := flag.String("file", "", "Hunspell parsed file name")
2018-05-04 22:36:18 +00:00
commit := flag.String("commit", "", "Commit")
2018-05-03 22:28:41 +00:00
flag.Parse()
2018-05-04 22:36:18 +00:00
if *prLiner == "" || *hunspellParsedFile == "" || *file == "" || *commit == "" {
2018-05-03 22:28:41 +00:00
flag.Usage()
os.Exit(1)
}
linerResp := diff_liner.ReadLinerResponse(*prLiner)
hunspellParsedResp := hunspell_parser.ReadHunspellParserResponse(*hunspellParsedFile)
for _, resp := range hunspellParsedResp {
prLine := linerResp.GetDiffLine(*file, resp.Line)
if prLine == 0 {
continue
}
body := fmt.Sprintf("Возможная ошибка в слове \"%s\", варианты правильного написания \"%s\". Если слово \"%s\" является правильным, добавьте его в files/dictionary.dic", resp.Word, resp.Alternative, resp.Word)
comment := &github.PullRequestComment{
Body: &body,
2018-05-04 22:36:18 +00:00
CommitID: commit,
2018-05-03 22:28:41 +00:00
Path: file,
Position: &prLine,
}
jsonData, err := json.Marshal(comment)
if err != nil {
panic(err)
}
fmt.Println(string(jsonData))
}
}