Commit graph

104 commits

Author SHA1 Message Date
aycabta
947d0198e0 [ruby/irb] Show LANG and LC_ALL env by irb_info
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>

b431742430
2021-07-11 06:12:07 +09:00
Keiko Kaneko
8ee24840c8 [ruby/irb] Update ls.rb without requiring Set, because Set is one of standard libraries
7092ad2ab5
2021-07-01 05:16:31 +09:00
Takashi Kokubun
acbddbe68c [ruby/irb] Rescue a specific error
Rescuing StandardError is prone to bugs caused by a typo or obsoleted methods.

eb5260fcd5
2021-06-30 21:06:52 +09:00
Masataka Pocke Kuwabara
e8c2b03ee1 [ruby/irb] Fix error on ls object_cant_define_singleton
such as `ls 42`, `ls :sym` and so on

b1d436a853
2021-06-30 20:55:18 +09:00
Takashi Kokubun
35c7e83bb3 [ruby/irb] Optimize show_source command further
https://github.com/ruby/irb/pull/249 actually slowed down how `code` is
concatenated. The original way of creating `code` is faster.

[before]
    user     system      total        real
2.420137   0.005364   2.425501 (  2.426264)

[after]
    user     system      total        real
1.000221   0.007454   1.007675 (  1.008295)

Theoretically, this implementation might skip lines that don't appear in
Ripper tokens, but this assumes such lines don't impact whether the code
passes compilation or not. At least normal blank lines seem to have an
`on_ignored_nl` token anyway though.

27dd2867cd
2021-06-27 10:52:49 +09:00
Masataka Pocke Kuwabara
6eb7c663c6 [ruby/irb] Improve performance of show_source for large class
2b79e9ad21
2021-06-27 10:36:11 +09:00
Keiko Kaneko
de779f4a62 [ruby/irb] Sort ls result ordered by anscestry
fdd5c0a71e
2021-06-22 22:32:42 +09:00
Masataka Pocke Kuwabara
de96ae9b71 [ruby/irb] Dump ancestors' methods by ls command
73edff287c
2021-05-08 14:00:40 +09:00
Takashi Kokubun
9e336f73fb [ruby/irb] Add show_source command
108cb04352
2021-04-02 16:40:06 +09:00
Takashi Kokubun
94254117ee [ruby/irb] Have some right padding
instead of filling out an entire line

6ac8f45f5f
2021-03-21 16:01:29 +09:00
Takashi Kokubun
75b38f1894 [ruby/irb] Fix step's argument
cols.size was calling Integer#size, which returns 8.

Fixing a bug of https://github.com/ruby/irb/pull/209

c93ae4be71
2021-03-21 15:50:53 +09:00
Takashi Kokubun
d0b044a842 [ruby/irb] Fix column overflow on ls output
6115754623
2021-03-21 15:19:04 +09:00
Takashi Kokubun
232433f224 [ruby/irb] Add whereami command
bc822e4aac
2021-03-21 13:40:21 +09:00
Takashi Kokubun
5f72962a09 [ruby/irb] Implement ls command
19b6c20604
2021-03-21 12:59:51 +09:00
aycabta
6eb5b3ac27 [ruby/irb] The command "irb_info" should show RUBY_PLATFORM
39d1cd874f
2021-02-11 20:36:43 +09:00
aycabta
5704b5fe5e [ruby/irb] Allow "measure" command to take block
20f1ca23e9
2021-02-06 20:45:08 +09:00
aycabta
167dc37632 [ruby/irb] Try not to register the exact same measuring method twice
cc66b5573e
2020-12-24 23:26:22 +09:00
aycabta
0b14abe8e7 [ruby/irb] Suppress "shadowing outer" warning
27b149c599
2020-12-22 23:45:43 +09:00
aycabta
4131cd05be [ruby/irb] Support arg for measure command
b43f35d8f3
2020-12-22 23:45:43 +09:00
aycabta
9f08e3c703 [ruby/irb] Add measure command
You can use "measure" command to check performance in IRB like below:

  irb(main):001:0> 3
  => 3
  irb(main):002:0> measure
  TIME is added.
  => nil
  irb(main):003:0> 3
  processing time: 0.000058s
  => 3
  irb(main):004:0> measure :off
  => nil
  irb(main):005:0> 3
  => 3

You can set "measure :on" by "IRB.conf[:MEASURE] = true" in .irbrc, and, also,
set custom performance check method:

  IRB.conf[:MEASURE_PROC][:CUSTOM] = proc { |context, code, line_no, &block|
    time = Time.now
    result = block.()
    now = Time.now
    puts 'custom processing time: %fs' % (Time.now - time) if IRB.conf[:MEASURE]
    result
  }

3899eaf2e2
2020-12-20 16:23:59 +09:00
NARUSE, Yui
3407b7d8a6 Revert "Prefer #send over #__send__ when it is clear there is no possible conflict"
This reverts commit 4dba0c1a8e.

Matz's comment is "send is not deprecated. __send__ is safer".
But "Prefer #send over #__send__" is not reasonable.
2020-11-05 20:54:34 +09:00
Benoit Daloze
4dba0c1a8e Prefer #send over #__send__ when it is clear there is no possible conflict
* Reverts part of 3198e7abd7.
* If the rule is #send should be deprecated, that should be ruled by matz,
  there is no such rule currently and gems seem to prefer #send
  overwhelmingly.
2020-11-05 11:23:27 +01:00
Nobuyoshi Nakada
3198e7abd7
Separate send into public_send and __send__ 2020-10-27 16:12:45 +09:00
aycabta
8882927036 [ruby/irb] Discard newlines at end of file
0b2773d91d
2020-08-28 11:05:18 +09:00
aycabta
3864fbc6d8 [ruby/irb] Check existence of rc files in irb_info command
cdbb9dfc9f
2020-04-29 19:13:14 +09:00
aycabta
98a346d065 [ruby/irb] Add irb_info command
a6fe58e916
2020-04-29 19:13:14 +09:00
Nobuyoshi Nakada
880204cf55
irb/cmd/help.rb: return nil after the redefinition 2019-06-10 21:45:46 +09:00
Nobuyoshi Nakada
976c689ad4
irb: defer requiring rdoc to improve the start up time 2019-06-10 21:18:56 +09:00
nobu
8990779d36
Prefer block_given? to iterator?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-27 09:15:49 +09:00
Takashi Kokubun
52cfb17086
make sync-default-gems GEM=irb
from e6739d8c66
2019-04-26 18:28:57 +09:00
nobu
c20aae965e Prefer block_given? to iterator?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-18 09:52:50 +00:00
marcandre
b9d42af0f2 lib/*: Prefer require_relative over require, remove explicit extension
[#15206] [Fix GH-1976]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02 17:52:43 +00:00
marcandre
e859e668d2 lib/*: Prefer require_relative over require.
[#15206] [Fix GH-1976]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02 17:52:33 +00:00
hsbt
6b35c34c68 * basictest/test.rb: Adjust spaces in class declarations
with inheritance. [fix GH-1227] Patch by @adrfer
* lib/irb/*: ditto.
* lib/prime.rb: ditto.
* lib/shell/builtin-command.rb: ditto.
* object.c: ditto.
* sample/*.rb: ditto.
* test/-ext-/method/test_arity.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-10-07 05:18:57 +00:00
naruse
3e92b635fb Add frozen_string_literal: false for all files
When you change this to true, you may need to add more tests.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-16 05:07:31 +00:00
hsbt
2afed6ecef * lib/e2mmap.rb: remove needless instance variables.
* lib/irb.rb: ditto.
* lib/irb/**/*.rb: ditto.
* lib/shell.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-24 07:16:25 +00:00
hsbt
76515504d5 * lib/irb.rb: removed commented-out code.
* lib/irb/**/*.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-09 02:02:58 +00:00
hsbt
8e5af8b628 * lib/cmath.rb: fixed indent.
* lib/drb/ssl.rb: ditto.
* lib/irb/**/*.rb: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@47112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-08-09 01:36:49 +00:00
zzak
8983315238 * lib/irb*: merge doc from doc/irb/ird.rd and improve overall
documentation of IRB
* doc/irb/irb.rd: remove stale documentation


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-13 05:22:30 +00:00
ktsj
c3749b6a6d * ext/pathname/lib/pathname.rb, ext/tk/lib/multi-tk.rb,
ext/tk/sample/demos-en/widget, lib/benchmark.rb, lib/irb/cmd/fork.rb,
  lib/mkmf.rb, lib/net/ftp.rb, lib/net/smtp.rb, lib/open3.rb,
  lib/pstore.rb, lib/rexml/element.rb, lib/rexml/light/node.rb,
  lib/rinda/tuplespace.rb, lib/rss/maker/base.rb,
  lib/rss/maker/entry.rb, lib/scanf.rb, lib/set.rb, lib/shell.rb,
  lib/shell/command-processor.rb, lib/shell/process-controller.rb,
  lib/shell/system-command.rb, lib/uri/common.rb: remove unused block
  arguments to avoid creating Proc objects.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@33638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-11-05 07:37:47 +00:00
keiju
4f4f09d009 * lib/irb/cmd/help.rb: support RDoc 3.7. fix [Bug #3760].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-29 13:51:30 +00:00
nobu
b4f1eaa493 * ext/openssl/lib/openssl/x509-internal.rb, lib/forwardable.rb,
lib/irb/cmd/fork.rb, lib/mutex_m.rb,
  lib/shell/process-controller.rb, lib/sync.rb, object.c: 
  suppress warnings patched by Benoit Daloze at [ruby-core:30366].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-23 08:48:44 +00:00
nobu
0f58f9dbe7 * lib/irb/cmd/help.rb (IRB::ExtendCommand::Help#execute): use RI
interactive mode if no argument.  [ruby-dev:39839]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-07 22:16:47 +00:00
keiju
7203e59f27 * lib/irb/cmd/help.rb: fixed irb's "help" command. [ruby-core:22310].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-21 12:41:01 +00:00
keiju
c7fa0c727c * bin/irb, lib/irb.rb lib/irb/*: irb-0.9.6, extend inspect-mode
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-07 11:36:20 +00:00
nobu
f378f10473 * lib/**/*.rb: removed unnecessary shbang lines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 04:23:05 +00:00
nobu
287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
matz
4514a6bee6 * lib/irb/cmd/help.rb: should be updated for new ri structure.
[ruby-core:15825]

* lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional.

* lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be
  empty.

* lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for
  method.  maybe broken.

* lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError
  no more.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-12 18:13:48 +00:00
akr
6cdef2dc7e * $Date$ keyword removed to avoid inclusion of locale dependent
string.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-06 15:49:38 +00:00
keiju
ce7c263fb6 * lib/irb/ruby-lex.rb, lib/irb/slex.rb: bug fix of [ruby-Bugs-1745]
* lib/irb/ext/loader.rb, lib/irb/ext/save-history.rb:
   fix location of @RCS_ID

 * lib/irb/cmd/help.rb: a lost of release IRB 0.9.5.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@8329 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2005-04-14 09:58:18 +00:00