Jak sformatować kod HTML za pomocą Sublime Text 2?
Mam trochę źle sformatowanego kodu HTML, który chciałbym sformatować. Czy istnieje polecenie, które automatycznie przeformatuje kod HTML w Sublime Text 2, aby wyglądał lepiej i był łatwiejszy do odczytania?
15 answers
Nie potrzebujesz żadnych wtyczek, aby to zrobić.
Po prostu zaznacz wszystkie linie (Ctrl a), a następnie z menu wybierz Edytuj → linia → Renifer.
Będzie to działać, jeśli plik zostanie zapisany z rozszerzeniem zawierającym HTML, takim jak .html
lub .php
.
Jeśli robisz to często, mapowanie klucza może okazać się przydatne:
{ "keys": ["ctrl+shift+r"], "command": "reindent" , "args": { "single_line": false } }
Jeśli Twój plik nie jest zapisany (np. właśnie wkleiłeś fragment do nowego okna), możesz ręcznie ustawić język dla wcięć, wybierając menu Widok → Składnia → language of choice
przed wybraniem opcji reindent.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-21 18:56:58
Istnieje pół tuzina sposobów formatowania HTML w Sublime. Przetestowałem każdą z najpopularniejszych wtyczek( Zobacz writeup, który zrobiłem na moim blogu , Aby uzyskać szczegółowe informacje), ale oto szybki przegląd niektórych z najpopularniejszych opcji:
Komenda Reindent
Plusy:
- statki z Sublime, więc nie wymaga instalacji wtyczki
Wady:
- nie usuwa dodatkowych pustych linii
- nie radzi sobie z minifikowanym HTML, liniami z wieloma otwartymi tagi
- nie formatuje poprawnie
<script>
bloków
Tag
Plusy:
- obsługuje ST2/ST3
- usuwa dodatkowe puste linie
- brak zależności binarnych
Wady:
- Dławiki na znacznikach PHP
- nie obsługuje
<script>
bloków poprawnie
HTMLTidy
Plusy:
- obsługuje znaczniki PHP
- kilka ustawień do poprawienia formatowanie
Wady:
- wymaga PHP (wraca do serwisu www)
- tylko ST2
- porzucony?
HTMLBeautify
Plusy:
- obsługuje ST2/ST3
- proste i bez zależności binaray
- Wsparcie dla OS X, Win i Linux
Wady:
- dławi się trochę komentarzami inline
- Czy rozszerza zminimalizowany / skompresowany kod
HTML-CSS-JS Prettify
Plusy:
- obsługuje ST2/ST3
- obsługuje HTML, CSS, JS
- świetna integracja z menu Sublime
- wysoce konfigurowalny
- Per-ustawienia projektu
- Format przy opcji zapisu
Wady:
- Wymaga Node.js
- Not great for embedded PHP
Który jest najlepszy?
HTML-CSS-JS Wiele świetnych funkcji, nie ma co narzekać około.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-08-18 12:21:39
Jedyny pakiet jaki udało mi się znaleźć to Tag .
Można go zainstalować za pomocą kontrolki pakietu. https://sublime.wbond.net
Po zainstalowaniu kontroli pakietu. Przejdź do package control (Preferences -> Kontrola pakietu) następnie wpisz install
, naciśnij wprowadź. Następnie wpisz tag
i naciśnij wprowadź .
Po zainstalowaniu tagu zaznacz tekst i naciśnij skrót Ctrl+Alt+F .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-14 22:16:54
Polecam ten plugin: HTML / CSS / JS, naprawdę działa.
Po instalacji wystarczy wybrać kod i nacisnąć Ctrl+Shift + H .
Zrobione!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-24 13:35:29
To tylko ogólna wskazówka. To, co zrobiłem, aby automatycznie uporządkować mój HTML, to zainstalowanie pakietu HTML_Tidy, a następnie dodanie następującego przypisania klawiszy do domyślnych ustawień (których używam):
{ "keys": ["enter"], "command": "html_tidy" },
To uruchamia HTML Tidy przy każdym wejściu. Może są w tym wady, jestem całkiem nowy w Sublime, ale wydaje się robić to, co chcę:)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-11-01 15:17:52
Oprócz tego, że pytanie dotyczy HTML, chciałbym również podać informacje o tym, jak automatycznie formatować kod Javascript dla wysublimowanego tekstu 2;
Możesz wybrać cały kod (ctrl + a ) i korzystać z funkcjonalności in-app,(Edit
-> Line
-> Reindent
) możesz też użyć wtyczki formatowania JsFormat dla Sublime Text 2
, Jeśli chcesz mieć bardziej konfigurowalne ustawienia dotyczące formatowania kodu, aby dodać do domyślnej karty / wcięcia Sublime Text ustawienia.
Https://github.com/jdc0589/JsFormat
Możesz łatwo zainstalować JsFormat za pomocą kontrolki pakietów(Preferences
-> Package Control
) Otwórz kontrolkę pakietu, następnie wpisz install, naciśnij enter. Następnie wpisz js format
i naciśnij enter i gotowe.
(Kontroler pakietu wyświetli stan instalacji z sukcesem i błędami na lewym dolnym pasku Sublime
)
Dodaj następujący wiersz do swoich kluczy (Preferences
- > Key Bindings User
)
{ "keys": ["ctrl+alt+2"], "command": "js_format"}
Używam ctrl + alt + 2, możesz zmienić ten klawisz skrótu, co chcesz. Jak na razie {[11] } jest dobrym pluginem, warto go wypróbować!
Mam nadzieję, że to komuś pomoże.Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-03 15:50:08
Jest plugin o nazwie SublimeHtmlTidy, który działa całkiem dobrze
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-09-08 11:00:20
Dla mnie rozwiązanie HTML Prettify
było niezwykle proste. Przeszedłem na stronę HTML .
- potrzebne
Sublime Package Manager
- postępowano zgodnie z instrukcjami instalacji menedżera pakietów tutaj
- wpisz cmd + shift + p aby wywołać menu
- Typed
prettify
- Wybierz
HTML prettify
Wybór w menu
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-06-02 08:38:03
Po prostu przejdź do
Edit - > Tag - > Autoformatowanie znaczników na dokumencie
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-10-09 00:23:20
Stworzyłem Pakiet HTMLBeautify , który porządnie formatuje HTML. Oparłem go na skrypcie Perla, który znalazłem w 1997 roku-zaktualizowałem go do pracy ze wszystkimi nowymi fangled modern tagami. :)
Sprawdź to i daj mi znać, co myślisz!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-01-21 18:46:39
Nie mam jeszcze uprawnień do komentowania, więc jest to po prostu dodatkowa informacja związana z odpowiedzią @peter powyżej.
Znalazłem HTML nie wyrównuje się zgodnie z oczekiwaniami, jeśli IE komentarze warunkowe w nagłówku nie były całkowicie w linii np. flush w lewo:
<!--[if lt IE 7]>
<p class='chromeframe'>Your browser is <em>unsupported</em>. <a href="http://browsehappy.com/">Upgrade to a different browser</a> or <a href="http://www.google.com/chromeframe/?redirect=true">install Google Chrome Frame</a> to experience this site.</p>
<![endif]-->
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:48
Istnieje fajna wtyczka open source CodeFormatter , która (wraz z linkiem) może upiększyć brudny Kod nawet w jednej linii.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-04-23 07:34:39
Myślę, że to jest to, czego szukasz:
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-01-14 12:59:30
Możesz ustawić klawisz skrótu F12 easy!!!
{ "keys": ["f12"], "command": "reindent" , "args": { "single_line": false } }
Zobacz szczegóły tutaj .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-03 16:20:26
Używamtidy razem z niestandardowym systemem budowania do ulepszania HTML.
Mam HTMLTidy.sublime-build in my Packages/ User / directory:
{
"cmd": ["tidy", "-config", "$packages/User/tidy_config.cfg", "$file"]
}
I tidy_config.plik cfg w tym samym katalogu:
indent: auto
tab-size: 4
show-warnings: no
write-back: yes
quiet: yes
indent-cdata: yes
tidy-mark: no
wrap: 0
I po prostu wybierz build system i naciśnij ctrl+b lub cmd+b aby sformatować zawartość pliku. Drobnym problemem jest to, że ST2 nie przeładowuje automatycznie pliku, więc aby zobaczyć wyniki, musisz przełączyć się na jakiś inne pliki i z powrotem (lub do innej aplikacji i z powrotem).
Na Macu użyłem macports do zainstalowania tidy, na Windows trzeba by go pobrać samemu i określić working directory w systemie build, gdzie znajduje się tidy:
"working_dir": "c:\\HTMLTidy\\"
Lub dodać go do ścieżki.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-18 22:55:04