Все плагины основанные на Syntax Highlighter перестали работать. Скорее всего это связано с тем, что версия Syntax Highlighter изменилась, а разработчики плагинов не спешат обновлять их, а многие из них вообще брошены разработчиками.
Поэтому статья несколько устарела и публиковать исходные коды лучше вручную, прямо в веб-редакторе WordPress.
Остальные плагины работают как нужно. На этой странице, далее, на примерах, видно что еще работает и как, а что не работает.
—————————————————————————————
На страничке Windows Live Writer Plug-ins есть куча плагинов для Windows Live Writer Plug-ins в том числе в разделе Formatting / clipboard плагины для форматирования исходных текстов.
Очень хочется какой-нибудь качественный плагин для работы получить. Э-хе-хе придется пробовать все. Как говориться перелопатить тонны навоза, чтобы найти жемчужину.
ВНИМАНИЕ! После публикации вид форматируемого текста может радикально измениться. Т.е. код может выглядеть совсем по разному в WLW и после публикации. Это повлияло на отбор.
Тестирую на WLW версия 2011 build 15.4.3538.513
По результатам копаний я выбрал 7 плагина:
Paste from Visual Studio
Paste As Visual Studio Code
Clipboard Live (только за вставку таблиц Excel в виде картинок)
Syntax Higlighter 2.0 for Windows Live Writer
Paste From Console (только вставка из CMD)
Syntax4Writer For Alex Gorbatchev’s SyntaxHighlighter
Code Formatter for Windows Live Writer
Вот сводная таблица испытаний
Выводы:
Paste from Visual Studio и Paste As Visual Studio Code работают только с reach text, т.е. копировать нужно прямо из VS иначе не будет работать подсветка синтаксиса. Paste As Visual Studio Code обладает наибольшей функциональностью из этих двух плагинов.
Syntax Higlighter 2.0 for Windows Live Writer, Syntax4Writer For Alex Gorbatchev’s SyntaxHighlighter и Code Formatter for Windows Live Writer основаны на знаменитом движке от Горбачева и поэтому обладают сходной функциональностью. Из трёх плагинов Syntax4Writer For Alex Gorbatchev’s SyntaxHighlighter поддерживает наибольшее количество опций движка. Единственное неудобство работы этого плагина, если вставил код, то потом нельзя изменить опции (только удалив код и заново вставив).
Далее по каждому плагину отдельно описание
——————————————————————————————-
Insert Code for Windows Live Writer
Есть три опции. Если включить только Embed StyleSheet то исходник форматируется нормально, но только в WLW. После публикации всё ломается.
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
Но если включить две другие опции «нумерацию строк» и «выделение чередующихся строк» — всё ломается.
1: public override void Stop() 2: {
3: State = ServiceState.Stopping; 4: SaveConfig(false);
5: base.Stop(); 6: }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, «Courier New», courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
Code Snippet plugin for Windows Live Writer
Куча опций. Всё отлично работает в WLW, но после публикации всё форматирование слетело.
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
Есть возможность использовать или нет контейнер:
Не использовать контейнер
1: public override void Stop()
2: {
3: State = ServiceState.Stopping;
4: SaveConfig(false);
5: base.Stop();
6: }
Использовать контейнер
1: public override void Stop()
2: {
3: State = ServiceState.Stopping;
4: SaveConfig(false);
5: base.Stop();
6: }
Paste from Visual Studio
Очень простой плагин. Просто копируешь из VS и вставляешь в WLW. Но копирование работает только из VS. Если скопировать из текстового редактора — подсветка не работает.
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
Insert Formatted Clipboard
Подсветка работает только на RTF текстах, т.е. из VS, Word, Excel , если скопировать из текстового редактора — подсветка не работает. Таблица из Excel скопировалась очень примитивно, в виде таблицы HTML при этом всё форматирование исчезло.
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
Нумерация строк | Выделение чередующихся строк | Правка CSS | Управление контейнером | Копирование из текстового редактора | Выделение части кода | Языки | |
Insert Code for Windows Live Writer | + | + | + | 6 | |||
Code Snippet plugin for Windows Live Writer | + | + | + | + | + | 13 |
Source Code Formatter
Очень много возможностей, но когда их включаешь всё ломается — как жаль
1: public override void Stop()
2: {
3: State = ServiceState.Stopping;
4: SaveConfig(false);
5: base.Stop();
6: }
Paste As Visual Studio Code
Копирование ТОЛЬКО из VS
- public override void Stop()
- {
- State = ServiceState.Stopping;
- SaveConfig(false);
- base.Stop();
- }
возможен еще такой стиль
- public override void Stop()
- {
- State = ServiceState.Stopping;
- SaveConfig(false);
- base.Stop();
- }
всё отключено
{
State = ServiceState.Stopping;
SaveConfig(false);
base.Stop();
}
Clipboard Live
Форматирует только RTF clipboart. Зато умеет вставлять таблицы из Excel в виде картинки
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
SyntaxHighlighter for Windows Live Writer
Весьма своеобразно
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
EzMceWriter for Live Writer
Плагин не загрузился из-за критической ошибки.
Syntax Higlighter 2.0 for Windows Live Writer
Куча опций, но форматирование видно только после публикации
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
Типограф
Может я чего не понял. Но при нажатии на кнопку плагина вообще ничего не произошло.
Paste From Console
Специально для копирования консоли (cmd). Прикольно, можно конечно делать снимки экранов, но здесь можно копировать текст из копии.
Слеш () вот только почему-то вставляется каким-то псевдосимволом в WLW. После публикации всё в порядке.
c:>dir Volume in drive C has no label. Volume Serial Number is 243D-C254 Directory of c: 24.09.2011 15:17 <DIR> #SYS# 11.06.2009 01:42 24 autoexec.bat 05.12.2010 19:43 <DIR> Backup 12.04.2010 07:53 134 376 bar.emf 11.06.2009 01:42 10 config.sys 14.07.2009 06:37 <DIR> PerfLogs 03.10.2011 23:02 <DIR> Program Files 24.09.2011 14:58 <DIR> Temp 02.10.2011 11:57 <DIR> TOR 28.09.2010 10:22 <DIR> Users 03.10.2011 21:06 <DIR> Windows 3 File(s) 134 410 bytes 8 Dir(s) 30 385 094 656 bytes free c:> |
BlogMyCode VS2005 PlugIn
Этот плагин только для VS 2005, т.е. если нет VS2005 он работать не будет
Clipboard Capture
Для вставки картинок
Code Prettify for Windows Live Writer
Ничего особенного. Подсветка синтаксиса будет работать только при использовании google-code-prettify на сайте
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
I’m Feeling Lucky
Плагин вставляет гиперссылки, которые ведут в поиск. Используется какой-то сервис от Google — I’m Feeling lucky. Интересно, но мне это не нужно.
WLW Scrubber
Вроде как должен удалять некий мусор из HTML текста сообщения блога. Но на деле из всего этого поста удалил всего лишь один какой-то тэг div. Короче в топку.
Syntax Highlighter Plugin
Плагин основан на некой JavaScript библиотеке, которая должна быть установлена на сайте. В WLW форматирования не будет видно, только на сайте.
Кроме того он вызывает ошибку и ничего не делает.
Paste Code
Имеет дополнительное окно, где можно обрамить код в различные теги, по умолчанию предлагает <pre>
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
GeSHi — Generic Syntax Highlighter
GeSHi Server Blocks
Некий проект в интернете, который переехал на другой сайт и плагина для WLW я там не нашел
Small tag Plugin
Вставляет тег small. А зачем? Я и сам могу это сделать руками
public override void Stop()
{
State = ServiceState.Stopping;
SaveConfig(false);
base.Stop();
}
CBEnhancer LW Plugin
Фигня какая-то. Так и не понял как это работает.
Syntax4Writer For Alex Gorbatchev’s SyntaxHighlighter
Опций много но все просто
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }
CodeArea
При запуске ничего не происходит. Но на самом деле вставляется тэг <div class=»mycode»></div> к которому нужно еще и CSS стиль «.mycode» добавить в свой блог. А нафига такой геморрой? По моему мнению плагин должен это всё делать.
Code Formatter for Windows Live Writer
В режиме ActiPro
В режиме ActiPro (как рисунок)
В режиме Syntax Highlighter
public override void Stop() { State = ServiceState.Stopping; SaveConfig(false); base.Stop(); }