summaryrefslogtreecommitdiffstats
path: root/src/proto/buffer.pro
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2018-12-21 15:17:36 +0100
committerBram Moolenaar <Bram@vim.org>2018-12-21 15:17:36 +0100
commit162b71479bd4dcdb3a2ef9198a1444f6f99e6843 (patch)
treeedd67e40cafeff24ad1631f9035ecc132e73b22b /src/proto/buffer.pro
parent48f377a476e4a3312aa0e3535aba170484b59483 (diff)
patch 8.1.0614: placing signs can be complicatedv8.1.0614
Problem: Placing signs can be complicated. Solution: Add functions for defining and placing signs. Introduce a group name to avoid different plugins using the same signs. (Yegappan Lakshmanan, closes #3652)
Diffstat (limited to 'src/proto/buffer.pro')
-rw-r--r--src/proto/buffer.pro17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/proto/buffer.pro b/src/proto/buffer.pro
index 131ac829f3..0a7a616f36 100644
--- a/src/proto/buffer.pro
+++ b/src/proto/buffer.pro
@@ -69,17 +69,22 @@ char_u *buf_spname(buf_T *buf);
void switch_to_win_for_buf(buf_T *buf, win_T **save_curwinp, tabpage_T **save_curtabp, bufref_T *save_curbuf);
void restore_win_for_buf(win_T *save_curwin, tabpage_T *save_curtab, bufref_T *save_curbuf);
int find_win_for_buf(buf_T *buf, win_T **wp, tabpage_T **tp);
-void buf_addsign(buf_T *buf, int id, linenr_T lnum, int typenr);
-linenr_T buf_change_sign_type(buf_T *buf, int markId, int typenr);
+void buf_addsign(buf_T *buf, int id, char_u *group, int prio, linenr_T lnum, int typenr);
+linenr_T buf_change_sign_type(buf_T *buf, int markId, char_u *group, int typenr);
int buf_getsigntype(buf_T *buf, linenr_T lnum, int type);
-linenr_T buf_delsign(buf_T *buf, int id);
-int buf_findsign(buf_T *buf, int id);
+linenr_T buf_delsign(buf_T *buf, int id, char_u *group);
+int buf_findsign(buf_T *buf, int id, char_u *group);
+#ifdef FEAT_SIGNS
+int sign_in_group(signlist_T *sign, char_u *group);
+dict_T *sign_get_info(signlist_T *sign);
+signlist_T *buf_getsign_with_id(buf_T *buf, int id, char_u *group);
+#endif
int buf_findsign_id(buf_T *buf, linenr_T lnum);
int buf_findsigntype_id(buf_T *buf, linenr_T lnum, int typenr);
int buf_signcount(buf_T *buf, linenr_T lnum);
-void buf_delete_signs(buf_T *buf);
+void buf_delete_signs(buf_T *buf, char_u *group);
void buf_delete_all_signs(void);
-void sign_list_placed(buf_T *rbuf);
+void sign_list_placed(buf_T *rbuf, char_u *sign_group);
void sign_mark_adjust(linenr_T line1, linenr_T line2, long amount, long amount_after);
void set_buflisted(int on);
int buf_contents_changed(buf_T *buf);