Contesto
Uso vifm
il mio file manager (è fuori tema qui, lo so, ma continua a leggere) che mi permette di modificare i nomi dei file all'interno di un vim
buffer.
Un problema che mi ha infastidito sono i file numerati in cui voglio mantenere gli zeri iniziali (ad es movie0001.webm
.). Non riesco a ottenere VIM per formattarli correttamente.
La domanda
Ho un vim
buffer contenente:
mov70.webm
mov71.webm
mov72.webm
mov73.webm
mov74.webm
mov75.webm
mov76.webm
mov77.webm
mov78.webm
mov79.webm
E il mio cursore inizia m
nella prima riga. Quindi faccio VG
per contrassegnare tutto e 69<C-x>
trasformarlo in:
mov1.webm
mov2.webm
mov3.webm
mov4.webm
mov5.webm
mov6.webm
mov7.webm
mov8.webm
mov9.webm
mov10.webm
Ma vorrei davvero raggiungere questo invece:
mov01.webm
mov02.webm
mov03.webm
mov04.webm
mov05.webm
mov06.webm
mov07.webm
mov08.webm
mov09.webm
mov10.webm
Quello che ho provato
Il problema con i numeri con zeri iniziali è che vim
li tratteranno come octal
, quindi ho cambiato nrformats
in una stringa vuota:
:set nrformats=
Tuttavia, ciò non ha aiutato. Ho cercato in giro :h nrformats
senza trovare nulla di utile.
:subsitute
+printf