From 14208ece9a2f26b755fabe36f7b379bd138b3ed7 Mon Sep 17 00:00:00 2001 From: ikawaha Date: Tue, 6 Oct 2020 22:14:17 +0900 Subject: [PATCH] Cosme --- cmd/kagome/lattice/cmd.go | 13 +++++++------ cmd/kagome/main.go | 2 +- cmd/kagome/server/cmd.go | 2 +- cmd/kagome/server/demo.go | 3 ++- cmd/kagome/tokenize/cmd.go | 8 +++++--- filter/feature.go | 1 + filter/sentence_splitter.go | 2 +- tokenizer/lattice/lattice.go | 4 ++-- tokenizer/lattice/node_test.go | 1 - tokenizer/token_test.go | 1 - tokenizer/tokenizer_test.go | 5 ----- 11 files changed, 20 insertions(+), 22 deletions(-) diff --git a/cmd/kagome/lattice/cmd.go b/cmd/kagome/lattice/cmd.go index 238f46cf..3454ca25 100644 --- a/cmd/kagome/lattice/cmd.go +++ b/cmd/kagome/lattice/cmd.go @@ -36,7 +36,7 @@ type option struct { // ContinueOnError ErrorHandling // Return a descriptive error. // ExitOnError // Call os.Exit(2). // PanicOnError // Call panic with a descriptive error.flag.ContinueOnError -func newOption(w io.Writer, eh flag.ErrorHandling) (o *option) { +func newOption(_ io.Writer, eh flag.ErrorHandling) (o *option) { o = &option{ flagSet: flag.NewFlagSet(CommandName, eh), } @@ -68,7 +68,7 @@ func (o *option) parse(args []string) error { return nil } -//OptionCheck receives a slice of args and returns an error if it was not successfully parsed +// OptionCheck receives a slice of args and returns an error if it was not successfully parsed func OptionCheck(args []string) error { opt := newOption(ioutil.Discard, flag.ContinueOnError) if err := opt.parse(args); err != nil { @@ -117,14 +117,16 @@ func command(opt *option) error { if err != nil { return err } - var out = os.Stdout + out := os.Stdout if opt.output != "" { var err error - out, err = os.OpenFile(opt.output, os.O_RDWR|os.O_TRUNC|os.O_CREATE, 0666) + out, err = os.OpenFile(opt.output, os.O_RDWR|os.O_TRUNC|os.O_CREATE, 0o666) if err != nil { return err } - defer out.Close() + defer func() { + _ = out.Close() + }() } mode := selectMode(opt.mode) @@ -136,7 +138,6 @@ func command(opt *option) error { if tok.Class == tokenizer.DUMMY { fmt.Fprintf(ErrorWriter, "%s\n", tok.Surface) } else { - fmt.Fprintf(ErrorWriter, "%s\t%v\n", tok.Surface, strings.Join(f, ",")) } } diff --git a/cmd/kagome/main.go b/cmd/kagome/main.go index 2bedd539..99900150 100644 --- a/cmd/kagome/main.go +++ b/cmd/kagome/main.go @@ -68,7 +68,7 @@ This must be specified by -X option during the go build. Such like: defaultSubcommand = subcommands[0] ) -//Usage prints to stdout information about the tool +// Usage prints to stdout information about the tool func Usage() { fmt.Fprintf(errorWriter, "Japanese Morphological Analyzer -- github.com/ikawaha/kagome/v2\n") fmt.Fprintf(errorWriter, "usage: %s \n", filepath.Base(os.Args[0])) diff --git a/cmd/kagome/server/cmd.go b/cmd/kagome/server/cmd.go index a180acc1..8413eefb 100644 --- a/cmd/kagome/server/cmd.go +++ b/cmd/kagome/server/cmd.go @@ -57,7 +57,7 @@ func (o *option) parse(args []string) error { return nil } -//OptionCheck receives a slice of args and returns an error if it was not successfully parsed +// OptionCheck receives a slice of args and returns an error if it was not successfully parsed func OptionCheck(args []string) error { opt := newOption(flag.ContinueOnError) if err := opt.parse(args); err != nil { diff --git a/cmd/kagome/server/demo.go b/cmd/kagome/server/demo.go index efb1710d..1e55a109 100644 --- a/cmd/kagome/server/demo.go +++ b/cmd/kagome/server/demo.go @@ -15,7 +15,7 @@ import ( "github.com/ikawaha/kagome/v2/tokenizer" ) -//TokenizeDemoHandler represents the tokenizer demo server struct +// TokenizeDemoHandler represents the tokenizer demo server struct type TokenizeDemoHandler struct { tokenizer *tokenizer.Tokenizer } @@ -207,6 +207,7 @@ var graphHTML = ` ` + var demoHTML = ` diff --git a/cmd/kagome/tokenize/cmd.go b/cmd/kagome/tokenize/cmd.go index 564fb2fa..b40fbe2c 100644 --- a/cmd/kagome/tokenize/cmd.go +++ b/cmd/kagome/tokenize/cmd.go @@ -74,7 +74,7 @@ func (o *option) parse(args []string) error { return nil } -//OptionCheck receives a slice of args and returns an error if it was not successfully parsed +// OptionCheck receives a slice of args and returns an error if it was not successfully parsed func OptionCheck(args []string) error { opt := newOption(ioutil.Discard, flag.ContinueOnError) if err := opt.parse(args); err != nil { @@ -136,14 +136,16 @@ func command(opt *option) error { return err } - var fp = os.Stdin + fp := os.Stdin if opt.file != "" { var err error fp, err = os.Open(opt.file) if err != nil { return err } - defer fp.Close() + defer func() { + _ = fp.Close() + }() } mode := selectMode(opt.mode) scanner := bufio.NewScanner(fp) diff --git a/filter/feature.go b/filter/feature.go index 597b03b3..9ab8295d 100644 --- a/filter/feature.go +++ b/filter/feature.go @@ -18,6 +18,7 @@ type filterEdge struct { val Feature to *filterNode } + type filterNode struct { fanout []*filterEdge } diff --git a/filter/sentence_splitter.go b/filter/sentence_splitter.go index 7fe515c8..c6970e25 100644 --- a/filter/sentence_splitter.go +++ b/filter/sentence_splitter.go @@ -47,6 +47,7 @@ func (s SentenceSplitter) isFollower(r rune) bool { return false } +// nolint: gocyclo // ScanSentences is a split function for a Scanner that returns each sentence of text. func (s SentenceSplitter) ScanSentences(data []byte, atEOF bool) (advance int, token []byte, err error) { if atEOF && len(data) == 0 { @@ -120,5 +121,4 @@ func (s SentenceSplitter) ScanSentences(data []byte, atEOF bool) (advance int, t } // If we're at EOF, we have a final, non-terminated line. Return it. return len(data), data[start:end], nil - } diff --git a/tokenizer/lattice/lattice.go b/tokenizer/lattice/lattice.go index 89f7fcb7..50daf180 100644 --- a/tokenizer/lattice/lattice.go +++ b/tokenizer/lattice/lattice.go @@ -24,7 +24,7 @@ const ( type TokenizeMode int const ( - //Normal Mode + // Normal Mode Normal TokenizeMode = iota + 1 // Search Mode Search @@ -78,7 +78,7 @@ func (la *Lattice) addNode(pos, id, position, start int, class NodeClass, surfac var m dict.Morph switch class { case DUMMY: - //use default cost + // use default cost case KNOWN: m = la.dic.Morphs[id] case UNKNOWN: diff --git a/tokenizer/lattice/node_test.go b/tokenizer/lattice/node_test.go index be7fa3ba..4f639fd8 100644 --- a/tokenizer/lattice/node_test.go +++ b/tokenizer/lattice/node_test.go @@ -5,7 +5,6 @@ import ( ) func Test_NodeClassString(t *testing.T) { - pairs := []struct { in NodeClass out string diff --git a/tokenizer/token_test.go b/tokenizer/token_test.go index 8a22d519..7e818dd5 100644 --- a/tokenizer/token_test.go +++ b/tokenizer/token_test.go @@ -124,7 +124,6 @@ func Test_FeaturesUnknown(t *testing.T) { t.Errorf("index >= len(want): expected empty feature and false, got %q, %v", f, ok) } }) - } func Test_FeatureAtUnknown(t *testing.T) { diff --git a/tokenizer/tokenizer_test.go b/tokenizer/tokenizer_test.go index 424a05d6..c9bbf0ba 100644 --- a/tokenizer/tokenizer_test.go +++ b/tokenizer/tokenizer_test.go @@ -145,7 +145,6 @@ func Test_AnalyzeUnknown(t *testing.T) { t.Errorf("got %v, expected %v", tok, expected[i]) } } - } func Test_TokenizeSpecialCase(t *testing.T) { @@ -244,7 +243,6 @@ func Test_AnalyzeWithSearchMode(t *testing.T) { t.Errorf("got %v, expected %v", tok, expected[i]) } } - } func Test_AnalyzeWithSearchModeUnknown(t *testing.T) { @@ -304,7 +302,6 @@ func Test_AnalyzeWithExtendedModeEmpty(t *testing.T) { t.Errorf("got %v, expected %v", tok, expected[i]) } } - } func Test_AnalyzeWithExtendedMode(t *testing.T) { @@ -336,7 +333,6 @@ func Test_AnalyzeWithExtendedMode(t *testing.T) { t.Errorf("got %v, expected %v", tok, expected[i]) } } - } func Test_AnalyzeWithExtendedModeUnknown(t *testing.T) { @@ -369,7 +365,6 @@ func Test_AnalyzeWithExtendedModeUnknown(t *testing.T) { t.Errorf("got %v, expected %v", tok, expected[i]) } } - } func Test_TokenizerDot(t *testing.T) {