Come rimuovere gli spazi bianchi in eccesso aggiunti al codice dal programma FTP?

StackOverflow https://stackoverflow.com/questions/312688

  •  10-07-2019
  •  | 
  •  

Domanda

Questo succede ripetutamente ed è molto fastidioso. Carico un po 'di codice PHP sul server di un client. Passano alcune settimane. Mi chiedono di apportare una modifica e io scarico nuovamente il codice poiché hanno apportato alcune modifiche. Tuttavia, il mio codice che era pulito e ordinato l'ultima volta che l'ho guardato ora ha aggiunto righe extra di spazi bianchi ovunque. Quindi ora dove avevo due linee di spazio tra un po 'di codice, ora ne ha 3. Dove avevo un sacco di linee che si univano perché facevano parte dello stesso per loop o simili, ora sono tutte sparse e non c'è modo per distinguerli.

Esiste un programma / utilità per risolvere questo problema?

È stato utile?

Soluzione

Carica in modalità binaria anziché ascii. La modalità Ascii sta cambiando tutti i tuoi avanzamenti di riga (carattere di fine riga unix) in ritorni a capo + avanzamenti di riga (caratteri di fine riga di Windows).

Altri suggerimenti

Potresti anche avere problemi con l'altro editor usando le schede quando usi gli spazi (stai usando gli spazi, giusto?). Ho riscontrato problemi simili durante la condivisione di sorgenti tra sviluppatori su Linux / OSX e Windows.

Scommetto che ciò è causato dai sistemi che provano a convertire i file di testo creati in un sistema Windows in file utilizzati da un sistema Unix / Linux (e viceversa).

Windows utilizza sia un ritorno a capo sia un avanzamento riga e penso che Unix utilizzi solo un avanzamento riga (o era un ritorno a capo).

Ho usato Ultra Edit come il mio editor di testo principale (non che Emacs e vi non governino: o) e ha una modalità DOS e una modalità Unix proprio per questo tipo di cose.

Forza il tuo client a trasferire tutti i file in modalità binaria. Questo è utile anche quando hai testo unicode nei tuoi file, non sai mai quali ipotesi potrebbe essere fatta in modalità testo!

Direi che stai sviluppando su un sistema Unix / Max, ma il cliente è in esecuzione su un sistema Windows (o viceversa). Immagino anche che tu stia caricando / scaricando i tuoi file in modalità binaria. L'editor di Windows sta probabilmente convertendo Unix LF in una coppia LF / CR, che il tuo editor considera come due nuove righe. Se carichi e scarichi in modalità ASCII, i file verranno convertiti automaticamente tra i due formati.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top