Posso aggiungere un delimitatore di paragrafo personalizzato?


8

I paragrafi sono delimitati da righe vuote, sia in vim che in tex, ma a volte vorrei che vim trattasse un'entità come un paragrafo e non tex. Posso, ad esempio, creare linee di vim treat contenenti solo un "%" come delimitatore di paragrafo?


1
Vedi la mia risposta a una domanda simile qui: vi.stackexchange.com/a/6043/4932 controlla anche questo plug-in: github.com/vim-scripts/Improved-paragraph-motion
fruglemonkey

1
Il plugin sembra molto interessante, ma ho riscontrato un errore durante il caricamento:Error detected while processing /Users/lawrence/.vim/plugged/Improved-paragraph-motion/plugin/ipmotion.vim: line 50: E492: Not an editor command: ^M line 51: E15: Invalid expression: exists('g:loaded_ipmotion')^M line 145: E171: Missing :endif
Toothrot,

1
@fruglemonkey, per quanto posso capire l'errore era nel plugin. i messaggi di errore sono andati via dopo :set ff=unix.
Toothrot,

2
Il plugin ha effetto solo su} e {movimenti, non su oggetti di testo.
Toothrot,

1
Sì, ma in caso contrario puoi creare mappature che lo faranno comportare "come" un oggetto di testo. Perché vuoi un delimitatore di paragrafo personalizzato? Quale azione vuoi eseguire che richiederebbe uno?
fruglemonkey,

Risposte:


2

Non si può fare in modo nativo %un delimitatore pagraph, come paragrafo macro sono macro nroff (un punto, due personaggi: .xx)

Tuttavia, puoi aggiungere .%%(o qualsiasi altra combinazione desiderata) come delimitatore di paragrafo aggiungendolo e fai l' paragraphsopzione:

:set paragraphs=IPLPPPQPP\ TPHPLIPpLpItpplpipbp%%

Vedi :help paragraph::

A paragraph begins after each empty line, and also at each of a set of
paragraph macros, specified by the pairs of characters in the 'paragraphs'
option.  The default is "IPLPPPQPP TPHPLIPpLpItpplpipbp", which corresponds to
the macros ".IP", ".LP", etc.  (These are nroff macros, so the dot must be in
the first column).  A section boundary is also a paragraph boundary.
Note that a blank line (only containing white space) is NOT a paragraph
boundary.
Also note that this does not include a '{' or '}' in the first column.  When
the '{' flag is in 'cpoptions' then '{' in the first column is used as a
paragraph boundary posix.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.