Commit Graph

51 Commits

Author SHA1 Message Date
Dundar Göc
2793fcae0a vim-patch:8.2.4241: some type casts are redundant
Problem:    Some type casts are redundant.
Solution:   Remove the type casts. (closes vim/vim#9643)
420fabcd4f

This is not a literal port but an equivalent one.
2022-01-30 19:16:51 +01:00
James McCoy
29141fc66a vim-patch:8.2.3874: cannot highlight the number column for a sign
Problem:    Cannot highlight the number column for a sign.
Solution:   Add the "numhl" argument. (James McCoy, closes vim/vim#9381)
a80aad7174
2021-12-22 15:03:32 -05:00
James McCoy
5fda23c307 vim-patch:8.2.3748: giving an error for an empty sign argument breaks a plugin
Problem:    Giving an error for an empty sign argument breaks a plugin.
Solution:   Do not give an error.
e5710a02cb
2021-12-08 21:47:58 -05:00
James McCoy
4453d4c9f1 vim-patch:8.2.3747: cannot remove highlight from an existing sign
Problem:    Cannot remove highlight from an existing sign. (James McCoy)
Solution:   Only reject empty argument for a new sign.
0bac5fc5e1
2021-12-08 21:47:58 -05:00
James McCoy
d0b3efb7db vim-patch:8.2.3743: ":sign" can add a highlight group without a name
Problem:    ":sign" can add a highlight group without a name.
Solution:   Give an error if the group name is missing. (closes vim/vim#9280)
5e18ccc60b
2021-12-08 21:47:58 -05:00
James McCoy
e8f9262125 vim-patch:8.2.3664: cannot adjust sign highlighting for 'cursorline'
Problem:    Cannot adjust sign highlighting for 'cursorline'.
Solution:   Add CursorLineSign and CursorLineFold highlight groups.
            (Gregory Anders, closes vim/vim#9201)
e413ea04b7
2021-12-08 21:47:58 -05:00
VVKot
ee99f34438 vim-patch:8.1.1393: unnecessary type casts
Problem:    Unnecessary type casts.
Solution:   Remove type casts from alloc() and lalloc() calls. (Mike Williams)
51e14387f1
2021-11-22 05:44:40 +00:00
dundargoc
725cbe7d41 refactor: saner options for uncrustify (#16204)
* sp_enum_after_assign = force
* sp_brace_typedef = force
* nl_do_brace = remove
* sp_do_brace_open = force
* sp_brace_close_while = force
* sp_before_semi = remove
* sp_before_semi_for = remove
* sp_before_semi_for_empty = remove
* sp_between_semi_for_empty = remove
* sp_after_semi_for_empty = remove
* sp_before_square = remove
* sp_before_squares = remove
* sp_inside_square = remove
* sp_inside_fparens = remove
* sp_inside_fparen = remove
* sp_inside_tparen = remove
* sp_after_tparen_close = remove
* sp_return_paren = force
* pos_bool = lead
* sp_pp_concat = remove
* sp_pp_stringify = remove
* fixup: disable formatting for the INIT section
2021-11-19 14:21:53 -05:00
Björn Linse
0039ba04b0 refactor(multibyte): eliminate mb_ptr2len alias for utfc_ptr2len 2021-11-14 12:49:12 +01:00
James McCoy
e6ff154be6 vim-patch:8.1.0779: argument for message functions is inconsistent
Problem:    Argument for message functions is inconsistent.
Solution:   Make first argument to msg() "char *".
32526b3c18
2021-11-01 06:41:29 -04:00
James McCoy
efa924f66b vim-patch:8.1.0743: giving error messages is not flexible
Problem:    Giving error messages is not flexible.
Solution:   Add semsg().  Change argument from "char_u *" to "char *", also
            for msg() and get rid of most MSG macros. (Ozaki Kiichi, closes
            vim/vim#3302)  Also make emsg() accept a "char *" argument.  Get rid of
            an enormous number of type casts.
f9e3e09fdc
2021-11-01 06:41:28 -04:00
dundargoc
a68faed02d refactor: saner options for uncrustify #16196
* refactor: general good option changes
  sp_deref = remove
  sp_not = remove
  sp_inv = remove
  sp_inside_paren_cast = remove
  mod_remove_duplicate_include = true
  sp_after_semi = add
  sp_after_semi_for = force
  sp_sizeof_paren = remove
  nl_return_expr = remove
  nl_else_brace = remove
  nl_else_if = remove
* refactor: mod_remove_extra_semicolon = true
* refactor: nl_max = 3
* refactor: sp_bool = force
* refactor: sp_compare = force
* refactor: sp_inside_paren = remove
* refactor: sp_paren_paren = remove
* refactor: sp_inside_sparen = remove
* refactor: sp_before_sparen = force
* refactor: sp_sign = remove
* refactor: sp_addr = remove
* refactor: sp_member = remove
* refactor: nl_struct_brace = remove
* refactor: nl_before_if_closing_paren = remove
* refactor: nl_fdef_brace = force
* refactor: sp_paren_comma = force
* refactor: mod_full_brace_do = add
2021-10-31 17:03:08 -07:00
dundargoc
649b3160a1 refactor: reduce number of unique char casts (#15995) 2021-10-12 17:52:54 +02:00
dundargoc
2f9b9e61d7 refactor: format with uncrustify #15778
* fixup: force exactly one whitespace between type and variable
2021-09-25 17:16:04 -07:00
Dundar Göc
11dcf15682 refactor: replace TRUE/FALSE macros with C99 true/false 2021-07-25 21:51:50 +02:00
dundargoc
4547137aaf chore: use codespell to spell check #15016 2021-07-07 15:28:44 -07:00
Lewis Russell
65b0918c24 signs: Change b_signcols_max -> b_signcols_valid
b_signcols_max isn't used to store the max value, it is use to
invalidate b_signcols.
2021-07-04 21:50:27 +01:00
Jan Edmund Lazo
5115bc3f4f sign: pvs/v547
vim_strsave() returns nonnull.
2021-06-05 12:49:27 -04:00
statiolake
b227cedf82 signs: fix overflow during adjustment on Windows (#14472)
On Windows, `new_lnum + MAXLNUM` causes overflow and as a result the
line number of that sign becomes invalid negative number. This occurs
when the `set signcolumn=yes`, in other words `signcolumn` is not `auto`
and the sign column is less than 2 columns.

The related change was made in the commit
f2ed7605da. Originally the above addition
is only executed if `amount != MAXLNUM`, so reintroducing this check
fixes the bug and will hardly produces a new bug.

Fixes https://github.com/neovim/neovim/issues/14460
2021-05-02 00:35:52 +02:00
Dan Aloni
f2ed7605da Handle 'orphaned signs' on line deletion for signcolumn >= 2 2021-04-17 10:11:17 +03:00
Lewis Russell
9fbeaf7771 vim-patch:8.1.2205: sign entry structure has confusing name (#14289)
Problem:    Sign entry structure has confusing name.
Solution:   Rename signlist_T to sign_entry_T and prefix se_ to the fields.
2021-04-05 06:16:44 -04:00
Lewis Russell
d82b599ea5 vim-patch:8.1.1899: sign_place() does not work as documented
Problem:    sign_place() does not work as documented.
Solution:   Make accept line numbers like line(). (Yegappan Lakshmanan,
            closes #4848)
2021-04-03 23:56:55 +01:00
Lewis Russell
5257bce979 vim-patch:8.1.1682: placing a larger number of ...
...signs is slow

Problem:    Placing a larger number of signs is slow.
Solution:   Add functions for dealing with a list of signs. (Yegappan
            Lakshmanan, closes #4636)
2021-04-03 23:56:54 +01:00
Lewis Russell
0b7e5eeb62 vim-patch:8.1.1631: displaying signs is inefficient
+ support for neovim's dynamic width signcolumn

Problem:    Displaying signs is inefficient.
Solution:   Avoid making multiple calls to get information about a placed
            sign. (Yegappan Lakshmanan, closes #4586)
2021-04-03 23:39:56 +01:00
Lukas Reineke
88ae03bcdb feat(sign):Allow signs to be 0 width (#13290)
Adds support for signs to be 0 cells wide. If all signs of the same
group have no width, the signcolumn will not be rendered for that group.
2020-12-24 17:33:52 +01:00
erw7
bfe94d0a08 vim-patch:8.1.1623: display wrong with signs in narrow number column
Problem:    Display wrong with signs in narrow number column.
Solution:   Increase the numbercolumn width if needed. (Yegappan Lakshmanan,
            closes vim/vim#4606)
e4b407f536
2020-07-23 10:29:36 +09:00
Jan Edmund Lazo
4ccbc8d56e vim-patch:8.2.0108: when sign text is changed a manual redraw is needed
Problem:    When sign text is changed a manual redraw is needed. (Pontus
            Lietzler)
Solution:   Redraw automatically. (closes vim/vim#5455)
bf0acff012
2020-03-01 20:02:10 -05:00
Jan Edmund Lazo
c40bb2de7a vim-patch:8.1.0939: no completion for sign group names
Problem:    No completion for sign group names.
Solution:   Add completion for sign group names and buffer names. (Yegappan
            Lakshmanan, closes vim/vim#3980)
3678f65d43
2020-03-01 20:02:10 -05:00
Jan Edmund Lazo
b376bb49b5 vim-patch:8.1.1552: cursor position is wrong after sign column changes
Problem:    Cursor position is wrong after sign column appears or disappears.
            (Yegappan Lakshmanan)
Solution:   Call changed_line_abv_curs() instead of changed_cline_bef_curs().
f85e40afc2
2020-03-01 20:02:10 -05:00
Jan Edmund Lazo
c6481f70c2 vim-patch:8.1.1489: sign order wrong when priority was changed
Problem:    Sign order wrong when priority was changed.
Solution:   Reorder signs when priority is changed. (Yegappan Lakshmanan,
            closes vim/vim#4502)
64416127fc
2020-03-01 20:02:09 -05:00
Jan Edmund Lazo
1caa85b677 vim-patch:8.1.1466: not updating priority on existing sign
Problem:    Not updating priority on existing sign.
Solution:   Set the sign priority.  Add a test. (Yegappan Lakshmanan)
58a7f87c86
2020-03-01 20:02:09 -05:00
Justin M. Keyes
3344cffe7b getdigits: introduce strict, def parameters
Problem:
During a refactor long ago, we changed the `getdigits_*` familiy of
functions to abort on overflow.  But this is often wrong, because many
of these codepaths are handling user input.

Solution:
Decide at each call-site whether to use "strict" mode.

fix #5555
2019-09-13 19:29:25 -07:00
Ihor Antonov
00d915d021 PVS/V547: expression is always true/false #10640
Functions marked with FUNC_ATTR_NONNULL_RET do not return NULL.
Remove redundant checks.
2019-07-29 00:11:54 +02:00
Jan Edmund Lazo
06547cdfc0 sign: REMOVE FEAT_SIGN_ICONS, dead code #10595 2019-07-24 12:17:53 +02:00
Bartosz Miera
06826139e1 PVS/V547: dead code #10459 2019-07-13 12:30:52 +02:00
Andrej Zieger
95ece7d046 signs: fix crash in buf_addsign #10091
buf_signcols sorting breaks signlist structure.

Remove sorting in buf_signcols, because signlist is already kept
sorted and it did not correctly update the double linked list.

Fixes #10078
2019-06-01 12:03:59 +02:00
Andrej Zieger
80f40f0203 lint 2019-05-26 19:32:32 +02:00
Andrej Zieger
897431c486 Fix out of bounds read in sign_group_ref 2019-05-26 19:32:32 +02:00
Andrej Zieger
8df9213d1b Resolved compile warnings & fixed lot of style related to sign api 2019-05-26 19:32:32 +02:00
Andrej Zieger
51563b70d7 Allow multiple signs of same type in one line (matching vim behaviour)
This partly rolls back 36762a00a8,
but it matches vim behaviour (covered with recent tests - oldtest).
2019-05-26 19:32:32 +02:00
Andrej Zieger
7d43943e4e Fixed ordering of signs to align vim and neovim behaviour 2019-05-26 19:32:32 +02:00
Andrej Zieger
f2341164c6 Changed sign_mark_adjust behaviour to match vim
Vim does not delete/free signs if they are placed on lines which get
deleted. In case of undo it does make a difference as in vim the sign
will be still available.
2019-05-26 19:32:32 +02:00
Andrej Zieger
93e18e698e vim-patch:8.1.0772: the sign_define_by_name() function is too long
Problem:    The sign_define_by_name() function is too long.
Solution:   Split it into smaller functions. (Yegappan Lakshmanan,
            closes vim/vim#3819)
0314236aab
2019-05-26 19:32:32 +02:00
Andrej Zieger
fb4cf05e44 vim-patch:8.1.0767: when deleting lines at the bottom signs are misplaced
Problem:    When deleting lines at the bottom signs are misplaced.
Solution:   Properly update the line number of signs at the end of a buffer
            after a delete/undo operation. (Yegappan Lakshmanan, closes vim/vim#3798)
c771bf9016
2019-05-26 19:32:32 +02:00
Andrej Zieger
c5f3dbab35 vim-patch:8.1.0750: when the last sign is deleted the signcolumn may remain
Problem:    When the last sign is deleted the signcolumn may not be removed
            even though 'signcolumn' is "auto".
Solution:   When deleting the last sign redraw the buffer. (Dominique Pelle,
            closes vim/vim#3803, closes vim/vim#3804)
8144acbec3
2019-05-26 19:32:32 +02:00
Andrej Zieger
fa07cc215d vim-patch:8.1.0717: there is no function for the ":sign jump" command
Problem:    There is no function for the ":sign jump" command.
Solution:   Add the sign_jump() function. (Yegappan Lakshmanan, closes vim/vim#3780)
6b7b7190aa
2019-05-26 19:32:32 +02:00
Andrej Zieger
e09f3baed8 vim-patch:8.1.0709: windows are updated for every added/deleted sign
Problem:    Windows are updated for every added/deleted sign.
Solution:   Do not call update_debug_sign().  Only redraw when the line with
            the sign is visible.  (idea from neovim vim/vim#9479)
27a472c32e
2019-05-26 19:32:32 +02:00
Andrej Zieger
f43900f686 vim-patch:8.1.0702: ":sign place" only uses the current buffer
Problem:    ":sign place" only uses the current buffer.
Solution:   List signs for all buffers when there is no buffer argument.
            Fix error message for invalid buffer name in sign_place().
            (Yegappan Lakshmanan, closes vim/vim#3774)
b589f95b38
2019-05-26 19:32:32 +02:00
Andrej Zieger
35fbb4e1ca vim-patch:8.1.0701: sign message not translated and inconsistent spacing
Problem:    Sign message not translated and inconsistent spacing.
Solution:   Add _() for translation.  Add a space. (Ken Takata)  Also use
            MSG_BUF_LEN instead of BUFSIZ.
d730c8e297
2019-05-26 19:32:32 +02:00
Andrej Zieger
e70609cfac vim-patch:8.1.0697: ":sign place" requires the buffer argument
Problem:    ":sign place" requires the buffer argument.
Solution:   Make the argument optional.  Also update the help and clean up the
            sign test. (Yegappan Lakshmanan, closes vim/vim#3767)
b328cca254
2019-05-26 19:32:32 +02:00