Pull to refresh

Comments 44

Камасутру гамасутру — ровный спеллер!
судя по исправлениям, таки орфограф наци, а не граммар наци, знаете ли.
чисто орфографические исправления бесполезны, имхо.
Да, только орфография.
У всех разная степень грамотности. За себя скажу — орфографические ошибки раздражают намного сильнее. Пунктуация не очень беспокоит (только если автор вообще запятые не ставит и пишет в одно предложение)
Мне кажется, если не замахиваться на 100% исправление текста, можно получить результаты гораздо лучше.

Во-первых, ограничиться стандартным лексиконом и словарем типичных школьных ошибок, игнорируя сленг. Во-вторых, возможно, подумать в сторону продвинутых эвристик. Определить стиль текста; исходя из этого, оценивать вероятность и допустимость замены слов-кандидатов. Скажем, в тексте официально-делового стиля маловероятно появление слов «мобы», «фармить» и прочих упячек. И наоборот, если мы имеем дело с комментарием из соц сети, то тут спелчекер должен быть особенно осторожен. Плюс ограничить исправления в цитатах и выделенных словах.

Понятное дело, что это не позволит полностью избавиться от ошибок, но это может значительно снизить их число.

P.S.: Еще бы научиться автоматически исправлять хронические проблемы с «-тся/-ться». Цены бы не было бы такому чекеру.
На самом деле, исправлять -тся/-ться в 100% случаев очень нетривиально, так как для этого нужно делать достаточно сложный анализ контекста. Вот простой прмер:
Тебе не спится.
Тебе бы не спиться.

А иногда из контекста нужно даже смысл выдёргивать:
Как учиться, так и веселиться.
Как учится, так и вселится. (Здесь подразумевается неявное местоимение «он»)

Но:
на самом деле, около 65% (проверял на «Войне и Мире») слов с -тся/-ться на конце в принципе существуют только в одной форме (например: прислушиваться/прислушивается, захочется/захотеться, любоваться/любуется ...). И вот тут нам приходит на помощь Я.Спеллер. https://bitbucket.org/a_kazakov/bookmarklet-webpage-ru-spellchecker/src — форк кода автора исправляющий только -тся/-ться в таких случаях.
Он же в минифицированном виде:
javascript:(function(){SHOW_SOURCE=false;function b(){var k=document.body.innerHTML;k=k.replace(/<.*?>/g," ");k=k.replace(/[^а-яА-ЯёЁ]/g," ");k=k.replace(/\s+/g," ").trim();var j=k.split(" ");j=d(j);var i=a(j,10000);c(i,function(m){m=m.map(g);var l=m.filter(function(q){return q.found});var o=m.filter(function(q){return !q.found});var n=o.map(function(q){return q.to});var p=a(n,10000);c(p,function(q){var r={};n.forEach(function(s){r[s]=true});q.forEach(function(s){r[s.word]=false});good_corrections=o.filter(function(s){return r[s.to]});l=l.concat(good_corrections);f(l)})})}function g(j){var i;if(j.word.slice(-3,j.word.length)=="тся"){i=j.word.slice(0,-3)+"ться"}else{i=j.word.slice(0,-4)+"тся"}return{found:(j.s.indexOf(i)!=-1),from:j.word,to:i}}function e(j){j=j.sort();var l=0;for(var k=0;k<j.length-1;++k){if(j[k]!==j[k+1]){j[l++]=j[k]}}j[l++]=j[j.length-1];return j.slice(0,l)}function h(i){return i.match(/ть?ся$/)!==null}function d(j){var i=e(j);return i.filter(h)}function a(p,k){var j=[],l=[],o=0;for(var m=0;m<p.length;m++){var n=p[m];if(o+n.length*6>k){j.push(l.join(" "));l=[];o=0}l.push(n);o+=n.length*6+3}if(o!=0){j.push(l.join(" "))}return j}function c(i,j){queries_left=i.length;result=[];if(i.length==0){j([])}i.forEach(function(l){var k=new XMLHttpRequest();k.onreadystatechange=function(){if(this.readyState==4){if(k.status==200){result=result.concat(JSON.parse(k.responseText));if(--queries_left==0){j(result)}}else{console.log(k.status)}}};k.open("GET","https://speller.yandex.net/services/spellservice.json/checkText?options=7&text="+l,true);k.send()})}function f(o){if(!o){return}var j=document.body.innerHTML;for(var k=0;k<o.length;++k){var m=o[k];var l='<span style="background-color:#cfc">'+m.to+"</span>";if(SHOW_SOURCE){l+='<span style="background-color:#fcc">'+m.from+"</span>"}var n=new RegExp("([^а-яА-ЯёЁ]|^)"+m.from+"(?!=[а-яА-ЯёЁ])","g");j=j.replace(n,"$1"+l)}if(document.body.innerHTML!=j){document.body.innerHTML=j}alert("Replaces:"+o.length)}b()})();
исправлять -тся/-ться в 100% случаев очень нетривиально
Разумеется, я потому и вынес это в постскриптуум, что задача очень нетривиальная и контекстно-зависимая.
Вопрос о том, кого что именно раздражает — весьма субъективный. Но сама проблема, на самом деле, чуть шире, и это ясно без эксперимента.
Объективную проблему составляют люди, которые не безграмотно пишут, а не умеют формулировать свои мысли вообще. Это похоже своим результатом на безграмотность, потому что влечет за собой жуткую пунктуацию, но ни один робот не превратит «поток сознания» в осмысленный текст. Косметически можно причесать любой кошмар (можно даже научить робота разбирать жаргон, например), но вернуть письменной мысли смысл он, очевидно, не сможет.
Имхо тем, у кого грамматические ошибки «вызывают кратковременное бешенство» нужно прежде всего работать над собой.
Я, конечно, немного преувеличиваю, но если вы более-менее грамотны, то можете попробовать себя в этой роли:
habrahabr.ru/post/204196/
К чему это? Я имел ввиду, что ярость вырабатывает кортизол и разрушает нас изнутри, поэтому если чьё-то поведение вызывает в ком-то бешенство — это прежде всего проблема бешеной стороны.

Паработаю нимнога сирийным убийцей тех, хто асуждает других сам имея массу праблем, хатя бы с самокантролем :)
хто асуждает других сам имея массу праблем
О, это из серии «сперва добейся»? :)
Мол, чтобы говорить, что еда невкусная, поди сначала готовить научись!
хто
хатя бы
bullet_hits_Neo.gif
К сожалению, на всех гифках до пули, зацепившей Нео, дело не доходит :)
Честно — никогда не понимал людей которых раздражают до бешенства ошибки в тексте… Хотя, возможно, я привык читать на высокой скорости и не могу находить ошибки читая не" побуквенно" и «посложно» а фрагментами предложений. Так что тут два плюса и нервы целы и информацию из текста получаю быстрее ;)
PS: текст из ссылки я например прочитал совершенно спокойно (после пары секунд привыкания), без нервов — как обычны текст — просто одна из «разновидностей» текста ниже (только на других принципах):
«По рзелульаттам илссеовадний одонго анлигйсокго унвиертисета, не иеемт занчнеия, в кокам пряокде рсапожолены бкувы в солве. Галвоне, чотбы преавя и пслоендяя бквуы блыи на мсете. Осатьлыне бкувы мгоут селдовтаь в плоонм бсепордяке, все-рвано ткест чтаитсея без побрелм. Пичрионй эгото ялвятеся то, что мы чиатем не кдаужю бкуву по отдльенотси, а все солво цликеом.»


PPS: habrahabr.ru/post/148896/
Ну тагда ничо страшнаго, можите не ставить это допалнение.
Приведённый текст, кстати, жульничество сплошное :) Полный беспорядок, как же :) Вот, попробуйте прочитать:

По рататьлузем иинаводелссй огондо агоксйилгно утетисревина, не иеемт зинечаня, в кокам пкдярое рнежолопсаы бвкуы в своле. Гонвале, чботы паврея и пянделсоя бвкуы блыи на мтсее, оыньлатсе бвкуы мугот ставодель в понлом бкдяропсее, все-рнвао тскет чстеатия без пелборм. Поничирй эгото ястеялвя то, что мы не чеатим куджаю бвкуу по отсоньледти, а все своло цокилем!
Если помнишь примерно оригинальный текст, этот читается без проблем)
У меня наоборот — когда быстро читаю и встречаю орфографическую ошибку, то сбиваюсь, так как мне начинает казатся, что это я допустил ошибку при чтении и прочитал слово не так.
Возможно, есть смысл для некоторых распространенных ошибок задать правила вручную. Так, в 99% случаев на Хабре мы получим корректное исправление, сделав следующие автозамены:
что бы --> чтобы
в течении --> в течение
пол (раздельно) --> пол (слитно) (пр. полтонны)
андройд --> андроид
(\d+)-(х|ти) (пробел) --> /1- (без пробела) (пр. 50-тонный)

Орфография — еще как бесит! Частая ошибка — «незакрытые» запятые, что кажется странным для Хабра, ведь логически фраза «Программа, написанная на Javascript не требует компиляции» соответствует коду вроде
<a href="http://site.com title="oops>
что бы --> чтобы
Протестую! Вариант «что бы» зачастую вполне правильный. Например, как в «что бы вы ни делали».
Так у меня все примеры «ошибок», кроме одного, могут и не быть ошибками. Поэтому я и говорю — «в 99% случаев». Потому что по ощущениям словосочетание «что бы» в значении «что бы» встречается в 99 раз реже, чем в значении «чтобы».

P.S. Я там, кстати, описался — вместо «орфография» надо читать «пунктуация».
андройд --> андроид
Войнам андройдов даже пальцы отрубать бесполезно. Если человек так пишет — значит, он так и произносит. Если человек говорит войн или андройд в устной речи — его просто хочется выбросить из окна высокой башни.
простите, ни разу не хотел про политегу, но некоторые жители западных окраин так пишут, потому что в их родном наречии… в-общем, бардак с буквой И
А есть что-нибудь подобное для пунктуации? Хотя бы на уровне API?

Проверка орфографии, конечно, это хорошо, но такая возможность есть во всех современных браузерах без всяких букмарклетов.
Это вы, наверное, про проверку орфографии вводимого текста говорите. А в статье речь идет про проверку всего контента на странице. В каком браузере есть такое?
Про пунктуацию — нет, не слышал.
Это есть во всех современных браузерах:

javascript:document.body.contentEditable='true';document.designMode='on';void 0

ПКМ -> выбираем нужный словарь.
И зачем оно такое, с нерабочими ссылками, нужно?
Ссылки открываются через ctrl+клик, shift+клик, среднюю кнопку мыши, меню правой кнопки мыши — способов более чем предостаточно.
Только по правой кнопке мыши, но это неудобно, однако. Chrome 35.
И все же цель была не подсвечивать ошибки, а наоборот, хотелось их не видеть совсем. Хочется читать текст без ошибок. В браузерах такого функционала нет.
Решаем проблему грамотности в интернете с помощью Яндекс.Спеллер
Названия в русском языке склоняются. Так нам проблему грамотности не решить…
Давно уже использую собственноручно написанное расширение, которое заменяет IMHO или ИМХО на нормальный текст «по моему мнению».

При этом текст читается намного приятнее.

По идее, туда можно встроить что угодно, чтобы менять любой текст на другой текст.
забытая запятая скорее всего останется незамеченной

Таки нет. Заметили!
Резюме: замены мозгу пока нет. И не надо.
Кстати говоря, очень классная штука для проверки собственных текстов. Отлично подсвечивает ошибки — удобно править.

Спасибо!
Тут нужно уточнить, что подсвечиваются только слова, для которых есть замена.
Но можно чуть подправить скрипт, чтобы подсвечивать все подозрительные для Яндекса слова.
Коллеги, а почему бы не сделать не автоматический, а ручной привод? В значительной мере может помочь — где не нужно, ничего не срабатывает, а если вы наблюдаете явно кривое написание — кнопку нажали, оно поправилось. Здесь же напрашивается исправление только выделенного текста: пишет человек на форуме криво, а остальные нормально — выделяем только кривые сообщения, жмем исправить — профит. И это можно даже просто открывать в неком своем окне, а не перечитывать уже загруженную страницу.
Sign up to leave a comment.

Articles