* Insert an extra space when doing a CR. This ensures the latest attribute setup gets inserted somehow in the line before we go elsewhere.

This gets 256colors.pl to give the right output, as well as useable vim in TERM=xterm-color mode (as far as I can tell).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39578 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Adrien Destugues 2010-11-22 20:12:16 +00:00
parent 1adf49423b
commit a753859956
3 changed files with 9 additions and 4 deletions

View File

@ -612,9 +612,14 @@ BasicTerminalBuffer::FillScreen(UTF8Char c, uint32 width, uint32 attributes)
void
BasicTerminalBuffer::InsertCR()
BasicTerminalBuffer::InsertCR(uint32 attributes)
{
_LineAt(fCursor.y)->softBreak = false;
TerminalLine* line = _LineAt(fCursor.y);
line->cells[fCursor.x].attributes = attributes;
line->cells[fCursor.x].character = ' ';
line->length ++;
line->softBreak = false;
fSoftWrappedCursor = false;
fCursor.x = 0;
_CursorChanged();

View File

@ -105,7 +105,7 @@ public:
uint32 width, uint32 attributes);
void FillScreen(UTF8Char c, uint32 width, uint32 attr);
void InsertCR();
void InsertCR(uint32 attrs);
void InsertLF();
void InsertRI();
void InsertTab(uint32 attr);

View File

@ -504,7 +504,7 @@ TermParse::EscParse()
break;
case CASE_CR:
fBuffer->InsertCR();
fBuffer->InsertCR(fAttr);
break;
case CASE_SJIS_KANA: