Eu acho que o que você está se referindo é chamado de sinal pelo vim.
Adicionar um sinal parece ser um processo de duas etapas. Primeiro, você define como é a aparência e depois a coloca onde deseja.
A sintaxe básica para definir um sinal é:
:sign define {name} {argument}...
Onde {argument}...
está uma série de argumentos que você pode escolher:
icon=
caminho completo para um ícone
linehl=
grupo de destaque para toda a linha na qual você colocará o sinal
text=
texto a ser exibido se não houver ícone ou você executar o vim em um terminal
texthl=
grupo de destaque para text
Para colocar seu sinal, depois de defini-lo:
:sign place {id} line={lnum} name={name} file={fname}
{id}
é um número arbitrário que permitirá que você manipule o sinal posteriormente
{lnum}
e {fname}
são, respectivamente, o número da linha e o arquivo no qual você deseja colocar seu sinal
{name}
é o nome do seu signo
Para listar seus sinais e ver seus atributos:
:sign list
Para remover um sinal:
:sign unplace {id} file={fname}
Exemplo de uso
:sign define mysign text=>> texthl=Search
... define o sinal mysign
, que exibirá o texto >>
com as cores do grupo de destaque Search
.
Agora, supondo que você esteja editando o arquivo /tmp/foo
, você pode colocar seu sinal na 10ª linha com:
:sign place 9999 line=10 name=mysign file=/tmp/foo
Aqui o id 9999 foi escolhido.
Por fim, para remover o sinal que você acabou de colocar:
:sign unplace 9999 file=/tmp/foo
Existem muitas outras maneiras de definir, colocar e substituir um sinal.
Para mais informações, veja:
:help sign-commands
:help :sign-define
:help :sign-undefine
:help :sign-list
:help :sign-place
:help :sign-unplace
:help :sign-place-list
:help :sign-jump