Qualcuno ha idea di come si faccia ad eseguire una sostituzione in vim
solamente all'interno di una selezione a finestra (quella con C^v
per intenderci)?
Con il solito:
:'<,'>s/ /|/g
mi viene sostituito tutto anche all'esterno della selezione.
Ciao
Andrea
ciao,
1. marcare la selezione: vai sulla ultima righa della selezione e fai
premi m x
2. vai alla prima righa: :1,'x s/ff/gg/g
esempio:
1 ff ll
2 oo ss
3 bg gg
4 ff
5
6 io op
7 dgfgfd ff
voi solo sostituire ff in righa 1 e 4:
vai su righa 4: mx
vai su righa 1: :1,'x s/ff/gg/g
konrad
Andrea Antonello wrote:
Grazie della risposta Konrad, ma forse mi sono spiegato male. Il tuo
esempio parl adi righe, mentre io vorrei trattare colonne.
Ho un file di testo formattato in modo arbitrario e non sono in grado di
capire quando mancano dei valori. Ti faccio un esempio dummy:
org agil dxf_1
org eclipse core
org eclipse core
org eclipse core
org eclipse core
org core
org help
org
org eclipse help
org eclipse osgi
org eclipse osgi
org eclipse rcp
org swt
org tomcat_4
org ui
org eclipse ui
org eclipse ui
org eclipse ui
eclipse ui
eclipse ui
eclipse ui
org eclipse ui
org eclipse
org eclipse
org mozilla rhino_1
org apache commons
org eclipse core
Avrei bisogno di renderlo comma-separated, tenendo conto che in alcuni
casi i campi sono vuoti.
Quello che mi piacerebbe fare e selezionare con la box selection una
colonna verticale di un singolo carattere e dire di sostituire al suo
interno lo spazio con la virgola.
Andrea
> Qualcuno ha idea di come si faccia ad eseguire una sostituzione in
> vim solamente all'interno di una selezione a finestra (quella con
> C^v per intenderci)?
>
> Con il solito:
> :'<,'>s/ /|/g
>
> mi viene sostituito tutto anche all'esterno della selezione.
http://vim.wikia.com/wiki/VimTip63
Esattamente questo, grazie mille!
Andrea