mirror of
https://github.com/bettercap/bettercap
synced 2025-08-19 13:09:49 -07:00
fix: fixed bug in prompt parsing (fixes #58)
This commit is contained in:
parent
d455ff6f72
commit
b28f8a40ec
1 changed files with 5 additions and 5 deletions
|
@ -56,7 +56,7 @@ var PromptCallbacks = map[string]func(s *Session) string{
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
var envRe = regexp.MustCompile("{env\\.(.+)}")
|
var envRe = regexp.MustCompile("{env\\.([^}]+)}")
|
||||||
|
|
||||||
type Prompt struct {
|
type Prompt struct {
|
||||||
}
|
}
|
||||||
|
@ -79,11 +79,11 @@ func (p Prompt) Render(s *Session) string {
|
||||||
prompt = strings.Replace(prompt, tok, cb(s), -1)
|
prompt = strings.Replace(prompt, tok, cb(s), -1)
|
||||||
}
|
}
|
||||||
|
|
||||||
m := envRe.FindStringSubmatch(prompt)
|
m := envRe.FindAllString(prompt, -1)
|
||||||
if len(m) == 2 {
|
for _, match := range m {
|
||||||
name := m[1]
|
name := strings.Trim(strings.Replace(match, "env.", "", -1), "{}")
|
||||||
_, value := s.Env.Get(name)
|
_, value := s.Env.Get(name)
|
||||||
prompt = strings.Replace(prompt, m[0], value, -1)
|
prompt = strings.Replace(prompt, match, value, -1)
|
||||||
}
|
}
|
||||||
|
|
||||||
// make sure an user error does not screw all terminal
|
// make sure an user error does not screw all terminal
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue