lib/rio/prompt.rb in rio-0.3.8 vs lib/rio/prompt.rb in rio-0.3.9
- old
+ new
@@ -1,8 +1,8 @@
#--
# ===============================================================================
-# Copyright (c) 2005, 2006 Christopher Kleckner
+# Copyright (c) 2005,2006,2007 Christopher Kleckner
# All rights reserved
#
# This file is part of the Rio library for ruby.
#
# Rio is free software; you can redistribute it and/or modify
@@ -21,29 +21,34 @@
# ===============================================================================
#++
#
# To create the documentation for Rio run the command
# ruby build_doc.rb
-# from the distribution directory. Then point your browser at the 'doc/rdoc' directory.
+# from the distribution directory.
#
# Suggested Reading
# * RIO::Doc::SYNOPSIS
# * RIO::Doc::INTRO
# * RIO::Doc::HOWTO
+# * RIO::Doc::EXAMPLES
# * RIO::Rio
#
-# <b>Rio is pre-alpha software.
-# The documented interface and behavior is subject to change without notice.</b>
#
require 'rio'
module RIO
def prompt(str="")
rio(?-).strip.print(str).gets
end
- module_function :prompt
+ def promptd(str="",default=nil)
+ dstr = default ? "[#{default}]: " : ": "
+ pstr = str + dstr
+ ans = prompt(pstr)
+ ans.empty? ? default : ans
+ end
+ module_function :prompt,:promptd
end
if $0 == __FILE__
eval DATA.read, nil, $0, __LINE__+4
end