C'è un modo per forzare Xcode a tagliare gli spazi vuoti finali quando salvo il file?
Sto usando la versione 3.1.3 se è importante.
C'è un modo per forzare Xcode a tagliare gli spazi vuoti finali quando salvo il file?
Sto usando la versione 3.1.3 se è importante.
Risposte:
Puoi creare uno script e associarlo a una scorciatoia da tastiera:
Quindi inserisci il seguente script:
#!/usr/bin/perl
while (<>) {
s/\s+$//;
print "$_\n";
}
A partire da Xcode 4.4 gli spazi bianchi verranno tagliati automaticamente per impostazione predefinita, a meno che la linea non sia tutta spazi bianchi. Puoi anche attivare Including whitespace-only lines
per risolvere questo problema, che non è attivo per impostazione predefinita.
Vai a Xcode > Preferences > Text Editing > While editing
ctrl-i
su tutti i file esistenti si prende cura degli spazi
Sto utilizzando il plug-in Xcode di Google Toolbox per Mac , aggiunge un parametro "Correggi spazi bianchi al salvataggio" che taglia gli spazi vuoti finali al salvataggio. Mi è mancato molto da emacs.
~/Library/Application Support/Developer/Shared/Xcode/Plug-ins
(secondo le istruzioni di Google) ho dovuto inserirlo /Applications/Xcode.app/Contents/PlugIns
e riavviare Xcode.
Per Xcode 8, ho installato il plug-in swimat Xcode, per la formattazione del codice Swift, che ha rimosso tutti gli spazi finali e le linee di soli spazi bianchi.
Installa tramite homebrew-cask:
brew cask install swimat
Scarica direttamente l'app:
https://github.com/Jintin/Swimat/releases/download/v1.3.5/Swimat.zip
Clona extension
ramo e archivia su app Mac.
Una volta installato, puoi eseguire Swimat in Xcode tramite Editor -> Swimat -> Format
.
Questo non è possibile in Xcode 3.2
Modificare:
Ho risposto a questa domanda così brevemente perché non c'è modo di farlo correttamente .
Ovviamente, poiché è un software, puoi fare qualsiasi cosa: a partire da hack di Input Manager o altri modi di iniezione di codice nell'intercettazione della tastiera a livello di sistema, puoi modificare il tuo sistema locale per fare qualsiasi cosa in qualsiasi momento. È possibile impostare un'azione della cartella Applescript (arrgh) o utilizzare un demone di lancio e la funzione FSEvents per guardare i file del codice sorgente.
Puoi anche aggiungere un paio di script a Xcode (script utente nel menu, fasi di script nei target, azioni personalizzate nell'organizzatore, c'è anche la possibilità molto sconosciuta uno script di avvio), ma tutte queste soluzioni sono difettose, poiché coinvolge il configurazione utente o personalizzata sulla macchina dell'utente.
Non sono a conoscenza di una soluzione che funzioni semplicemente dopo aver verificato un progetto da SCM. Credo che sia necessario questo e altri script di personalizzazione simili, quindi ho segnalato un bug (radar 7203835, "Funzionalità: più trigger di script utente nel flusso di lavoro Xcode"). Non ho ancora ricevuto alcun feedback.
Ecco il testo completo della voce radar:
Sarebbe utile avere più posti per eseguire gli script in Xcode.
Esempi:
Script di
pre-compilazione Gli script di pre-compilazione possono essere utilizzati per creare prerequisiti come file * .xcconfig o intestazioni config.h. Ciò non è possibile con "Esegui fasi di creazione dello script", poiché il rilevamento delle dipendenze viene eseguito prima che venga attivata qualsiasi fase di creazione.Script di post compilazione
Simile al precedente, ma in esecuzione al termine della compilazione (inclusa la firma del codice, ecc.). Utile per imballaggi aggiuntivi, controllo di validità ecc.Script di commit pre / post SCM.
Per verificare l'integrità del progetto.Script di salvataggio file pre / post.
Per controllare / modificare un file prima del salvataggio. Ad esempio, esegui abbellimenti codyAzioni di progetto personalizzate.
Sono consapevole della capacità dell'organizzatore di definire azioni arbitrarie. Ma questa è una funzionalità per utente (non fa parte del progetto). Vorrei definire azioni come build o clean che vengono visualizzate nel menu build e che fanno parte di un progetto.
Vedi qui per Xcode4: http://www.wezm.net/technical/2011/08/strip-trailing-whitespace-xcode-4/
Fantastico, Google Toolbox per Mac ora aggiunge un'opzione "ritaglia spazi bianchi" per Xcode4.
http://code.google.com/p/google-toolbox-for-mac/downloads/list
Grazie Google!
Il modo migliore e più semplice senza usare script, hack e molto altro. Vai a Trova e sostituisci Il modo migliore e facile senza usare script, hack e molto altro. Basta andare su Trova e sostituisci e premere "alt / opzione + spazio" e premere il pulsante "spazio" nella barra di sostituzione e quindi fare clic su sostituisci tutto. Sostituirà gli spazi bianchi con spazi normali e l'avviso / errore scomparirà !!