Look up the username and full name of the current user, the current user's email address and 'GitHub' username, using various sources of system and configuration information.
For the username it tries the LOGNAME, USER, LNAME and
USERNAME environment variables first. If these are all unset,
or set to an empty string, then it tries running id on Unix-like
systems and whoami on Windows.
For the full name of the user, it queries the system services and
also tries the user's global git configuration. On Windows, it tries finding the global git configuration in Sys.getenv("USERPROFILE") if it doesn't find it in Sys.getenv("HOME") (often "Documents").
For the email address it uses the user's global git configuration. It tries finding the global git configuration in Sys.getenv("USERPROFILE") if it doesn't find it in Sys.getenv("HOME").
For the GitHub username it uses the GITHUB_USERNAME environment variable then it tries searching on GitHub for the user's email
address.
Related JavaScript packages: sindresorhus/username, sindresorhus/fullname, sindresorhus/github-username, paulirish/github-email.
devtools::install_github("r-lib/whoami")library(whoami)username()#> [1] "gaborcsardi"
fullname()#> [1] "Gabor Csardi"
email_address()#> [1] "[email protected]"
gh_username()#> [1] "gaborcsardi"
whoami()#> username fullname email_address
#> "gaborcsardi" "Gabor Csardi" "[email protected]"
#> gh_username
#> "gaborcsardi"
MIT © Gábor Csárdi
Now fullname() uses the FULLNAME environment variable, if set.
Now email_address() uses the EMAIL environment variable, if set.
gh_username() caches the result, separately for each email address.
gh_username() uses the GITHUB_USERNAME environment variable, if it
it is set (#6, @maelle)
On Windows, gh_fullname() and gh_email_address() try finding the
global git configuration in Sys.getenv("USERPROFILE") if it is not
found in Sys.getenv("HOME") (#7, @maelle)
gh_username() also tries the GITHUB_PAT environment variable
to find a GitHub token, after GITHUB_TOKEN (#9, @maelle)
Maintainence release, no user visible changes
Maintainence release, no user visible changes
First release