-
Notifications
You must be signed in to change notification settings - Fork 3
/
baslik.go
53 lines (43 loc) · 1.36 KB
/
baslik.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package main
import (
"strings"
)
// BaslikCommand for gathering entries based on a "baslik" (topic)
type BaslikCommand struct {
cli EksiSozlukCLICommand
}
// Help provides the usage guide
func (c *BaslikCommand) Help() string {
helpText := `
Kullanım: eksisozluk-cli baslik BASLIK [--sukela] [--page=SAYFA_SAYISI] [--limit=ENTRY_LIMITI] [--output=json|console]
Başlık için bulunan entry'leri listelemek için kullanılır.
Seçenekler:
--sukela Başlıktaki entry'leri şukela modunda listelemek
--page=SAYFA_SAYISI Entry'ler için başlangıç sayfası (varsayılan 1)
--limit=ENTRY_LIMITI Toplam listelenen entry limiti (varsayılan 10)
--output=json,console console: Komut satırı çıktısı, json: JSON dosyası çıktısı (varsayılan console)
`
return strings.TrimSpace(helpText)
}
// Run handles the main operations of command
func (c *BaslikCommand) Run(args []string) int {
if len(args) < 1 {
c.cli.UI.Output(c.Help())
return 1
}
baslik := args[0]
parameter, err := parameterFlagHandler(args[1:], c, c.cli)
if err != nil {
return 1
}
if parameter.Limit == -1 {
parameter.Limit = 10
}
entryList := GetEntries(baslik, parameter)
WriteEntryList(entryList, parameter, baslik)
return 0
}
// Synopsis provides the usage
func (c *BaslikCommand) Synopsis() string {
return "Başlık adı ile arama"
}