我正在實現我自己的shell。但是爲了支持命令歷史記錄,我需要像在標準shell中一樣使用監視器向上/向下箭頭鍵。請告訴我如何處理方向鍵作爲輸入或這些鍵是否產生信號?請詳細說明。使用向上/向下箭頭作爲Unix中程序的輸入
回答
是否分配具體說了,你需要有一個「驅動的光標鍵」命令歷史記錄?
簡單的選擇是模仿貝殼FC例如
$ ls
... file listing ...
$ fc -l
1 ls
2 fc -l
$ fc -r 1
... file listing ...
和(當我提出成立的想法,我自己的,還不如去一路),以便能夠編輯命令行,你可以使用
fc -e start end
寫歷史從開始到結束進入文件,啓動編輯器,然後將結果文件作爲腳本執行。這樣你的shell就不用庫了,而是啓動命令並執行腳本,這是shell本來應該做的。
你還沒有很好地理解這個問題。 – 2009-10-03 09:17:40
這就是爲什麼它開始了「這項任務是否明確地說」:)這不是第一次有人給出一個assingment,他們讓他們自己的假設,然後基於假設問一個問題,即使一個更簡單的解決方案會考慮到使用readline(顯而易見的解決方案)被「你不允許使用外部庫」排除在外 – 2009-10-03 13:11:38
這取決於你如何預期粗糙去。更糟糕的是,你正在編寫鍵盤中斷處理程序。最好的情況,就像readline。
請與您的教授在這裏方向。還要檢查你的課程材料,看看教授是否給出了有關這方面的鏈接/例子。
- 1. 使輸入框中的向上/向下箭頭沒有任何作用
- 2. 如何使輸入搜索框上的向下箭頭工作?
- 3. html向上向下箭頭
- 4. 禁用向上和向下箭頭
- 5. 使用向上和向下箭頭導航不起作用
- 6. HTML:禁用數字輸入,但向上和向下箭頭應該工作
- 7. 向上和向下箭頭的JavaScript
- 8. jquery sticked向上和向下箭頭向上和向下
- 9. 向上/向下箭頭滾動不起作用
- 10. 向上和向下箭頭'導航不起作用自舉Typelhead
- 11. Yii Shell使用向上和向下箭頭的歷史記錄
- 12. Python中的向上箭頭?
- 13. 防止向下箭頭或向上箭頭更新MS Access中的組合框
- 14. 使用向上/向下箭頭導航HTML表單
- 15. iPad應用程序顯示帶有向下箭頭方向的動作表
- 16. 向下箭頭的HTML
- 17. 瞭解用戶按下向上/向下箭頭
- 18. HTML5「數字」類型輸入 - 向上/向下箭頭不精確點擊錯誤
- 19. 在jscrollpane中向上/向下顯示不同的箭頭圖像
- 20. 硒IDE向下箭頭鍵
- 21. QTable查看標題上的向上/向下箭頭升序/降序排列
- 22. jQuery自動完成禁用textarea中的向上/向下箭頭。爲什麼?
- 23. 如何在jQuery或Javascript中將箭頭綁定到「向上滾動」和向下箭頭以「向下滾動」?
- 24. 按鍵箭頭向下不工作
- 25. 檢測爲雙方向上和向右C++,向上箭頭
- 26. 正確使用向上和向下鍵來檢查向上和向下的箭頭
- 27. 如何使用箭頭鍵在NSTableView的行中向上/向下移動?
- 28. 使用向上和向下箭頭鍵獲取在listwiew中關注的項目
- 29. 啓用鍵盤(箭頭向上/向下)在列表項
- 30. 向下箭頭列表中的列表
有沒有什麼我們可以做,而不使用這些庫意味着如果在我的程序中,我可以測試這些鍵作爲輸入嗎? – avd 2009-09-30 16:07:14
你可以重新發明輪子,但是你想在你的外殼的一個小方面花費那麼多時間嗎? readline正是你想要的,但如果這對你來說是一個問題,那麼它就是GPL而不是LGPL。 – Duck 2009-09-30 16:11:49
我正在做一個課程任務的一部分,我不允許使用其他外部librraies,爲什麼我需要。 – avd 2009-09-30 16:17:45