Documentation
¶
Index ¶
- Constants
- Variables
- func CopyFile(dst, src string) (written int64, err error)
- func MarshalRubies(ctx *Context) (err error)
- func NewTag(ctx *Context, rb Ruby) (tag string, err error)
- func PathListForTag(ctx *Context, tag string) (path []string, err error)
- func SelectRubyFromList(tags map[string]Ruby, label, verb string) (tag string, err error)
- func StringSplitPath() (path []string, err error)
- func TagLabelToTag(ctx *Context, label string) (tags map[string]Ruby, err error)
- func UIYesConfirm(prompt string) (resp string, err error)
- type Context
- func (c *Context) Cmd() string
- func (c *Context) CmdArgs() []string
- func (c *Context) CmdRegex(cmd string) *regexp.Regexp
- func (c *Context) Home() string
- func (c *Context) Init()
- func (c *Context) SetCmd(cmd string)
- func (c *Context) SetCmdAndArgs(cmd string, args []string)
- func (c *Context) SetCmdArgs(args []string)
- func (c *Context) SetCmdRegex(cmd string, r string) error
- func (c *Context) SetHome(h string)
- type Ruby
- type RubyRegistry
Constants ¶
const ( AppName = `uru` AppVersion = `0.4.0` )
Variables ¶
var ( KnownRubies []string SysRbRegex *regexp.Regexp Canary = fmt.Sprintf("%s%s%s", string(os.PathListSeparator), string(os.PathListSeparator), string(os.PathListSeparator)) )
var BashWrapper = `` /* 663-byte string literal not displayed */
Functions ¶
func MarshalRubies ¶
MarshallRubies persists the registered rubies to a JSON formatted file.
func PathListForTag ¶
PathListForTag returns a PATH list appropriate for a given ruby tag.
func SelectRubyFromList ¶ added in v0.4.0
SelectRubyFromList presents a list of registered rubies and asks the user to select one. It returns the identifying tag for the selected ruby, or an error if unable to get the users selection.
func StringSplitPath ¶
StringSplitPath splits the PATH env var into a slice of strings.
func TagLabelToTag ¶ added in v0.4.0
TagLabelToTag returns a map of registered ruby tags whose TagLabel's match that of the specified tag label string.
func UIYesConfirm ¶
UIYesConfirm asks the user a question and returns Y or N with Y being the default.
Types ¶
type Context ¶
type Context struct {
Rubies RubyRegistry
// contains filtered or unexported fields
}
func (*Context) SetCmdAndArgs ¶
func (*Context) SetCmdArgs ¶
type Ruby ¶
type Ruby struct {
ID string // ruby version including patch number
TagLabel string // user friendly ruby tag value
Exe string // ruby executable name
Home string // full path to ruby executable directory
GemHome string // full path to a ruby's gem home directory
Description string // full ruby description
}
func CurrentRubyInfo ¶
CurrentRubyInfo returns the identifying tag and metadata information for the ruby currently in use.