Отступ HTML + Javascript / CSS


5

Сталкивались ли вы с текстовым редактором OS X, способным сделать отступ в обе строки?

var x = 2;

и линии

<it>Item A</it>
<it>Item B</it>

в следующем HTML?

<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Test</title>
<script>
function foo_bar() {
var x = 2;
}
</script>
</head>
<body onload="foo_bar()">

<h1>Header</h1>

<ul>
<it>Item A</it>
<it>Item B</it>
</ul>

</body>
</html>

Я перепробовал все пакеты emacs, предназначенные для правильного выполнения этой простой задачи (через мажорный и минорный режим), но ни один из них не подходит. Я слишком увлечен emacs, чтобы вообще от него отказаться, но сейчас я ищу редактор, отличный от emacs, для этой задачи.


Никто другой не будет выбирать текстовый редактор, основываясь на том, может ли он автоматически вставлять JavaScript, встроенный в HTML. (Или
поищите

Это так? Разъясни нам.
Калаф

2
@LauriRanta Это плохое предположение. Если бы у одного человека был вопрос, вполне вероятно, что больше будет. Если вы заинтересованы в суете из-за неясных вопросов, попробуйте несколько моих.
CajunLuke

1
Это интересно, поэтому я не думаю, что мы должны закрывать это. ОТО, похоже, это можно решить с помощью некоторых умных взломов Emacs Lisp, так что, возможно, AskDifferent - это просто неправильное место, чтобы спрашивать.
nohillside

@patrix Я пробовал мульти-веб-режим и nXhtml. Ни один не отвечает требованиям. Поддержка двух режимов отсутствует в emacs с тех пор, как Кнут смешал TeX с программами в одном файле. Можно с уверенностью не поспорить, что emacs получит такую ​​возможность в ближайшее время. Конечно, если вы опубликуете «умные взломы Lisp», вы будете очень довольны.
Калаф

Ответы:


3

Я написал web-mode.el (доступен на http://web-mode.org ), потому что у меня были те же проблемы, что и у вас. Этот основной режим Emacs для редактирования шаблонов HTML (HTML с CSS / JS / PHP / JSP) является автономным (другие основные не требуются) и выделяет синтаксис и отступы в соответствии с типом блока.

OP Raving

Не более чем

(require 'web-mode)

в вашем .emacsи хранящемся web-mode.elв доступном месте (ваш домашний каталог подойдет для начала), пример кода в вопросе будет выглядеть следующим образом.

введите описание изображения здесь

Чтобы получить правильный отступ

введите описание изображения здесь

вам нужно будет использовать

;; First the (general) requisite initialization.
(package-initialize)

(require 'web-mode)

(eval-after-load "web-mode"
  '(progn 
     (add-to-list 'auto-mode-alist '("\\.css\\'" . web-mode))
     (add-to-list 'auto-mode-alist '("\\.html\\'" . web-mode))
     (add-to-list 'auto-mode-alist '("\\.js\\'" . web-mode))

     (setq web-mode-script-padding 2)
     (setq web-mode-style-padding 2)
     (setq web-mode-block-padding 2)
     ))

2

Я интенсивно использую Textmate и люблю, как авто отступы для меня при разработке Rails Developments. Это действительно хороший текстовый редактор и полностью стоит своей цены. Имеет много хороших функций.

Хотя большинство текстовых редакторов обычно имеют автоматический отступ. Coda 2 делает, и я верю Textwrangler и несколько других. Не должно быть слишком сложно найти эти работы, и у большинства из них есть бесплатные пробные версии, с которыми можно поиграть в первую очередь, чтобы узнать, нравятся ли они вам.

Я надеюсь, что этот ответ поможет вам.


1
Sublime Text - еще один хороший выбор: sublimetext.com
Vickash

Да, это так, спасибо, я получил за это.
de_an777

Textmate действительно делает отступ Javascript, встроенный в HTML (Edit \ Select \ All = Command-A; Text \ Indent Selection Option-Command- [). Я не понимаю, как Coda 2 или Textwrangler могут сделать отступ для выбора. Sublime Text 2 имеет несколько вариантов выделения и отступа. Ни одно из моих испытаний не создало отступ для выбранного буфера. Теперь, если только Textmate каким-то образом импортирует мою цветовую схему emacs.
Калаф

TextMate позволяет вам изменить цветовую схему на то, что вам нравится. Это довольно круто, есть много тем для скачивания. Вы можете сделать и создать свой собственный тоже. Вот то, что я нашел и которое выглядит как темная тема для emacs: mac.softpedia.com/get/Graphics/Emacs-TextMate.shtml
de_an777

... и чтобы использовать тему, дважды щелкните файл .tmTheme, а не загружайте его через сам Textmate. Кроме того, как указано в разделе руководства «14 тем», в вики ( wiki.macromates.com/Themes/UserSubmittedThemes ) есть ряд дополнительных тем.
Калаф
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.