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

Re: exists() tests for sign-ids

Expand Messages
  • Ingo Karkat
    ... Wow, terrific. Though it s hard to make the connection between the | sigil and signs, it is consistent and short. This addresses the mentioned question;
    Message 1 of 9 , Jan 26, 2013
      On 26-Jan-13 22:35:22 +0100, Christian Brabandt wrote:

      > Hi Ingo!
      >
      > On Sa, 26 Jan 2013, Ingo Karkat wrote:
      >
      >> On 26-Jan-13 16:34:17 +0100, ZyX wrote:
      >>
      >>>> this patch adds the possibility to query for the existence of sign
      >>>> ids using exists().
      >>>>
      >>>> Current idea is to use exists('#number') to check for the numeric id
      >>>> (and thus it can't be an autocommand).
      >>>
      >>> I don’t like the overloading: exists('#…') is already ambigious*, don’
      >>> t make it more ambigious: it *can* be an autocmd group. I would rather
      >>> suggest “>N” for place ids and reserve “>>name” for defined sign
      >>> names.
      >>>
      >>> * “#abc” can mean “augroup” or “event”, same for “#abc#pattern”. Also
      >>> note that autocmd group name can contain a hash (and even a space
      >>> which prevents using it in :doau). Thus there is no way to check
      >>> whether random autocmd group is defined using “exists()” (“#abc#def”
      >>> is always “#event_or_group#pattern”).
      >
      > ok.
      >>
      >> Yes, this is complex enough already. The sign stuff is lacking good Vimscript
      >> support in general (one needs to resort to capture and parse :sign output with
      >> :redir), as exemplified by this Stack Overflow question:
      >>
      >> http://stackoverflow.com/questions/14502710/query-position-of-sign-in-vim-with-sign-id
      >>
      >> Maybe we should add an entire Vimscript API (i.e. sign...() functions), and
      >> handle this there?!
      >
      > What would be needed?
      >
      > The following patch adds:
      > - exists('|nr')
      > returns true, if sign id nr exists
      > - exists('||name')
      > returns true, if sign name has been defined
      > - line('|nr')
      > returns the line number of sign id nr
      > - getsign('lnum')
      > returns the Sign id at line lnum in the current buffer
      >
      > Anything else would be needed?

      Wow, terrific. Though it's hard to make the connection between the "|" sigil and
      signs, it is consistent and short. This addresses the mentioned question; I
      can't think of anything else (though I haven't used signs that much myself yet).

      Thank you for volunteering your Saturday evening :-)

      -- regards, ingo

      --
      --
      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
    • Christian Brabandt
      Hi Ingo! ... What else can you do, when Dschungelcamp ı is on TV? ;) ıhttp://en.wikipedia.org/wiki/Ich_bin_ein_Star_%E2%80%93_Holt_mich_hier_raus! regards,
      Message 2 of 9 , Jan 26, 2013
        Hi Ingo!

        On Sa, 26 Jan 2013, Ingo Karkat wrote:

        > Thank you for volunteering your Saturday evening :-)

        What else can you do, when "Dschungelcamp"ı is on TV? ;)

        ıhttp://en.wikipedia.org/wiki/Ich_bin_ein_Star_%E2%80%93_Holt_mich_hier_raus!

        regards,
        Christian

        --
        --
        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
      • Christian Brabandt
        Hi, Here is an update. ... - getsign( lnum ) returns a list of all placed sign ids in line lnum in the current buffer -getsign() returns a list of all placed
        Message 3 of 9 , Jan 27, 2013
          Hi,

          Here is an update.

          I wrote:
          > The following patch adds:
          > - exists('|nr')
          > returns true, if sign id nr exists
          > - exists('||name')
          > returns true, if sign name has been defined
          > - line('|nr')
          > returns the line number of sign id nr
          > - getsign('lnum')
          > returns the Sign id at line lnum in the current buffer
          - getsign('lnum')
          returns a list of all placed sign ids in line lnum in the
          current buffer
          -getsign()
          returns a list of all placed sign ids in the current buffer

          Also this patch compiles for non-sign builds (which the previous patch
          did not because of a missing #ifdef).

          regards,
          Christian
          --

          --
          --
          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
        • Bram Moolenaar
          ... Is this superceded by the other patch for sign support? -- The question is: What do you do with your life? The wrong answer is: Become the richest guy in
          Message 4 of 9 , Jan 27, 2013
            Christian Brabandt wrote:

            > Bram,
            > this patch adds the possibility to query for the existence of sign ids
            > using exists().
            >
            > Current idea is to use exists('#number') to check for the numeric id
            > (and thus it can't be an autocommand).

            Is this superceded by the other patch for sign support?

            --
            The question is: What do you do with your life?
            The wrong answer is: Become the richest guy in the graveyard.
            (billionaire and Oracle founder Larry Ellison)

            /// 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
          • Christian Brabandt
            Hi Bram! ... Yes regards, Christian -- Es gibt Frauen, die Darwin falsch verstanden haben: Sie machen aus jedem Mann einen Affen. -- Carola Höhn -- -- You
            Message 5 of 9 , Jan 27, 2013
              Hi Bram!

              On So, 27 Jan 2013, Bram Moolenaar wrote:

              >
              > Christian Brabandt wrote:
              >
              > > Bram,
              > > this patch adds the possibility to query for the existence of sign ids
              > > using exists().
              > >
              > > Current idea is to use exists('#number') to check for the numeric id
              > > (and thus it can't be an autocommand).
              >
              > Is this superceded by the other patch for sign support?

              Yes

              regards,
              Christian
              --
              Es gibt Frauen, die Darwin falsch verstanden haben: Sie machen aus
              jedem Mann einen Affen.
              -- Carola Höhn

              --
              --
              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
            Your message has been successfully submitted and would be delivered to recipients shortly.