답변을 찾는 것이 놀랍지 않게 어려운 질문이었습니다.[무엇?]가있는 Ruby의 irb는 IDLE이있는 Python 쉘과 동일합니까? (해당되는 경우 Windows에서)
Ruby console alternative for IRB (Windows)
IDLE like interactive console for Ruby
A recommended Ruby interactive console
:는 (A 몇 가지 질문과 같은 적어도 비슷한 묻는 것 같다 10 하지만 그 중 하나에서 필요한 것을 얻을 수 없었습니다.)
정확한 용어가 확실하지 않으므로 여기서 구체적으로 설명하려고합니다.
IDLE을 파이썬 셸과 함께 사용한다고 가정 해 보겠습니다.
IDLE의 텍스트 편집기 창 중 하나에 "example.py"스크립트가 열려 있습니다.
F5를 누르고 파이썬 셸이 나타나서 "example.py"의 모든 줄을 셸 행 단위로 입력했다면 정확히 수행 할 작업을 수행합니다.
기능적으로, 정확히 말하면 화면을 어지럽히 지 않고 모든 행을 자동으로 입력하는 것입니다. (또한이 작업을 수행 할 때마다 쉘을 새로운 상태로 재설정하지만 실제로는 현재 중요한 포인트가 아닙니다. 때때로 옵션이있는 것이 좋을 수도 있습니다 쉘의 상태를 재설정하고, 뭐든간에.)
그래서 이제 쉘에서 놀 수 있고 방금 실행 한 스크립트에 있던 모든 함수와 변수 등이 모두 있습니다.
하지만 ...
동일한 효과를 얻으려면 어떻게해야합니까?
예를 들어, Windows 콘솔에서 irb example.rb
(이에 해당하는 루비 스크립트)을 시도했는데 문자 그대로 각 줄을 irb에 하나씩 입력하고 화면 아래로 분출 한 다음 Windows 명령으로 자동 종료합니다. 신속한.
비록 이 일을 했더라도 (내가 원하는 것을 더 많이 만들 수있는 몇 가지 옵션이 있습니다!), 여전히 텍스트에서 alt-tab을 사용해야합니다. -editor를 콘솔 창에 입력하고 F5, obvs를 누르는 것보다 열등한 명령과 파일 이름을 입력하십시오.)
을 실제로으로 만들려면 여기에 구체적인 예가 있습니다. of :
1) 예를 들어 파이썬 스크립트.평 " 2) 다음 쉘에서 어떤 일을하는 쉘에서 실행의 예() 실제 쉘에서 복사 - 붙여 넣기
3) 그 파이썬 하나 4) 실행의 예에 해당하는 루비 스크립트 그것은 repl.it의 미봉책, 느린 온라인 통역, 및 그 IRB 쉘에서 똑같은 일을 (다시는 복사 - 붙여 넣기)
1) example.py :
x = "some value you don't want to keep reassigning to this variable"
y = "some other value like that"
def some_function(var):
return "do something complicated with `"+var+"`"
print("example.py just ran")
2) 파이썬 쉘을 :
Python 3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>>
example.py just ran
>>> x
"some value you don't want to keep reassigning to this variable"
>>> y
'some other value like that'
>>> print(some_function(x))
do something complicated with `some value you don't want to keep reassigning to this variable`
>>> x = "a frog"
>>> print(some_function(x))
do something complicated with `a frog`
>>> print("gonna run example.py again")
gonna run example.py again
>>> ================================ RESTART ================================
>>>
example.py just ran
>>> print("x is back to: `\""+x+"\"`")
x is back to: `"some value you don't want to keep reassigning to this variable"`
3) example.rb :
x = "some value you don't want to keep reassigning to this variable"
y = "some other value like that"
def some_function var
"do something complicated with `#{var}`"
end
puts "test.rb just ran"
4) 온라인 루비 IRB 쉘 것은 repl.it에서 :
Ruby 1.8.7 (2008-05-31 patchlevel 0) [x86-linux]
[GCC 4.2.1 (LLVM, Emscripten 1.5, Emscripted-Ruby)]
test.rb just ran
=> nil
x
=> "some value you don't want to keep reassigning to this variable"
y
=> "some other value like that"
puts some_function x
do something complicated with `some value you don't want to keep reassigning to this variable`
=> nil
x = "a frog"
=> "a frog"
puts some_function x
do something complicated with `a frog`
=> nil
puts "gonna run this script again..."
gonna run this script again...
=> nil
test.rb just ran
=> nil
puts "x is back to: `\"#{x}\"`"
x is back to: `"some value you don't want to keep reassigning to this variable"`
=> nil
먼저 질문을 정리해야합니다. 너무 길다. 둘째 : 코드를 편집하고 프로젝트 파일을 관리하며 하나의 프로그램에서 모두 실행/디버깅 할 수있는 Ruby IDE (통합 개발 환경)를 찾고 있습니까? – iamnotmaynard
그래, 어떻게 든 끝내서 정말 길게 끝났어 ... 나는 "athe"기능을하기에는 너무 지쳤다. 그래서 나는 나중에 그것을 다듬을 것이다. 내가 원하는 것은 정확하게 내가 말한 것입니다 : 1) 2)와 2) 3) 모두에 공통적 인 것. 1) Python 스크립트 예. 2) IDLE과 Python 셸을 사용하여 [예제]와 같은 작업을 수행 할 수 있습니다. -----> 3) 동등한 예제 Ruby 스크립트 4) Ruby 및 repl.it 인터프리터 온라인에서 [동등한 예]와 같은 작업을 수행 할 수 있습니다. 그래서 나는 기본적으로 그 repl.it 것, 온라인 ...과 천천히 그리고 스파이 텍스트 에디터와 같이 정확하게 작동하는 것을 원한다. –