class EnhancedPrompt::Prompt::Token::User
Public Instance Methods
gid()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 48 def gid @gid = _passwd.gid end
groupname()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 40 def groupname @groupname = _group.name end
login_count()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 28 def login_count @login_count ||= _user_list.size end
my_login_count()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 32 def my_login_count @my_login_count ||= _user_list.count{|user| user == username} end
other_login_count()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 36 def other_login_count @other_login_count ||= login_count - my_login_count end
other_usernames()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 16 def other_usernames @other_user_names ||= usernames - [username] end
other_users_count()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 24 def other_users_count @other_users_count ||= users_count - 1 end
uid()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 44 def uid @uid = _passwd.uid end
username()
click to toggle source
Shows your username
# File lib/enhanced_prompt/token/user.rb, line 7 def username @username ||= ENV['USER'] || ENV['LOGNAME'] || Etc.getlogin end
usernames()
click to toggle source
Shows usernames currently in your system
# File lib/enhanced_prompt/token/user.rb, line 12 def usernames @user_names ||= _user_list.uniq end
users_count()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 20 def users_count @users_count ||= usernames.size end
Private Instance Methods
_group()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 62 def _group @group ||= Etc.getgrgid(gid) end
_other_users()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 70 def _other_users end
_passwd()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 53 def _passwd if @passwd.nil? Etc.passwd{|g| @passwd = g if g.name == username} @passwd else @passwd end end
_user_list()
click to toggle source
TODO: need proper error handling
# File lib/enhanced_prompt/token/user.rb, line 75 def _user_list @user_list ||= %x|who|.lines.map{|line|line.split.first} end
_users()
click to toggle source
# File lib/enhanced_prompt/token/user.rb, line 66 def _users _user_list.size end