Știu că există o mulțime de posturi despre asta, dar nu puteam´t face să funcționeze.
Eu folosesc file pentru codificare. Există un mod de a converti întotdeauna spații pentru file? I. e. pe de a deschide și Salva fișiere? Are cineva o idee?
// edit:
Dorința mea este de a face acest lucru automat! -> pentru a deschide, memora sau pe acoperi
Stie cineva cum se face?
am încercat acest:
import sublime, sublime_plugin, os
class ExpandTabsOnSave(sublime_plugin.EventListener):
# Run ST's 'expand_tabs' command when saving a file
def on_pre_save(self, view):
if view.settings().get('expand_tabs_on_save') == 1:
view.window().run_command('expand_tabs')
Aici sunt Setările de utilizator:
{
"auto_complete_selector": "source - comment, meta.tag - punctuation.definition.tag.begin",
"auto_indent": true,
"detect_indentation": true,
"draw_white_space": "all",
"ensure_newline_at_eof_on_save": true,
"expand_tabs_on_save": true,
"font_face": "SourceCodePro-Regular",
"font_size": 10,
"format_on_save": true,
"ignored_packages":
[
"Vintage"
],
"indent_to_bracket": true,
"open_files_in_new_window": false,
"smart_indent": true,
"tab_size": 4,
"translate_tabs_to_spaces": false,
"trim_automatic_white_space": true,
"trim_trailing_white_space_on_save": true,
"use_tab_stops": false,
"word_wrap": false
}
Pe colțul din dreapta-sus al tău Sublim fereastră de Text, ai'll vedea o adâncitură indicator care arată cam așa:
Clic pe ea va deschide un meniu cu opțiuni pentru a ajusta indentare preferințe, și, mai important, pentru a converti spații de file, și vice-versa.
Același meniu este listat sub View -> Indentare
.
În partea de jos a Sublimă fereastră,'ll vedea ceva, reprezentând fila/spațiu setare.
Te'll primi apoi un dropdown cu o grămadă de opțiuni. Opțiunile pe care le pasă sunt:
Aplica setarea dorită pentru întregul document.
Sper că acest lucru vă ajută.
După cum probabil știți deja, puteți personaliza identatie setări în Preferințele.sublim-settings`, de exemplu:
"detect_indentation": true,
"tab_size": 4,
"translate_tabs_to_spaces": false
Aceasta va seta editor pentru a folosi tab-uri, care sunt 4 spatii largi și va suprascrie comportamentul prestabilit care provoacă Sublim pentru a se potrivi identatie de orice fișier're de editare. Cu aceste setări, re-crestarea fișierul va provoca orice spații să fie înlocuit cu file.
În măsura în mod automat re-crestarea când deschideți un fișier, care'nu e chiar atât de ușor (dar, probabil, e't o idee mare de spațiu modificări a face ravagii pe fișier diff). Ce ar putea fi un mai bun curs de acțiune: puteți harta o comandă rapidă pentru re-identatie și de a declanșa doar că, atunci când deschideți un fișier nou care are nevoie de fixare.
Aici este o soluție care va converti automat la filele ori de câte ori deschideți un fișier.
A crea acest fișier: .../Packages/User/on_file_load.py
:
import sublime
import sublime_plugin
class OnFileLoadEventListener(sublime_plugin.EventListener):
def on_load_async(self, view):
view.run_command("unexpand_tabs")
NOTĂ. Ea determină ca fișierul să fie în nesalvată stat după deschiderea acesteia, chiar dacă nu real space-pentru a-tab de conversie a avut loc... poate unii poate ajuta cu o solutie pentru asta...
Pentru a converti automat spații pentru file pe save, se adaugă următoarele Python script pentru un nou create subfolder numit "UnexpandTabsOnSave" în "$SUBLIME_HOME$\Pachete de\":
import sublime, sublime_plugin, os
class ConvertSpacesToTabsOnSave( sublime_plugin.EventListener ):
# Run Sublime's 'unexpand_tabs' command when saving any file
def on_pre_save( self, view ):
view.window().run_command( 'unexpand_tabs' )
Vă mulțumesc pentru inițiale de resurse.
Puteți face înlocui file cu spații în toate fișierele de proiect prin:
Ctrl+Shif+F
^\O(.*)$
\1
Puteți activat aceste setări prin a merge la meniul Preferences -> Setări și adăugarea de conținut pe setări fișier:
"ensure_newline_at_eof_on_save": adevărat,
"trim_trailing_white_space_on_save": adevărat,
View -> Arată Consola (Ctrl+
)și rulați comanda:
import filetare; threading.Fir( args=(set(),), target=lambda counterset: [ (vezi.run_command( "expand_tabs", {"set_translate_tabs": True} ), print( "Prelucrarea {:>5} de vedere al {:>5}, vizualiza id-ul {} {}".format( len( counterset ) + 1, len( fereastră.opinii() ), vedere.id-ul(), ( "Terminat de conversie!" dacă len( counterset ) > len( fereastră.opinii() ) - 2 altceva "" ) ) ), counterset.adaugă( len( counterset ) ) ) pentru a vizualiza în fereastra.opinii() ] ).start()`File -> Salvați Toate