2010-10-28 37 views
2

我正在爲Windows編寫Ruby程序,並且需要從鍵盤(stdin)讀取用戶輸入。如何在Windows控制檯中禁用stdin回顯

然而,它在需要用戶按鍵將不會在Windows控制檯自動顯示,其行爲與「靜音按鍵」

這個問題在紅寶石在Linux中,可以使用「的stty」來解決linux命令:

%x{stty -icanon -echo} 

,因爲它是Linux終端誰自動將用戶密鑰輸出到終端,因此運行「的stty」命令告訴終端停止顯示用戶鍵按壓。

但我的程序必須在Windows中運行,所以我試圖尋找適用於Windows控制檯「stty的」等效命令,但仍發現夾...

?任何建議,指針?

回答

2

看看Highline寶石。爲了澄清,請看ask方法,並提供一個塊以使其輸出消失。這是很好的例子documentation

+0

你可能是一個更具體的litle?我已閱讀Highline的寶石,但沒有發現「明亮的解決方案」... – zipizap 2010-11-02 09:03:37

+0

添加更多的細節,在提供的鏈接,你可以只需點擊文檔。 – 2010-11-03 21:52:36

+0

謝謝。實際上,從那以後我也找到了rb-readline的寶石,現在我看到,在純運氣的情況下,我也收到了你的回答 - 所以我非常感激你:) – zipizap 2011-05-05 17:35:09