2015-04-10 35 views
14

Io uso Sublime Text 3 plug-in chiamato AlignTab per allineare il mio codice come questo:Come allineare i testi in Sublime Text 3?

Version : 1.4.1 
Author : Ken Wheeler 
Website : http://kenwheeler.github.io 
Docs : http://kenwheeler.github.io/slick 
Repo : http://github.com/kenwheeler/slick 
Issues : http://github.com/kenwheeler/slick/issues 

Ora, voglio i miei testi di rimanere accanto al colon in questo modo:

Version: 1.4.1 
    Author: Ken Wheeler 
Website: http://kenwheeler.github.io 
    Docs: http://kenwheeler.github.io/slick 
    Repo: http://github.com/kenwheeler/slick 
    Issues: http://github.com/kenwheeler/slick/issues 

Come lo realizzo?

+4

Non capisco, ragazzi. In che modo questa domanda e in che modo le risposte sono considerate o spam? – t1ser

+0

@ t1. L'ho modificato in modo che rispetti le linee guida, ma non riesco ad avviare un voto di riapertura fino a 3000 punti –

risposta

14

È possibile farlo con AlignTab, non è necessario un plug-in diverso. Hai solo bisogno di usare the more advanced regex functionality as described on the GitHub page.

Portare il Command Palette (Ctrl + Maiusc + P su Windows o cmd + spostamento + P su Mac), digitare "AlignTab", premere invio e digitare questo e premere invio:

:/r0clf1

Props per @Hank per includere l'opzione 0 spazi, non ha nemmeno reali ze non voleva lo spazio.

Spiegazione:

  • il : trova il colon
  • il / dice che va bene adesso ecco che arrivano alcune argomentazioni su ciò che voglio che tu faccia con i due punti
  • il r significa destro giustifica la prima colonna
  • il 0 significa 0 spazi dopo la colonna di destra
  • i mezzi c centro della colonna centrale (che è solo il colon, in modo che non fa nulla)
  • il l significa sinistra-giustificare la colonna di destra
  • l'f1 significa farlo solo per la prima partita in la linea
+0

Come procederesti a salvarlo nelle preferenze di AlignTab in modo che possa accedervi semplicemente dal menu di scelta rapida? –

5

Il AlignTab docs o gli esempi collegati dispongono di informazioni sufficienti per coprire ciò che è necessario.

Se si evidenzia il testo originale, quindi Cmd + Maiusc + P (o Ctrl Maiusc P su Windows) e si accede alla modalità Anteprima live AlignTab, è possibile immettere un'espressione regolare e utilizzare la sintassi speciale rlc.

La sintassi è:

\s+:/r0c1l 

L'espressione regolare è \ s + (maggiore di 1 spazi) al primo: e poi R0 (Allinea a destra, 0 spazi), C1 (segno centrale con 1 imbottitura per il a destra), quindi l (sinistra allinea il testo rimanente). Non c'è bisogno di un 'f1' alla fine dell'espressione poiché la regex corrisponde agli spazi iniziali prima dei primi due punti (secondo il tuo esempio).

Se si aveva di recente testo scritto senza la pre-formattazione che hai già fatto, come:

Version: 1.4.1 
Author: Ken Wheeler 
Website: http://kenwheeler.github.io 
Docs: http://kenwheeler.github.io/slick 
Repo: http://github.com/kenwheeler/slick 
Issues: http://github.com/kenwheeler/slick/issues 

Poi per convertire nel formato desiderato di seguito, sarà:

:/r0c1lf1 

Convertito di seguito:

Version: 1.4.1 
Author: Ken Wheeler 
Website: http://kenwheeler.github.io 
    Docs: http://kenwheeler.github.io/slick 
    Repo: http://github.com/kenwheeler/slick 
Issues: http://github.com/kenwheeler/slick/issues 

Questo risultato è in realtà migliore della domanda originale t ext, perché non c'è spazio principale.

P.S. Ho trovato che gli esempi di Tablular del documento AlignTab sono leggermente più utili, anche se non rappresentano la reale implementazione di AlignTab.