Vim - замечательный инструмент для этого. Вам не нужно использовать его в качестве редактора (хотя каждый серьезный разработчик должен подумать об этом, но я отвлекся), вы можете использовать его как чисто синтаксически-ориентированный процессор кода в HTML.
Например, возьмем этот скрипт Python3 (в этом листинге синтаксис обозначен StackOverflow ):
'Get geocode data from Google'
# See https://developers.google.com/maps/documentation/geocoding
import urllib, urllib2
import json
params = {'address': "1600 Amphitheatre Parkway, Mountain View, CA",
'sensor': 'false'}
base_url = 'http://maps.googleapis.com/maps/api/geocode/json'
url = base_url + '?' + urllib.urlencode(params)
reply = json.loads(urllib2.urlopen(url).read() )
print json.dumps(reply, sort_keys=True, indent=4, separators=(',', ': '))
Использование Vim цветовая схема Свет Этот метод производит:
<code><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>~/Projects/google/geocoding.py.html</title>
<meta name="Generator" content="Vim/7.3">
<meta name="plugin-version" content="vim7.3_v10">
<meta name="syntax" content="python">
<meta name="settings" content="use_css,expand_tabs">
<style type="text/css">
<!--
pre { font-family: monospace; color: #000000; background-color: #c7c7c7; }
body { font-family: monospace; color: #000000; background-color: #c7c7c7; }
.Constant { color: #bd00bd; }
.Normal { color: #000000; background-color: #c7c7c7; }
.Statement { color: #191970; font-weight: bold; }
.Comment { color: #005500; }
.String { color: #8b4500; }
-->
</style>
</head>
<body>
<pre>
<span class="String">'Get geocode data from Google'</span>
<span class="Comment"># See <a href="https://developers.google.com/maps/documentation/geocoding">https://developers.google.com/maps/documentation/geocoding</a></span>
<span class="Statement">import</span> urllib, urllib2
<span class="Statement">import</span> json
params = {<span class="String">'address'</span>: <span class="String">"1600 Amphitheatre Parkway, Mountain View, CA"</span>,
<span class="String">'sensor'</span>: <span class="String">'false'</span>}
base_url = <span class="String">'<a href="http://maps.googleapis.com/maps/api/geocode/json">http://maps.googleapis.com/maps/api/geocode/json</a>'</span>
url = base_url + <span class="String">'?'</span> + urllib<span class="Normal">.</span>urlencode(params)
reply = json<span class="Normal">.</span>loads(urllib2<span class="Normal">.</span>urlopen(url)<span class="Normal">.</span>read() )
print json<span class="Normal">.</span>dumps(reply, sort_keys=<span class="Statement">True</span>, indent=<span class="Constant">4</span>, separators=(<span class="String">','</span>, <span class="String">': '</span>))
Обратите внимание, что каждому элементу синтаксиса присваивается цвет в разделе стилей CSS, который можно настроить в самом html, если вы не хотите использовать цветовую схему Vim .
Вот что вы увидите в своем браузере. Я вырезал это как изображение, чтобы избежать изменения цвета с StackOverflow :
Вот как это сделать:
- Установите графический интерфейс Vim. Официальная Vim страница загрузки поможет вам начать работу. Если вы не можете использовать графический интерфейс, надежда не пропала, я прокомментирую этот случай ниже.
- Выберите синтаксическую раскраску, которую вы хотите. Я использую эту страницу для выбора и загрузки цветовых схем. Вы помещаете файлы цветовой схемы в каталог
~/.vim/colors
или для Windows в %USERPROPFILE%/vimfiles/colors
.
- Старт Vim .
- Загрузите исходный код, для которого вы хотите использовать синтаксическую разметку. Это делается с помощью команды
:e <file path>
, где <file path>
- это местоположение исходного файла. Vim GUI также предоставит команды меню для открытия файла, вы можете предпочесть сделать это таким образом, чтобы вы могли просматривать файловую систему.
- Загрузите вашу цветовую схему. Введите
:color <name>
, где <name>
- это цветовая схема, сохраненная на шаге 2, без расширения .vim
. Например, я использую :color synic
для загрузки цветовой схемы в ~/.vim/colors/synic.vim
. (В Vim «:» переводит вас в «командный режим». Когда вы вводите команду и нажимаете <return>
, вы возвращаетесь в так называемый «нормальный режим».)
- Скажите Vim , чтобы сгенерировать html с помощью команды
:TOhtml
. Откроется новое окно, и вы увидите HTML-разметку. Обязательно используйте правильную прописную букву при выполнении _Vim_commands.
- Ваш курсор должен находиться в новом окне с разметкой. Сохраните это, используя меню файлов графического интерфейса, или введите команду
:w <file path>
Дополнительно, если вы хотите, чтобы номера строк отображались в сгенерированном HTML, используйте команду :set number
перед :TOhtml
.
Если вы не видите раскраски синтаксиса после установки цветовой схемы, попробуйте команду :syntax on
. Если вы выполняете раскраску синтаксиса для языка или текстового формата, который vim не распознает, вы, вероятно, сможете найти файлы синтаксиса для этого языка в Интернете. Подробная информация о том, как установить файлы синтаксиса, выходит за рамки того, о чем я хочу написать здесь, но у вашей любимой поисковой системы есть много тем. Попробуйте выполнить поиск, например vim <mylang> syntax
. Чтобы увидеть, какой язык Vim считает, что у вас есть, используйте команду ": set ft?".
Если, как и я, вы предпочитаете использовать форму терминала Vim
, есть еще кое-что, что стоит рассмотреть. Вы не можете создавать цвета, которые терминал не поддерживает. Большинство терминальных приложений предоставляют 2, 16 или 256 цветов. Получите Vim для вывода в 256 цветах (если это еще не сделано), используя инструкции здесь . Не все цветовые схемы хорошо работают на терминалах из коробки, но инструкции по на этой странице существенно помогают, хотя они написаны для более опытного пользователя Vim . Рекомендуется запустить учебник Vim (:help tutorial
), если вам нужно сделать больше, чем я обрисовал в общих шагах.