aycabta
55c34b994b
Check the end token of heredoc correctly
2019-05-30 15:34:41 +09:00
aycabta
5e275dd2af
Treat :@1, :@@1, @1, and @@1 correctly to check termination
2019-05-28 03:23:52 +09:00
Kazuki Tsujimoto
b2b5ed1410
Supress duplicated warning
2019-05-28 01:32:07 +09:00
aycabta
9840f52c77
Use IRB::InputMethod#eof? to quit
2019-05-27 10:18:09 +09:00
aycabta
e73a68ebc3
Support op, cvar, iver, gvar and kw that follow on symbeg in IRB
2019-05-27 02:59:21 +09:00
aycabta
7686e33ee4
JSON like label ends by differs from the start
...
pp Ripper.lex('{ "a": 3 }')
=>
[[[1, 0], :on_lbrace, "{", EXPR_BEG|EXPR_LABEL],
[[1, 1], :on_sp, " ", EXPR_BEG|EXPR_LABEL],
[[1, 2], :on_tstring_beg, "\"", EXPR_BEG|EXPR_LABEL],
[[1, 3], :on_tstring_content, "a", EXPR_BEG|EXPR_LABEL],
[[1, 4], :on_label_end, "\":", EXPR_BEG|EXPR_LABEL],
[[1, 6], :on_sp, " ", EXPR_BEG|EXPR_LABEL],
[[1, 7], :on_int, "3", EXPR_END],
[[1, 8], :on_sp, " ", EXPR_END],
[[1, 9], :on_rbrace, "}", EXPR_END]]
2019-05-25 10:42:57 +09:00
aycabta
260235ce87
Use Reline as Reidline multiline editor in IRB
2019-05-25 02:16:19 +09:00
aycabta
4613c4bd5c
Symbol beginning token may take a constant token
2019-05-21 18:55:31 +09:00
aycabta
fd95ab44c6
IRB should eval and show an error when only .
is inputted
2019-05-21 18:37:35 +09:00
aycabta
94b740b249
Use Ripper for IRB
...
The debug option of IRB is deleted because it's just for IRB's pure Ruby
parser.
2019-04-30 14:40:06 +09:00
Nobuyoshi Nakada
f4f66bd11c
Revert "IRB is improved with Reline and RDoc, take 2"
...
Accidentally merged when 89271d4a37
"Adjusted indents".
2019-04-23 21:55:29 +09:00
aycabta
f2cd4f4cd0
IRB is improved with Reline and RDoc, take 2
2019-04-23 20:08:02 +09:00
aycabta
51cec00953
Revert "IRB is improved with Reline and RDoc"
...
This reverts commit 7f273ac6d0
.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67691 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-21 09:13:49 +00:00
aycabta
7f273ac6d0
IRB is improved with Reline and RDoc
...
Reline is a readline stdlib compatible library. It also supports
multiline input. IRB is improved with Reline and supports multiline.
Besides, supports showing documents when completed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-04-20 08:51:20 +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
nobu
f14f0d3464
ruby-lex.rb: fix continued line conditions
...
* lib/irb/ruby-lex.rb (RubyLex#lex): fix conditions for continued
line; empty lines, a semicolon, first line in `begin` block,
just after `else` are not continued.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-20 11:07:02 +00:00
nobu
716ce65138
ruby-lex.rb: merge regexps
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-04-20 11:07:00 +00:00
nobu
519af46806
ruby-lex.rb: fix for label
...
* lib/irb/ruby-lex.rb (identify_identifier): treat identifier just
followed by a colon as a lable. this is not a precise solution
but enough for the time being. [ruby-core:78526] [Bug #13012 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-12-08 08:31:01 +00:00
hsbt
6f04ae5688
* lib/irb/ruby-lex.rb: fixed parse error for striped heredocument syntax.
...
[fix GH-1127] Patch by @koic
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-12-18 01:25:08 +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
keiju
44ab0f8b3a
* lib/irb/ruby-lex.rb: fix counting indent in identify_string_dvar.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-08 15:19:30 +00:00
keiju
7b34c2f81a
* lib/irb/ruby-lex.rb: make lex_state to EXPR_END when next token
...
is an operator after SYMBEG [Bug #6378 ].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38632 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 14:48:42 +00:00
keiju
8f4d0c4526
* lib/irb/ruby-lex.rb: allow to handle recursive heredocs on
...
irb[Bug #5648 ].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-27 12:35:28 +00:00
nobu
4d9480cbbb
* remove trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-25 18:10:46 +00:00
keiju
d43e3321b5
* lib/irb/ruby-lex.rb: improve RubyLex performance for large files
...
[Bug #5202 ]. Patch by ryanmelt.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-25 16:04:52 +00:00
zzak
4943b46ae7
* lib/irb/ruby-lex.rb: Add handling for %i and %I quoting to irb
...
Patch by flori [ruby-core:49550] [Bug #7392 ] [Github Issue #157 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-12-23 06:25:22 +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
keiju
e36395dce6
* lib/irb/ruby-lex.rb: recognize '\char' in ruby statement.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-28 12:52:21 +00:00
keiju
576b44165a
* lib/irb/ruby-lex.rb: fix [Bug #4232 ].
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-06-27 16:20:56 +00:00
nobu
3a47cf3395
* remove trailing spaces.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-05-15 11:55:52 +00:00
nobu
81567892d0
* lib/irb/ruby-lex.rb (RubyLex#identify_string): use charclass.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29678 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-03 05:23:56 +00:00
matz
2d189f672b
* lib/irb/ruby-lex.rb (RubyLex#identify_string): parse multiple
...
regex options. a patch from Heesob Park in [ruby-core:32988].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29674 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-02 22:50:31 +00:00
marcandre
70510d026f
* lib/csv.rb: Fix unused variable warnings.
...
Patch by Run Paint [ruby-core:30991]
* lib/date.rb: ditto
* lib/debug.rb: ditto
* lib/drb/drb.rb: ditto
* lib/drb/invokemethod.rb: ditto
* lib/irb/ruby-lex.rb: ditto
* lib/irb/slex.rb: ditto
* lib/logger.rb: ditto
* lib/pathname.rb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-11 16:59:10 +00:00
naruse
fd734e6cc6
* lib/irb/ruby-lex.rb (identify_identifier): add '_' to the regexp.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-17 17:15:20 +00:00
mame
0b28bf2958
* lib/irb/ruby-lex.rb (identify_identifier): allow multibyte character
...
as identifier. [ruby-core:27275]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-17 11:37:56 +00:00
mame
748782bfc9
* lib/irb/ruby-lex.rb (RubyLex#getc): revert r10817, which caused
...
regression for handling case when there is no newline at the end of
file. [ruby-core:28248]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-11 05:47:18 +00:00
nobu
7af356461a
* lib/irb/context.rb (IRB::Context#irb_name): removed duplicated
...
attr_reader. [ruby-core:26047]
* lib/irb/ruby-lex.rb (RubyLex#lex_int2): removed duplicated
character class range.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25297 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-11 01:27:11 +00:00
naruse
5e4f23d600
* lib/date/format.rb: suppressed a warning.
...
* lib/irb/ruby-lex.rb: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-08-16 12:32:35 +00:00
keiju
f984a4d847
* lib/irb/ruby-lex.rb: make irb be able to parse
...
string_dvar. [ruby-core: 24051]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-07-23 08:35:22 +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
knu
ae846f9fb8
* lib/irb/completion.rb (IRB::InputCompletor::Operators): Add
...
overloadable negative operators.
* lib/irb/ruby-lex.rb (RubyLex#lex_init): Support overloadable
negative operators.
* lib/irb/ruby-lex.rb (RubyLex#identify_identifier): Minus signs
need to be escaped in regexp character class.
* misc/ruby-mode.el (ruby-font-lock-keywords, ruby-parse-partial):
Support overloadable negative operators.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-04-03 05:04:02 +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
yugui
5c1bd53c92
* lib/irb/init.rb (IRB.opt_parse): (M17N) adds -U and -E as command
...
line options. [ruby-dev:37161]. Fixes #711 .
improved long optinos.
* lib/irb/init.rb (IRB.set_encoding): new subroutine for IRB.opt_parse
* lib/irb/input-method.rb (IRB::StdioInputMethod): (M17N) regards
scripts that user types as encoded in the external_encoding.
* lib/irb/input-method.rb (IRB::ReadlineInputMethod): ditto.
* lib/irb/input-method.rb (IRB::FileInputMethod): (M17N) respects
magic comment.
* lib/irb/help.rb (IRB.print_usage): (M17N) respects magic comment
in the resource file.
* lib/irb/lc/help-message: adds -U and -E.
* lib/irb/lc/ja/help-message: ditto. re-encoded from ISO-2022-JP into UTF-8.
* lib/irb/lc/ja/encoding_aliases.rb: new file. provides Japanese specific
character encoding name table for backward compatibility.
* lib/irb/lc/ja/error.rb: re-eoncoded from ISO-2022-JP into UTF-8.
magic comment.
* lib/irb/locale.rb: integrated with Ruby 1.9's M17N support.
* lib/irb/magic-file.rb: new file. utility to handle files with magic
comment and opens in the correct encoding.
* lib/irb/ruby-lex.rb (RubyLex#each_top_level_statement): recovers
character encoding for a statement after it lexed so that irb can
eval the statement in correct encoding.
* lib/irb/src_encoding.rb: new file. utility.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-18 13:09:26 +00:00
matz
e6c1752137
* lib/rdoc.rb: massive spelling correction patch from Evan Farrar
...
<evanfarrar at gmail.com> in [ruby-doc:1382] applied.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-04 09:37:38 +00:00
naruse
4a9d407e35
* ruby-trunk.
...
* lib/irb/ruby-lex.rb (RubyLex#buf_input): use chars.to_a.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15267 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-27 07:43:31 +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