Bram Moolenaar <[email protected]> writes:
> Please suggest a patch. I don't have a vt52 to try it out on :-).
Many vt100 emulators (and a real vt100, should you happen to have one)
can be put in vt52 mode by echoing '\e[?2l' ('\e<' to get back).
Removing the offending codes, and doing a simple ifdef for terminfo,
seems to work well. In my patch below I also added a few codes that
really are standard that were in the Atari extension section.
diff --git a/src/term.c b/src/term.c
index d35a57e..c9ca5d7 100644
--- a/src/term.c
+++ b/src/term.c
@@ -837,28 +837,33 @@ static struct builtin_term builtin_termcaps[] =
{(int)KS_NAME, "vt52"},
{(int)KS_CE, IF_EB("\033K", ESC_STR "K")},
{(int)KS_CD, IF_EB("\033J", ESC_STR "J")},
+# ifdef TERMINFO
+ {(int)KS_CM, IF_EB("\033Y%p1%' '%+%c%p2%' '%+%c",
+ ESC_STR "Y%p1%' '%+%c%p2%' '%+%c")},
+# else
{(int)KS_CM, IF_EB("\033Y%+ %+ ", ESC_STR "Y%+ %+ ")},
+# endif
{(int)KS_LE, "\b"},
+ {(int)KS_SR, IF_EB("\033I", ESC_STR "I")},
+ {K_UP, IF_EB("\033A", ESC_STR "A")},
+ {K_DOWN, IF_EB("\033B", ESC_STR "B")},
+ {K_LEFT, IF_EB("\033D", ESC_STR "D")},
+ {K_RIGHT, IF_EB("\033C", ESC_STR "C")},
+ {K_F1, IF_EB("\033P", ESC_STR "P")},
+ {K_F2, IF_EB("\033Q", ESC_STR "Q")},
+ {K_F3, IF_EB("\033R", ESC_STR "R")},
# ifdef __MINT__
{(int)KS_AL, IF_EB("\033L", ESC_STR "L")},
{(int)KS_DL, IF_EB("\033M", ESC_STR "M")},
{(int)KS_CL, IF_EB("\033E", ESC_STR "E")},
- {(int)KS_SR, IF_EB("\033I", ESC_STR "I")},
{(int)KS_VE, IF_EB("\033e", ESC_STR "e")},
{(int)KS_VI, IF_EB("\033f", ESC_STR "f")},
{(int)KS_SO, IF_EB("\033p", ESC_STR "p")},
{(int)KS_SE, IF_EB("\033q", ESC_STR "q")},
- {K_UP, IF_EB("\033A", ESC_STR "A")},
- {K_DOWN, IF_EB("\033B", ESC_STR "B")},
- {K_LEFT, IF_EB("\033D", ESC_STR "D")},
- {K_RIGHT, IF_EB("\033C", ESC_STR "C")},
{K_S_UP, IF_EB("\033a", ESC_STR "a")},
{K_S_DOWN, IF_EB("\033b", ESC_STR "b")},
{K_S_LEFT, IF_EB("\033d", ESC_STR "d")},
{K_S_RIGHT, IF_EB("\033c", ESC_STR "c")},
- {K_F1, IF_EB("\033P", ESC_STR "P")},
- {K_F2, IF_EB("\033Q", ESC_STR "Q")},
- {K_F3, IF_EB("\033R", ESC_STR "R")},
{K_F4, IF_EB("\033S", ESC_STR "S")},
{K_F5, IF_EB("\033T", ESC_STR "T")},
{K_F6, IF_EB("\033U", ESC_STR "U")},
@@ -881,11 +886,7 @@ static struct builtin_term builtin_termcaps[] =
{K_PAGEDOWN, IF_EB("\033b", ESC_STR "b")},
{K_PAGEUP, IF_EB("\033a", ESC_STR "a")},
# else
- {(int)KS_AL, IF_EB("\033T", ESC_STR "T")},
- {(int)KS_DL, IF_EB("\033U", ESC_STR "U")},
{(int)KS_CL, IF_EB("\033H\033J", ESC_STR "H" ESC_STR_nc "J")},
- {(int)KS_ME, IF_EB("\033SO", ESC_STR "SO")},
- {(int)KS_MR, IF_EB("\033S2", ESC_STR "S2")},
{(int)KS_MS, "y"},
# endif
# endif
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.