كيف يرتبوا ملف HTML هي البادئة في السادس ؟
-
03-07-2019 - |
سؤال
كيف يمكنني إصلاح المسافة البادئة له ضخمة ملفات html التي كان كل عابث ؟
حاولت المعتاد "ز ز=ز" القيادة, الذي هو ما يمكنني استخدام لإصلاح المسافة البادئة من ملفات التعليمات البرمجية.بيد أنه لا يبدو أن العمل على ملفات HTML.ببساطة إزالة كافة التنسيقات.
كما أنني حاولت وضع :filetype = xml
, لمعرفة ما إذا كان خداع في هذا التفكير كان ملف XML من شأنه أن يساعد لكنه لا يزال لم تفعل ذلك.
المحلول
ومع filetype indent on
داخل بلدي .vimrc
، فيم ملفات HTML تزكي جيد للغاية.
ومثال بسيط مع shiftwidth
من 2:
<html>
<body>
<p>
text
</p>
</body>
</html>
نصائح أخرى
وهناك العديد من الأشياء التي جميعا بحاجة إلى أن تكون في المكان. فقط لتلخيص كل منهم في مكان واحد:
وتعيين الخيار التالي:
:filetype indent on
:set filetype=html # abbrev - :set ft=html
:set smartindent # abbrev - :set si
وبعد ذلك إما تحريك المؤشر إلى أعلى الملف والمسافة البادئة إلى النهاية: gg
=G
أو حدد النص المطلوب بمحاذاة أطراف وضرب بمحاذاة أطراف ذلك.
والمشكلة الرئيسية باستخدام المسافة البادئة الذكية هي أنه إذا كان XML (أو HTML) يجلس على سطر واحد لأنه قد ينتهي الأمر يعود من طلب حليقة ثم سوف gg=G
لا تفعل خدعة. بدلا من ذلك لقد شهدت مجرد المسافة البادئة جيدة باستخدام مرتبة تسمى مباشرة من السادس:
:!tidy -mi -xml -wrap 0 %
وهذا يقول في الأساس السادس للاتصال مرتبة لتنظيف ملف XML لا التفاف خطوط لجعلها تناسب على الافتراضي 68 حرفا خطوط عريضة. I معالجة ملف 29MB XML كبير واستغرق 5 أو 6 ثوان. اعتقد لملف HTML ومن ثم ينبغي أن يكون الأمر:
:!tidy -mi -html -wrap 0 %
وكما ذكر في تصريحات، tidy
هو أداة الأساسية التي يمكن أن تجد في كثير من قاعدة أنظمة لينكس / ماك. هنا صفحة PROJET في حال كنت تتمنى ان تكون ولكن لا: HTML مرتب
وهذا الأمل يمكن أن تساعد.
كما tylerl يفسر فوق تعيين التالية:
:filetype indent on
:set filetype=html
:set smartindent
ومع ذلك!
علما أنه في همة 7.4 html العلامات html
, head
, body
, و البعض الآخر لا بادئة بشكل افتراضي.ويبدو هذا منطقيا ، ما يقرب من جميع المحتويات في ملف html يندرج تحت هذه الكلمات.إذا كنت تريد حقا أن ، يمكنك الحصول على تلك الكلمات أن تكون بادئة مثل ذلك:
:let g:html_indent_inctags = "html,body,head,tbody"
وهذا هو بلدي الحل الذي يعمل بشكل جيد لفتح "قبيحة" HTML بطريقة متباعدة لطيف:
vim fileIn.html -c "set sw=2 | %s/>/>\r/ | execute 'normal gg=G' | set nohlsearch | g/^\\s*\$/d"
والأمر sw
لأن بلدي الافتراضي هو 4، وهو معدل مرتفع جدا بالنسبة HTML.
والجزء التالي يضيف سطر جديد (فيم يفكر انها إرجاع، تنفس الصعداء) بعد كل عنصر (>
)
وثم إعادة المسافة البادئة ملف كامل مع =
و>
ثم unhighlight (منذ لقد set hlsearch
في بلدي vimrc)
وثم إزالة جميع خطوط فارغة /-بيضاء الوحيدة (انظر هنا لأكثر من ذلك، هذا أيضا وضعف هرب، لأنه في وعاء)
ويمكنك حتى إضافة | wq! fileOut.html
إلى النهاية، اذا كنت لا تريد أن تدخل فيم على الإطلاق، بل مجرد تنظيف الملف.
يمكنني استخدام هذا البرنامج النصي:https://github.com/maksimr/vim-jsbeautify
في الرابط أعلاه لديك كل المعلومات:
- تثبيت
- تكوين (نسخ من المثال الأول)
- تشغيل
:call HtmlBeautify()
لا وظيفة بشكل جميل!
هل حاولت استخدام HTML المسافة البادئة النصي على همة الموقع ؟
وهنا حل الثقيل الوزن التي يحصل لك الطعج، بالإضافة إلى كل HTML الطباعة الأنيقة كنت لا تريد بالضرورة أن نهتم بينما كنت التحرير.
أولا، تحميل مرتب . تأكد من إضافة الثنائي إلى المسار، حتى تتمكن من الاتصال من أي مكان.
وبعد ذلك، إنشاء ملف التكوين واصفا نكهة HTML المفضلة لديك. وثائق ليست كبيرة للمرتب، ولكن هنا على نظرة عامة ، وقائمة <ل أ href = "http://tidy.sourceforge.net/docs/quickref.html" يختلط = "نوفولو"> جميع الخيارات . وهنا ملف التكوين لي:
bare: yes
break-before-br: no
clean: yes
drop-proprietary-attributes: yes
fix-uri: yes
indent-spaces: 4
indent: yes
logical-emphasis: yes
markup: yes
output-xhtml: yes
quiet: yes
quote-marks: yes
replace-color: yes
tab-size: 4
uppercase-tags: no
vertical-space: yes
word-2000: yes
wrap: 0
وحفظ هذا كما tidyrc_html.txt
في مجلد ftplugin
الخاص بك (تحت vimfiles).
وأكثر واحد ملف: إضافة السطر التالي (أو خلق) html.vim
، وأيضا في ftplugin
:
map <leader>tidy :%! tidy -config ~/vimfiles/ftplugin/tidyrc_html.txt <CR>
لاستخدامها، مجرد فتح ملف HTML، ونوع /tidy
. (وهذا هو المفتاح /
<leader>
).
وهناك تذهب! لا حل سريع، بأي وسيلة، ولكن الآن أنت قليلا أفضل مجهزة لتحرير تلك ضخمة، عابث الاحتياطي للملفات HTML.
ويمكنك دمج كل من مرتبة و<لأ href = "https://github.com/beautify- على شبكة الإنترنت / شبيبة تجميل "يختلط =" نوفولو "> أتش تي أم أل تجميل تلقائيا عن طريق تثبيت البرنامج المساعد همة -autoformat. بعد ذلك، يمكنك تنفيذ أيهما المنسق يتم تثبيتها مع بضغطة زر واحدة.
وحاولت المعتادة "زز = G" الأمر، وهو ما يمكنني استخدام لإصلاح المسافة البادئة ملفات التعليمات البرمجية. ومع ذلك، فإنه لا يبدو أن العمل حق على ملفات HTML. ببساطة إزالة كافة التنسيق.
اقتباس فقرة> إذا التنسيق التلقائي / gg=G
المسافة البادئة همة ويبدو أن "كسر" (مثل ترك الطعج كل سطر)، وعلى الأرجح لم يتم تمكين المساعد البادئة / تحميل. حقا يجب أن تعطي رسالة خطأ بدلا من مجرد القيام الطعج سيئة، وإلا المستخدمين يعتقدون مجرد التنسيق التلقائي / ميزة الطعج فظيعة، عندما يكون فعلا جيدة.
لمعرفة ما اذا كان يتم تمكين المساعد في الهامش / تحميلها، :scriptnames
تشغيل. معرفة ما إذا كان .../indent/html.vim
في القائمة. إن لم يكن، ثم وهذا يعني لا يتم تحميل البرنامج المساعد. في هذه الحالة، إضافة إلى هذا الخط ~/.vimrc
:
filetype plugin indent on
والآن إذا قمت بفتح الملف وتشغيل :scriptnames
، يجب أن تشاهد .../indent/html.vim
. قم بتشغيل gg=G
، التي ينبغي أن تفعل التنسيق التلقائي الصحيحة / المسافة البادئة الآن. (على الرغم من أنها لن تضيف أسطر جديدة، حتى لو كانت جميع الكود على خط واحد، لن تكون بادئة ذلك).
ملحوظة: إذا كنت تقوم بتشغيل :filetype plugin indent on
على سطر الأوامر همة بدلا من ~/.vimrc
، يجب إعادة فتح ملف :e
وبالإضافة إلى ذلك، كنت لا داعي للقلق حول إعدادات autoindent
وsmartindent
، فهي ليست ذات الصلة لهذا الغرض.