HTML


Орфография

Плагины орфографии есть в AkelPad и Notepad++. Можно проверять орфографию при наборе текста, что отвлекает. Я пользуюсь своим методом, с помощью au3-скрипта делаю экспорт всех русских слов из html-файлов в txt-файл, открываю результирующий файл в Notepad++, включаю плагин орфографии, в меню плагина выбираю "Экспорт всех слов с ошибками в список", получаю в буфере обмена список слов с ошибками, вставляю этот список в Notepad++ и копирую снова (потому что формат данных возвращённый плагином не понимает следующий скрипт обработки), далее запускаю скрипт обработки (удаления дубликатов, удаление слов менее 3 букв, сортировка), получаю в буфер обмена укороченный список и вставляю его в Notepad++. Далее с помощью программы поиска и замены ищу каждое слово в папке с html-файлами, получаю список файлов, кликаю с прыжком к месту искомого слова, вставляю правильное.

Почему именно так? В течении месяца без отвлечения редактируется сотня страниц из тысячи, результатом обработки получаю 5-10 ошибок, которые быстро нахожу и исправляю. Если же исправлять это сразу при наборе текста, то потребуется 50-100 отвлечений на ложные срабатывания, статья может переписываться 2-3 раза, то есть движок напоминаний об ошибках будет отвлекать даже, когда текст будет стёрт и заменён другим. Также в тексте будут отмечаться ошибкой например теги и параметры html-кода (зависит от выбранного редактора и его плагина). В худшем случае орфографию можно проверить, когда html-страница закончена, предполагается, что текст написан и можно закрывать файл, вот перед закрытием можно включить подсветку ошибок и исправить. По крайней мере, во время набора текста будет сосредоточенность на материале. И рекомендуется хотя бы 1 раз перечитать написанное, так как обязательно в тексте могут появиться смысловые ошибки, которые плагин орфографии не увидит, например слова с разными падежами или перемешивание окончаний для множественного и единственного числа, разных по времени, т.е. отдельно взятые слова будут вполне допустимые.

Также в теме AkelPad обсуждался способ подсветки ошибок с помощью регулярных выражений. Создаётся специальный *.coder-файл с регулярными выражениями выделяющий ошибки в тексте красным цветом. Например:

QuotesRE:
; ошибки
; повтор 3-х одинаковых букв подряд
0 "(\w)\1\1" "\0=(0,#ff8080,0)"
; неправильная запятая
0 "[а-яё]+ [,.;:][а-яё]+" "\0=(0,#ff8080,0)"
; повтор слова
0 "([А-яЁё]+)[\t ]+\1" "\0=(0,#ff8080,0)"
; незаглавная после точки
0 "(?-i)\. [а-яё]+" "\0=(0,#ff8080,0)"
; пробелы в конце строк
0 "[\t ]+(?=\n)" "\0=(0,0,#ff8080)"
; пробелы в начале, конце строк и двойные
1 `(^[\t ]+)|([\t ]{2,})|([\t ]+$)` `\1=(0,0,#ff8080) \2=(0,0,#ff8080) \3=(0,0,#ff8080)` 0 2
1 "\t+" "\0=(0,0,#8080ff)" 2



Необязательно подсвечивать, можно просто найти поиском, выдать в консоль строки с ошибками, анализировать есть ли ложные и делать прыжок к строке. Оба редактора имеют вывод строк с найденным в консоль. В AkelPad это скрипт FindReplaceEx.js

Регулярное выражениеОписание
(\w)\1\1повтор 3-х одинаковых букв подряд
[а-яё]+ [,.;:][а-яё]+неправильная запятая
([А-яЁё]+)[\t ]+\1повтор слова
(?-i)\. [а-яё]+незаглавная после точки
[\t ]+(?=\n)пробелы в конце строк
(^[\t ]+)|([\t ]{2,})|([\t ]+$)пробелы в начале, конце строк и двойные
\t+табуляция, чтобы заменить на пробел
[a-z](?=[а-яё])|(?<=[а-яё])[a-z]англ буквы смешаны с русским
[а-яё](?=[a-z])|(?<=[a-z])[а-яё]англ буквы смешаны с русским

Регулярные выражения совместимы с AkelPad (собственный движок), в Notepad++ можно использовать \h вместо [\t ]