mirror of
https://github.com/eeeXun/GTT.git
synced 2025-05-19 09:10:42 -07:00
style: move main code out of if statement
This commit is contained in:
parent
303441125b
commit
c1ebe7eb3c
@ -71,22 +71,23 @@ func (t *ApertiumTranslate) Translate(message string) (translation, definition,
|
|||||||
return "", "", "", err
|
return "", "", "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(data) > 0 {
|
if len(data) <= 0 {
|
||||||
switch res.StatusCode {
|
return "", "", "", errors.New("Translation not found")
|
||||||
case 200:
|
|
||||||
translation += fmt.Sprintf("%v",
|
|
||||||
data["responseData"].(map[string]interface{})["translatedText"])
|
|
||||||
default:
|
|
||||||
return "", "", "", errors.New(
|
|
||||||
fmt.Sprintf("%s does not support translate from %s to %s.\nSee available pair on %s",
|
|
||||||
t.EngineName,
|
|
||||||
t.srcLang,
|
|
||||||
t.dstLang,
|
|
||||||
"https://www.apertium.org/",
|
|
||||||
))
|
|
||||||
}
|
|
||||||
|
|
||||||
return translation, definition, partOfSpeech, nil
|
|
||||||
}
|
}
|
||||||
return "", "", "", errors.New("Translation not found")
|
|
||||||
|
switch res.StatusCode {
|
||||||
|
case 200:
|
||||||
|
translation += fmt.Sprintf("%v",
|
||||||
|
data["responseData"].(map[string]interface{})["translatedText"])
|
||||||
|
default:
|
||||||
|
return "", "", "", errors.New(
|
||||||
|
fmt.Sprintf("%s does not support translate from %s to %s.\nSee available pair on %s",
|
||||||
|
t.EngineName,
|
||||||
|
t.srcLang,
|
||||||
|
t.dstLang,
|
||||||
|
"https://www.apertium.org/",
|
||||||
|
))
|
||||||
|
}
|
||||||
|
|
||||||
|
return translation, definition, partOfSpeech, nil
|
||||||
}
|
}
|
||||||
|
@ -70,10 +70,11 @@ func (t *ArgosTranslate) Translate(message string) (translation, definition, par
|
|||||||
return "", "", "", err
|
return "", "", "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(data) > 0 {
|
if len(data) <= 0 {
|
||||||
translation += fmt.Sprintf("%v", data["translatedText"])
|
return "", "", "", errors.New("Translation not found")
|
||||||
|
|
||||||
return translation, definition, partOfSpeech, nil
|
|
||||||
}
|
}
|
||||||
return "", "", "", errors.New("Translation not found")
|
|
||||||
|
translation += fmt.Sprintf("%v", data["translatedText"])
|
||||||
|
|
||||||
|
return translation, definition, partOfSpeech, nil
|
||||||
}
|
}
|
||||||
|
@ -71,58 +71,57 @@ func (t *GoogleTranslate) Translate(message string) (translation, definition, pa
|
|||||||
return "", "", "", err
|
return "", "", "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(data) > 0 {
|
if len(data) <= 0 {
|
||||||
// translation = data[0]
|
return "", "", "", errors.New("Translation not found")
|
||||||
for _, lines := range data[0].([]interface{}) {
|
|
||||||
translatedLine := lines.([]interface{})[0]
|
|
||||||
translation += fmt.Sprintf("%v", translatedLine)
|
|
||||||
}
|
|
||||||
|
|
||||||
// part of speech = data[1]
|
|
||||||
if data[1] != nil {
|
|
||||||
for _, parts := range data[1].([]interface{}) {
|
|
||||||
// part of speech
|
|
||||||
part := parts.([]interface{})[0]
|
|
||||||
partOfSpeech += fmt.Sprintf("[%v]\n", part)
|
|
||||||
for _, words := range parts.([]interface{})[2].([]interface{}) {
|
|
||||||
// dst lang
|
|
||||||
dstWord := words.([]interface{})[0]
|
|
||||||
partOfSpeech += fmt.Sprintf("\t%v:", dstWord)
|
|
||||||
// src lang
|
|
||||||
firstWord := true
|
|
||||||
for _, word := range words.([]interface{})[1].([]interface{}) {
|
|
||||||
if firstWord {
|
|
||||||
partOfSpeech += fmt.Sprintf(" %v", word)
|
|
||||||
firstWord = false
|
|
||||||
} else {
|
|
||||||
partOfSpeech += fmt.Sprintf(", %v", word)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
partOfSpeech += "\n"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// definition = data[12]
|
|
||||||
if len(data) >= 13 && data[12] != nil {
|
|
||||||
for _, parts := range data[12].([]interface{}) {
|
|
||||||
// part of speech
|
|
||||||
part := parts.([]interface{})[0]
|
|
||||||
definition += fmt.Sprintf("[%v]\n", part)
|
|
||||||
for _, sentences := range parts.([]interface{})[1].([]interface{}) {
|
|
||||||
// definition
|
|
||||||
def := sentences.([]interface{})[0]
|
|
||||||
definition += fmt.Sprintf("\t- %v\n", def)
|
|
||||||
// example sentence
|
|
||||||
if len(sentences.([]interface{})) >= 3 && sentences.([]interface{})[2] != nil {
|
|
||||||
example := sentences.([]interface{})[2]
|
|
||||||
definition += fmt.Sprintf("\t\t\"%v\"\n", example)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return translation, definition, partOfSpeech, nil
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return "", "", "", errors.New("Translation not found")
|
// translation = data[0]
|
||||||
|
for _, lines := range data[0].([]interface{}) {
|
||||||
|
translatedLine := lines.([]interface{})[0]
|
||||||
|
translation += fmt.Sprintf("%v", translatedLine)
|
||||||
|
}
|
||||||
|
// part of speech = data[1]
|
||||||
|
if data[1] != nil {
|
||||||
|
for _, parts := range data[1].([]interface{}) {
|
||||||
|
// part of speech
|
||||||
|
part := parts.([]interface{})[0]
|
||||||
|
partOfSpeech += fmt.Sprintf("[%v]\n", part)
|
||||||
|
for _, words := range parts.([]interface{})[2].([]interface{}) {
|
||||||
|
// dst lang
|
||||||
|
dstWord := words.([]interface{})[0]
|
||||||
|
partOfSpeech += fmt.Sprintf("\t%v:", dstWord)
|
||||||
|
// src lang
|
||||||
|
firstWord := true
|
||||||
|
for _, word := range words.([]interface{})[1].([]interface{}) {
|
||||||
|
if firstWord {
|
||||||
|
partOfSpeech += fmt.Sprintf(" %v", word)
|
||||||
|
firstWord = false
|
||||||
|
} else {
|
||||||
|
partOfSpeech += fmt.Sprintf(", %v", word)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
partOfSpeech += "\n"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// definition = data[12]
|
||||||
|
if len(data) >= 13 && data[12] != nil {
|
||||||
|
for _, parts := range data[12].([]interface{}) {
|
||||||
|
// part of speech
|
||||||
|
part := parts.([]interface{})[0]
|
||||||
|
definition += fmt.Sprintf("[%v]\n", part)
|
||||||
|
for _, sentences := range parts.([]interface{})[1].([]interface{}) {
|
||||||
|
// definition
|
||||||
|
def := sentences.([]interface{})[0]
|
||||||
|
definition += fmt.Sprintf("\t- %v\n", def)
|
||||||
|
// example sentence
|
||||||
|
if len(sentences.([]interface{})) >= 3 && sentences.([]interface{})[2] != nil {
|
||||||
|
example := sentences.([]interface{})[2]
|
||||||
|
definition += fmt.Sprintf("\t\t\"%v\"\n", example)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return translation, definition, partOfSpeech, nil
|
||||||
}
|
}
|
||||||
|
@ -54,9 +54,8 @@ func (t *GoogleTranslate) PlayTTS(lang, message string) error {
|
|||||||
if t.SoundLock.Stop {
|
if t.SoundLock.Stop {
|
||||||
t.SoundLock.Release()
|
t.SoundLock.Release()
|
||||||
return nil
|
return nil
|
||||||
} else {
|
|
||||||
time.Sleep(time.Millisecond)
|
|
||||||
}
|
}
|
||||||
|
time.Sleep(time.Millisecond)
|
||||||
}
|
}
|
||||||
if err = player.Close(); err != nil {
|
if err = player.Close(); err != nil {
|
||||||
t.SoundLock.Release()
|
t.SoundLock.Release()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user