zakavych bookmarklet
4 Mar 2005 12:46В целях внедрения типографики еще и в оставляемые мной комменты была написана закладурка.
Используется очень просто: её нужно утянуть на букмаркбар и после написания коммента нажать.
Update: грабли с парсером ЖЖ. желающие могут просто создать букмарк со следующим Location:
javascript:for(i=0;t=document.getElementsByTagName('textarea')[i];++i) {s = t.value;s = s.replace(/(\s+|^)"([^"]+?)"(\s+|$|\.|\,)/g, '$1«$2»$3');s = s.replace(/\((tm|тм|TM|ТМ)\)/g, '™');s = s.replace(/\([cсCС]\)/g, '©');s = s.replace(/(\s+|^)--?(\s+)/g, '$1—$2');s = s.replace(/(\d+)-(\d+)/g, '$1–$2');s = s.replace(/\.\.\./g, '…');t.value = s; } void 0
Update 2: вышла Новая версия
Используется очень просто: её нужно утянуть на букмаркбар и после написания коммента нажать.
Update: грабли с парсером ЖЖ. желающие могут просто создать букмарк со следующим Location:
javascript:for(i=0;t=document.getElementsByTagName('textarea')[i];++i) {s = t.value;s = s.replace(/(\s+|^)"([^"]+?)"(\s+|$|\.|\,)/g, '$1«$2»$3');s = s.replace(/\((tm|тм|TM|ТМ)\)/g, '™');s = s.replace(/\([cсCС]\)/g, '©');s = s.replace(/(\s+|^)--?(\s+)/g, '$1—$2');s = s.replace(/(\d+)-(\d+)/g, '$1–$2');s = s.replace(/\.\.\./g, '…');t.value = s; } void 0
Update 2: вышла Новая версия
no subject
Date: 2005-03-04 10:52 (UTC)Багрепорт
Тестируем: "" « »
"
«
»
Так, пустую строку в кавычках мы не схавали, кавычку в начале комментария тоже пробакланили. Фича: при наличии несбалансированных кавычек незамененной остаётся первая, а не последняя, как можно было бы ожидать.
Займемся тире.
—
--
(2) ф -
(3) ф- -
(4) ф - ф
После первого вызова результат получился, м-м, неожиданный (он, собственно, и оставлен). Второй вызов заменяет тире в строке (2), третий - последнее тире в строке (3), четвертый тронул строку (4) и лишь пятый - первое тире в данном предложении.
Re: Багрепорт
Date: 2005-03-04 11:59 (UTC)Re: Багрепорт
Date: 2005-03-04 14:56 (UTC)Re: Багрепорт
Date: 2005-03-05 09:47 (UTC)С кавычками unable to duplicate, с тире — поправил. забыл добавить ключ глобальной замены.
Re: Багрепорт
Date: 2005-03-05 10:03 (UTC)В сторону - насколько я знаю, не duplicate, а reproduce (а вот теперь угадай, почему не заменился дефис в этом предложении ;).
Тэ-экс, и что у нас теперь?.. — (слева было два дефиса) - - трам- тарарам -там-там… :)
С кавычками - это я, похоже, облажался где-то. Работает - вроде.
А вот если сейчас ещё раз дёрнуть скрипт, то он заменит следующее тире. Не везде ты однако глобальную замену добавил.
Re: Багрепорт
Date: 2005-03-05 10:18 (UTC)У нас, в Mantis BT пишется unable to duplicate.
no subject
Date: 2005-03-04 11:39 (UTC)И где тире? А если — вот так? Ага одиночное тире. А это — слово-с-дефисом? Ок, работает. Да… и многоточие проверим — ок, многоточит.
Спасибо, использую :-)
no subject
Date: 2005-03-04 12:03 (UTC)