Loading ...
Sorry, an error occurred while loading the content.
 

Re: Problem with xterm screen refresh with recent versions of Vim

Expand Messages
  • Yegappan Lakshmanan
    Hi, ... This problem is caused by the 7.3.859 patch ( ambiwidth must be set by the user). When I remove this patch, I don t see this screen refresh problem.
    Message 1 of 9 , Jul 2 8:14 PM
      Hi,

      On Tue, Jul 2, 2013 at 10:25 AM, Bram Moolenaar <Bram@...> wrote:
      >
      > Yegappan Lakshmanan wrote:
      >
      >> I see a problem in xterm screen refresh with the recent versions of Vim.
      >> The text displayed in the command line is not cleared.
      >>
      >> Steps to reproduce this problem:
      >>
      >> $ vim -u NONE -i NONE -N -c 'set cmdheight=2' -c 'set laststatus=2'
      >> <press CTRL-G to display the current file name and other information>
      >> <Press :e to edit a file>
      >>
      >> In the last step, the file name and other information displayed by
      >> CTRL-G are not cleared. Even if I force a screen refresh using CTRL-L
      >> or the ":redraw!" command, the text is not cleared.
      >>
      >> I don't see this problem with Vim 7.3.
      >>
      >> After this problem is seen, if I suspend Vim (using CTRL-Z) and
      >> resume it (using fg), then the screen is cleared properly.
      >
      > I cannot reproduce this problem. I do see the first message from CTRL-G
      > disappearing, that's most likely the other bug.
      > For me pressing ":" to type the ":e" command already clears the info
      > from CTRL-G.
      >
      > Since you say CTRL-G gives info, you actually are editing a file?
      >

      This problem is caused by the 7.3.859 patch ( 'ambiwidth' must be set
      by the user).
      When I remove this patch, I don't see this screen refresh problem.

      - Yegappan

      --
      --
      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 vim_dev+unsubscribe@....
      For more options, visit https://groups.google.com/groups/opt_out.
    • Yegappan Lakshmanan
      Hi, ... This problem is caused by the may_req_ambiguous_character_width() function added by the above patch (859). When I set the ambwidth option in the
      Message 2 of 9 , Jul 2 10:28 PM
        Hi,

        On Tue, Jul 2, 2013 at 8:14 PM, Yegappan Lakshmanan <yegappanl@...> wrote:
        > Hi,
        >
        > On Tue, Jul 2, 2013 at 10:25 AM, Bram Moolenaar <Bram@...> wrote:
        >>
        >> Yegappan Lakshmanan wrote:
        >>
        >>> I see a problem in xterm screen refresh with the recent versions of Vim.
        >>> The text displayed in the command line is not cleared.
        >>>
        >>> Steps to reproduce this problem:
        >>>
        >>> $ vim -u NONE -i NONE -N -c 'set cmdheight=2' -c 'set laststatus=2'
        >>> <press CTRL-G to display the current file name and other information>
        >>> <Press :e to edit a file>
        >>>
        >>> In the last step, the file name and other information displayed by
        >>> CTRL-G are not cleared. Even if I force a screen refresh using CTRL-L
        >>> or the ":redraw!" command, the text is not cleared.
        >>>
        >>> I don't see this problem with Vim 7.3.
        >>>
        >>> After this problem is seen, if I suspend Vim (using CTRL-Z) and
        >>> resume it (using fg), then the screen is cleared properly.
        >>
        >> I cannot reproduce this problem. I do see the first message from CTRL-G
        >> disappearing, that's most likely the other bug.
        >> For me pressing ":" to type the ":e" command already clears the info
        >> from CTRL-G.
        >>
        >> Since you say CTRL-G gives info, you actually are editing a file?
        >>
        >
        > This problem is caused by the 7.3.859 patch ( 'ambiwidth' must be set
        > by the user).
        > When I remove this patch, I don't see this screen refresh problem.
        >

        This problem is caused by the may_req_ambiguous_character_width()
        function added by the above patch (859).

        When I set the 'ambwidth' option in the .vimrc file, the screen is properly
        refreshed and the problem is not seen.

        - Yegappan

        --
        --
        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 vim_dev+unsubscribe@....
        For more options, visit https://groups.google.com/groups/opt_out.
      • Yegappan Lakshmanan
        Hi, On Tue, Jul 2, 2013 at 10:28 PM, Yegappan Lakshmanan ... I tried the latest Vim version (7.3.1294). I still see the xterm screen refresh problem. The
        Message 3 of 9 , Jul 3 7:45 AM
          Hi,

          On Tue, Jul 2, 2013 at 10:28 PM, Yegappan Lakshmanan
          <yegappanl@...> wrote:
          > Hi,
          >
          > On Tue, Jul 2, 2013 at 8:14 PM, Yegappan Lakshmanan <yegappanl@...> wrote:
          >> Hi,
          >>
          >> On Tue, Jul 2, 2013 at 10:25 AM, Bram Moolenaar <Bram@...> wrote:
          >>>
          >>> Yegappan Lakshmanan wrote:
          >>>
          >>>> I see a problem in xterm screen refresh with the recent versions of Vim.
          >>>> The text displayed in the command line is not cleared.
          >>>>
          >>>> Steps to reproduce this problem:
          >>>>
          >>>> $ vim -u NONE -i NONE -N -c 'set cmdheight=2' -c 'set laststatus=2'
          >>>> <press CTRL-G to display the current file name and other information>
          >>>> <Press :e to edit a file>
          >>>>
          >>>> In the last step, the file name and other information displayed by
          >>>> CTRL-G are not cleared. Even if I force a screen refresh using CTRL-L
          >>>> or the ":redraw!" command, the text is not cleared.
          >>>>
          >>>> I don't see this problem with Vim 7.3.
          >>>>
          >>>> After this problem is seen, if I suspend Vim (using CTRL-Z) and
          >>>> resume it (using fg), then the screen is cleared properly.
          >>>
          >>> I cannot reproduce this problem. I do see the first message from CTRL-G
          >>> disappearing, that's most likely the other bug.
          >>> For me pressing ":" to type the ":e" command already clears the info
          >>> from CTRL-G.
          >>>
          >>> Since you say CTRL-G gives info, you actually are editing a file?
          >>>
          >>
          >> This problem is caused by the 7.3.859 patch ( 'ambiwidth' must be set
          >> by the user).
          >> When I remove this patch, I don't see this screen refresh problem.
          >>
          >
          > This problem is caused by the may_req_ambiguous_character_width()
          > function added by the above patch (859).
          >
          > When I set the 'ambwidth' option in the .vimrc file, the screen is properly
          > refreshed and the problem is not seen.
          >

          I tried the latest Vim version (7.3.1294). I still see the xterm screen refresh
          problem. The changes made for patch 1288 didn't fix this problem.

          - Yegappan

          --
          --
          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 vim_dev+unsubscribe@....
          For more options, visit https://groups.google.com/groups/opt_out.
        • Bram Moolenaar
          ... I still don t see this problem. You could compile with DEBUG_TERMRESPONSE. You need to change if 0 to if 1 in src/term.c for that. Then look at the
          Message 4 of 9 , Jul 3 8:21 AM
            Yegappan Lakshmanan wrote:

            > On Tue, Jul 2, 2013 at 10:28 PM, Yegappan Lakshmanan
            > <yegappanl@...> wrote:
            > > Hi,
            > >
            > > On Tue, Jul 2, 2013 at 8:14 PM, Yegappan Lakshmanan <yegappanl@...> wrote:
            > >> Hi,
            > >>
            > >> On Tue, Jul 2, 2013 at 10:25 AM, Bram Moolenaar <Bram@...> wrote:
            > >>>
            > >>> Yegappan Lakshmanan wrote:
            > >>>
            > >>>> I see a problem in xterm screen refresh with the recent versions of Vim.
            > >>>> The text displayed in the command line is not cleared.
            > >>>>
            > >>>> Steps to reproduce this problem:
            > >>>>
            > >>>> $ vim -u NONE -i NONE -N -c 'set cmdheight=2' -c 'set laststatus=2'
            > >>>> <press CTRL-G to display the current file name and other information>
            > >>>> <Press :e to edit a file>
            > >>>>
            > >>>> In the last step, the file name and other information displayed by
            > >>>> CTRL-G are not cleared. Even if I force a screen refresh using CTRL-L
            > >>>> or the ":redraw!" command, the text is not cleared.
            > >>>>
            > >>>> I don't see this problem with Vim 7.3.
            > >>>>
            > >>>> After this problem is seen, if I suspend Vim (using CTRL-Z) and
            > >>>> resume it (using fg), then the screen is cleared properly.
            > >>>
            > >>> I cannot reproduce this problem. I do see the first message from CTRL-G
            > >>> disappearing, that's most likely the other bug.
            > >>> For me pressing ":" to type the ":e" command already clears the info
            > >>> from CTRL-G.
            > >>>
            > >>> Since you say CTRL-G gives info, you actually are editing a file?
            > >>>
            > >>
            > >> This problem is caused by the 7.3.859 patch ( 'ambiwidth' must be set
            > >> by the user).
            > >> When I remove this patch, I don't see this screen refresh problem.
            > >>
            > >
            > > This problem is caused by the may_req_ambiguous_character_width()
            > > function added by the above patch (859).
            > >
            > > When I set the 'ambwidth' option in the .vimrc file, the screen is properly
            > > refreshed and the problem is not seen.
            > >
            >
            > I tried the latest Vim version (7.3.1294). I still see the xterm
            > screen refresh problem. The changes made for patch 1288 didn't fix
            > this problem.

            I still don't see this problem. You could compile with DEBUG_TERMRESPONSE.
            You need to change "if 0" to "if 1" in src/term.c for that. Then look
            at the termresponse.log file.

            Also check your $TERM environment variable.

            --
            ARTHUR: Did you say shrubberies?
            ROGER: Yes. Shrubberies are my trade. I am a shrubber. My name is Roger
            the Shrubber. I arrange, design, and sell shrubberies.
            "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

            /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
            /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
            \\\ an exciting new programming language -- http://www.Zimbu.org ///
            \\\ help me help AIDS victims -- http://ICCF-Holland.org ///

            --
            --
            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 vim_dev+unsubscribe@....
            For more options, visit https://groups.google.com/groups/opt_out.
          • Yegappan Lakshmanan
            Hi, ... I compiled Vim with DEBUG_TERMRESPONSE turned on and collected the below output. The TERM environment variable is set to xterm . - Yegappan 0.000008:
            Message 5 of 9 , Jul 3 7:19 PM
              Hi,

              >> >>>
              >> >>>> I see a problem in xterm screen refresh with the recent versions of Vim.
              >> >>>> The text displayed in the command line is not cleared.
              >> >>>>
              >> >>>> Steps to reproduce this problem:
              >> >>>>
              >> >>>> $ vim -u NONE -i NONE -N -c 'set cmdheight=2' -c 'set laststatus=2'
              >> >>>> <press CTRL-G to display the current file name and other information>
              >> >>>> <Press :e to edit a file>
              >> >>>>
              >> >>>> In the last step, the file name and other information displayed by
              >> >>>> CTRL-G are not cleared. Even if I force a screen refresh using CTRL-L
              >> >>>> or the ":redraw!" command, the text is not cleared.
              >> >>>>
              >> >>>> I don't see this problem with Vim 7.3.
              >> >>>>
              >> >>>> After this problem is seen, if I suspend Vim (using CTRL-Z) and
              >> >>>> resume it (using fg), then the screen is cleared properly.
              >> >>>
              >> >>> I cannot reproduce this problem. I do see the first message from CTRL-G
              >> >>> disappearing, that's most likely the other bug.
              >> >>> For me pressing ":" to type the ":e" command already clears the info
              >> >>> from CTRL-G.
              >> >>>
              >> >>> Since you say CTRL-G gives info, you actually are editing a file?
              >> >>>
              >> >>
              >> >> This problem is caused by the 7.3.859 patch ( 'ambiwidth' must be set
              >> >> by the user).
              >> >> When I remove this patch, I don't see this screen refresh problem.
              >> >>
              >> >
              >> > This problem is caused by the may_req_ambiguous_character_width()
              >> > function added by the above patch (859).
              >> >
              >> > When I set the 'ambwidth' option in the .vimrc file, the screen is properly
              >> > refreshed and the problem is not seen.
              >> >
              >>
              >> I tried the latest Vim version (7.3.1294). I still see the xterm
              >> screen refresh problem. The changes made for patch 1288 didn't fix
              >> this problem.
              >
              > I still don't see this problem. You could compile with DEBUG_TERMRESPONSE.
              > You need to change "if 0" to "if 1" in src/term.c for that. Then look
              > at the termresponse.log file.
              >
              > Also check your $TERM environment variable.
              >

              I compiled Vim with DEBUG_TERMRESPONSE turned on and collected the
              below output. The TERM environment variable is set to "xterm".

              - Yegappan


              0.000008: NV setting crv_status to CRV_GET
              0.305545: CL Sending U7 request
              0.306208: NV Sending CRV
              0.307869: Received U7 status
              0.308574: set 'ambiwidth', redraw_asap(): 4
              0.308610: Not enough characters for CRV
              0.308749: Received CRV
              0.308775: Enable checking for XT codes
              0.308779: Requesting XT 0: Co
              0.308783: Requesting XT 1: ku
              0.308786: Requesting XT 2: kd
              0.308789: Requesting XT 3: kr
              0.308792: Requesting XT 4: kl
              0.308796: Requesting XT 5: #2
              0.308799: Requesting XT 6: #4
              0.308801: Requesting XT 7: %i
              0.308804: Requesting XT 8: *7
              0.308808: Requesting XT 9: k1
              0.309938: Received XT 0: Co
              0.313354: Received t_Co, redraw_asap(): 4
              0.313362: Requesting XT 10: k2
              0.313506: Received XT 1: ku
              0.313512: Requesting XT 11: k3
              0.313590: Received XT 2: kd
              0.313596: Requesting XT 12: k4
              0.313656: Received XT 3: kr
              0.313661: Requesting XT 13: k5
              0.313716: not enough characters for XT
              0.313791: Received XT 4: kl
              0.313796: Requesting XT 14: k6
              0.313854: Received XT 5: #2
              0.313859: Requesting XT 15: k7
              0.313914: not enough characters for XT
              0.313930: Received XT 6: #4
              0.313936: Requesting XT 16: k8
              0.313992: Received XT 7: %i
              0.313998: Requesting XT 17: k9
              0.314053: Received XT 8: *7
              0.314059: Requesting XT 18: k;
              0.314115: not enough characters for XT
              0.314131: Received XT 9: k1
              0.314136: Requesting XT 19: F1
              0.314607: Received XT 10: k2
              0.314613: Requesting XT 20: F2
              0.314732: Received XT 11: k3
              0.314738: Requesting XT 21: %1
              0.314797: not enough characters for XT
              0.314814: Received XT 12: k4
              0.314819: Requesting XT 22: &8
              0.315046: not enough characters for XT
              0.315190: not enough characters for XT
              0.315339: Received XT 13: k5
              0.315345: Requesting XT 23: kb
              0.315409: not enough characters for XT
              0.315591: Received XT 14: k6
              0.315596: Requesting XT 24: kI
              0.315717: Received XT 15: k7
              0.315722: Requesting XT 25: kD
              0.315796: Received XT 16: k8
              0.315800: Requesting XT 26: kh
              0.315858: not enough characters for XT
              0.315877: Received XT 17: k9
              0.315881: Requesting XT 27: @7
              0.315945: Received XT 18: k;
              0.315949: Requesting XT 28: kP
              0.316009: Received XT 19: F1
              0.316137: Requesting XT 29: kN
              0.316227: Received XT 20: F2
              0.316232: Requesting XT 30: K1
              0.316313: Received XT 21: %1
              0.316406: Requesting XT 31: K3
              0.316538: Requesting XT 32: K4
              0.316774: not enough characters for XT
              0.316848: Received XT 23: kb
              0.316901: Requesting XT 33: K5
              0.317025: Received XT 24: kI
              0.317031: Requesting XT 34: kB
              0.317098: Received XT 25: kD
              0.317117: Received XT 26: kh
              0.317143: Received XT 27: @7
              0.317160: Received XT 28: kP
              0.317179: Received XT 29: kN
              0.317195: not enough characters for XT
              0.317405: Received XT 30: K1
              0.317431: Received XT 32: K4
              0.317663: not enough characters for XT
              0.317852: Received XT 34: kB
              1.252632: normal character
              1.723194: normal character
              1.890937: normal character
              2.147020: normal character
              2.330732: normal character

              --
              --
              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 vim_dev+unsubscribe@....
              For more options, visit https://groups.google.com/groups/opt_out.
            • Bram Moolenaar
              ... This is where it redraws the screen, apparently your default ambiwidth is different. ... And this is where it redraws the screen because t_Co changes
              Message 6 of 9 , Jul 4 5:21 AM
                Yegappan Lakshmanan wrote:

                > >> >>>
                > >> >>>> I see a problem in xterm screen refresh with the recent versions of Vim.
                > >> >>>> The text displayed in the command line is not cleared.
                > >> >>>>
                > >> >>>> Steps to reproduce this problem:
                > >> >>>>
                > >> >>>> $ vim -u NONE -i NONE -N -c 'set cmdheight=2' -c 'set laststatus=2'
                > >> >>>> <press CTRL-G to display the current file name and other information>
                > >> >>>> <Press :e to edit a file>
                > >> >>>>
                > >> >>>> In the last step, the file name and other information displayed by
                > >> >>>> CTRL-G are not cleared. Even if I force a screen refresh using CTRL-L
                > >> >>>> or the ":redraw!" command, the text is not cleared.
                > >> >>>>
                > >> >>>> I don't see this problem with Vim 7.3.
                > >> >>>>
                > >> >>>> After this problem is seen, if I suspend Vim (using CTRL-Z) and
                > >> >>>> resume it (using fg), then the screen is cleared properly.
                > >> >>>
                > >> >>> I cannot reproduce this problem. I do see the first message from CTRL-G
                > >> >>> disappearing, that's most likely the other bug.
                > >> >>> For me pressing ":" to type the ":e" command already clears the info
                > >> >>> from CTRL-G.
                > >> >>>
                > >> >>> Since you say CTRL-G gives info, you actually are editing a file?
                > >> >>>
                > >> >>
                > >> >> This problem is caused by the 7.3.859 patch ( 'ambiwidth' must be set
                > >> >> by the user).
                > >> >> When I remove this patch, I don't see this screen refresh problem.
                > >> >>
                > >> >
                > >> > This problem is caused by the may_req_ambiguous_character_width()
                > >> > function added by the above patch (859).
                > >> >
                > >> > When I set the 'ambwidth' option in the .vimrc file, the screen is properly
                > >> > refreshed and the problem is not seen.
                > >> >
                > >>
                > >> I tried the latest Vim version (7.3.1294). I still see the xterm
                > >> screen refresh problem. The changes made for patch 1288 didn't fix
                > >> this problem.
                > >
                > > I still don't see this problem. You could compile with DEBUG_TERMRESPONSE.
                > > You need to change "if 0" to "if 1" in src/term.c for that. Then look
                > > at the termresponse.log file.
                > >
                > > Also check your $TERM environment variable.
                >
                > I compiled Vim with DEBUG_TERMRESPONSE turned on and collected the
                > below output. The TERM environment variable is set to "xterm".
                >
                > - Yegappan
                >
                >
                > 0.000008: NV setting crv_status to CRV_GET
                > 0.305545: CL Sending U7 request
                > 0.306208: NV Sending CRV
                > 0.307869: Received U7 status
                > 0.308574: set 'ambiwidth', redraw_asap(): 4

                This is where it redraws the screen, apparently your default 'ambiwidth'
                is different.

                > 0.308610: Not enough characters for CRV
                > 0.308749: Received CRV
                > 0.308775: Enable checking for XT codes
                > 0.308779: Requesting XT 0: Co
                > 0.308783: Requesting XT 1: ku
                > 0.308786: Requesting XT 2: kd
                > 0.308789: Requesting XT 3: kr
                > 0.308792: Requesting XT 4: kl
                > 0.308796: Requesting XT 5: #2
                > 0.308799: Requesting XT 6: #4
                > 0.308801: Requesting XT 7: %i
                > 0.308804: Requesting XT 8: *7
                > 0.308808: Requesting XT 9: k1
                > 0.309938: Received XT 0: Co
                > 0.313354: Received t_Co, redraw_asap(): 4

                And this is where it redraws the screen because t_Co changes value.

                What follows is likely irrelevant, and then you start typing.
                I don't really see a reason why typing CTRL-G and then ":e" would have
                any problems. For me as soon as I type ":" the message from CTRL-G is
                erased, as expected.


                --
                If "R" is Reverse, how come "D" is FORWARD?

                /// Bram Moolenaar -- Bram@... -- http://www.Moolenaar.net \\\
                /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
                \\\ an exciting new programming language -- http://www.Zimbu.org ///
                \\\ help me help AIDS victims -- http://ICCF-Holland.org ///

                --
                --
                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 vim_dev+unsubscribe@....
                For more options, visit https://groups.google.com/groups/opt_out.
              Your message has been successfully submitted and would be delivered to recipients shortly.