summaryrefslogtreecommitdiff
path: root/trunk/lib/irb/ext/math-mode.rb
diff options
context:
space:
mode:
Diffstat (limited to 'trunk/lib/irb/ext/math-mode.rb')
-rw-r--r--trunk/lib/irb/ext/math-mode.rb36
1 files changed, 36 insertions, 0 deletions
diff --git a/trunk/lib/irb/ext/math-mode.rb b/trunk/lib/irb/ext/math-mode.rb
new file mode 100644
index 0000000000..450a21eff7
--- /dev/null
+++ b/trunk/lib/irb/ext/math-mode.rb
@@ -0,0 +1,36 @@
+#
+# math-mode.rb -
+# $Release Version: 0.9.5$
+# $Revision$
+# by Keiju ISHITSUKA(keiju@ruby-lang.org)
+#
+# --
+#
+#
+#
+require "mathn"
+
+module IRB
+ class Context
+ attr_reader :math_mode
+ alias math? math_mode
+
+ def math_mode=(opt)
+ if @math_mode == true && opt == false
+ IRB.fail CantReturnToNormalMode
+ return
+ end
+
+ @math_mode = opt
+ if math_mode
+ main.extend Math
+ print "start math mode\n" if verbose?
+ end
+ end
+
+ def inspect?
+ @inspect_mode.nil? && !@math_mode or @inspect_mode
+ end
+ end
+end
+