如何使用 curses 滚动?
How to scroll with curses?
如何用curses滚动?我尝试了以下方法,但失败了:
import curses
def main(stdscr):
stdscr.clear()
# Display 10 numbered lines:
for line in range(10):
stdscr.addstr(line, 0, str(line))
stdscr.getch() # Wait for a key press
# Scrolling:
stdscr.setscrreg(0, 9) # Set scrolling region
for _ in range(5):
stdscr.scroll() # Fails!
stdscr.getch()
curses.wrapper(main)
错误信息不多:
stdscr.scroll()
_curses.error: scroll() returned ERR
我在 OS X 和 xterm(OS X 中都尝试了终端应用程序),但两种情况下的错误都是一样的。
好的:在滚动之前使用 stdscr.scrollok(True)
(我以为我已经尝试过了,但显然那是在不同的上下文中)。
因此,似乎 scroll()
对光标做了一些操作,使其超出了 window 的底部。
如何用curses滚动?我尝试了以下方法,但失败了:
import curses
def main(stdscr):
stdscr.clear()
# Display 10 numbered lines:
for line in range(10):
stdscr.addstr(line, 0, str(line))
stdscr.getch() # Wait for a key press
# Scrolling:
stdscr.setscrreg(0, 9) # Set scrolling region
for _ in range(5):
stdscr.scroll() # Fails!
stdscr.getch()
curses.wrapper(main)
错误信息不多:
stdscr.scroll()
_curses.error: scroll() returned ERR
我在 OS X 和 xterm(OS X 中都尝试了终端应用程序),但两种情况下的错误都是一样的。
好的:在滚动之前使用 stdscr.scrollok(True)
(我以为我已经尝试过了,但显然那是在不同的上下文中)。
因此,似乎 scroll()
对光标做了一些操作,使其超出了 window 的底部。