]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
patch 9.0.1671: Termdebug: error with more than 99 breakpoints v9.0.1671
authorskywind3000 <skywind3000@163.com>
Wed, 28 Jun 2023 22:27:28 +0000 (23:27 +0100)
committerBram Moolenaar <Bram@vim.org>
Wed, 28 Jun 2023 22:27:28 +0000 (23:27 +0100)
Problem:    Termdebug: error with more than 99 breakpoints.
Solution:   Use a different sign for breakpoint 100 and over. (closes #12589,
            closes #12588)

runtime/doc/terminal.txt
runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
src/version.c

index 7a82fcf185b9030a273cee98a12ee228bafefbea..f03570497d700a9863d372132d6a8166318a575b 100644 (file)
@@ -1,4 +1,4 @@
-*terminal.txt* For Vim version 9.0.  Last change: 2023 Jun 09
+*terminal.txt* For Vim version 9.0.  Last change: 2023 Jun 28
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -1541,6 +1541,20 @@ If there is no g:termdebug_config you can use: >
        let g:termdebug_popup = 0
 
 
+Change default signs ~
+                                                       *termdebug_signs*
+Termdebug uses the last two characters of the breakpoint ID in the
+signcolumn to represent breakpoints. For example, breakpoint ID 133
+will be displayed as `33`.
+
+If you want to customize the breakpoint signs: >
+       let g:termdebug_config['sign'] = '>>'
+If there is no g:terminal_config yet you can use: >
+       let g:termdebug_config = {'sign': '>>'}
+
+After this, breakpoints will be displayed as `>>` in the signcolumn.
+
+
 Window toolbar ~
                                                        *termdebug_winbar*
 By default the Termdebug plugin creates a window toolbar if the mouse is
index b4dccc55035d63126133e686e5d51d9622d5a22b..d053851024d5788acb3932579b42519c808572a0 100644 (file)
@@ -1401,9 +1401,19 @@ func s:CreateBreakpoint(id, subid, enabled)
     else
       let hiName = "debugBreakpoint"
     endif
+    let label = ''
+    if exists('g:termdebug_config')
+      let label = get(g:termdebug_config, 'sign', '')
+    endif
+    if label == ''
+      let label = substitute(nr, '\..*', '', '')
+      if strlen(label) > 2
+       let label = strpart(label, strlen(label) - 2)
+      endif
+    endif
     call sign_define('debugBreakpoint' .. nr,
-                           \ #{text: substitute(nr, '\..*', '', ''),
-                           \ texthl: hiName})
+                               \ #{text: strpart(label, 0, 2), 
+                               \ texthl: hiName})
   endif
 endfunc
 
index bc2b0b502f21f5b34a632bc250d505f39fefdbd5..b21e5a6a86b9971a83e708b56b822c3d348ef877 100644 (file)
@@ -695,6 +695,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1671,
 /**/
     1670,
 /**/