Комментарии 95
Спасибо за улучшение!..
Очень удобно. Обновлюсь…
Очень удобно. Обновлюсь…
0
Кнопки © ® « » ±, а также ™ € ≠ × ° § ≈ и прочие не нужны.
Нужна правильная раскладка, которая работает во всех приложениях, а не на одном сайте.
Нужна правильная раскладка, которая работает во всех приложениях, а не на одном сайте.
-5
а мне хочется самомурасставлять кавычки типа «начало текста «середина» конец текста» а не смотреть как хабр делает «начало текста» середина «конец текста»
-5
Вы вообще о чем? Кого вам расставляет хабр? Уверены, что по ссылке ходили?
+4
хабр меняет обычные двойные кавычки на типографские, и не всегда так как я этого ожидаю, да, с кнопок неудобно вводить кавычки, но я не так часто ими пользуюсь, но пользуюсь, и не хочу только из-за этих кавычек такую раскладку, проще раз в день ткнуть на кнопочку
-3
Что-то мне кажется, ваше «неожидание» несколько преувеличенно. Знак дюйма (а не «обычная двойная кавычка», как вы её назвали) заменяется на открывающую кавычку, если перед ним стоит пробел и на закрывающую, если после. Знак дюйма не меняется на кавычку, если стоит после цифр, т.е. используется по назначению: 19"
0
=) я не знал, спаибо, а кнопочки всеравно люди заменят все под себя
+1
Эм, ну кагбэ, если я не ошибаюсь, то это не знак дюйма, так как для обозначения дюймов (и секунд в градусной мере) все-таки существует отдельный символ (\u2033), как например: 19″ (сравните с английскими кавычками “” и символом, который у всех нас на клавиатуре, — ". В данном шрифте никакой разницы, но в окне набора комментария у меня они все выглядят по-разному).
+1
там кстати еще будет нюанс с кириллицей, получится на одну клавишу 3 символа, мне кажется это будет неудобно обыным пользователям типа меня
-1
Мне, например, нахрен не сдалась типографская раскладка. Искать на ней символы я буду дольше, чем тыкать в кнопочки на форме.
Учить специально кнопки этой раскладки я, конечно, не буду, а сами они не выучатся — слишком редко нужны(мне).
+ еще наклейки где-то взять надо(на лазать же каждый раз на сайт с описанием и смотреть где что находится).
Учить специально кнопки этой раскладки я, конечно, не буду, а сами они не выучатся — слишком редко нужны(мне).
+ еще наклейки где-то взять надо(на лазать же каждый раз на сайт с описанием и смотреть где что находится).
0
Вам «нахрен не сдалась» типографская раскладка, тем не менее, вы собираетесь тыкать в кнопочки на экране. Я вполне допускаю, что есть огромный пласт людей, которым «нахрен не сдались» кавычки (так же как другим, знаки припинания, например). Но я так же не понимаю, зачем этим людям кнопочки, в которые они будут тыкать.
+2
Спасибо удобная вещь!
0
А сразу js-файлик нельзя было вставить? )
Я скопировал код (делал много раз, все было ок), но кнопок не появилось…
Я скопировал код (делал много раз, все было ок), но кнопок не появилось…
0
А как бы мне вместо "±" смайл добавить? ":)"
0
Почему не указано для каких браузеров предназначен скрипт? Судя по предыдущей версии — то только для Оперы. Я прав?
0
Только для Оперы? Можно легко Экстеншн для Хрома сделать.
0
шапку надо чуть шире ) а то эти пара пикселей режут глаза )
при наведении на кнопки вылезает подсказка — undefined
при наведении на кнопки вылезает подсказка — undefined
0
подсказку поправлю, а вот шапку пошире увы, все берется из стандартных хабровских стилей, получается либо больше, либо на пару пикселей меньше, это в todo…
0
Как поправить в «ответе» пока не нашел, но для основного комментария можно по простому заменить 259 строчку на
Имхо, 95% ширины — не принципиально, и в опере ничему не противоречит, а аккуратность повышается)
Вообще, я сейчас читаю доки к userJs, думаю можно найти доступ к calculated width и все можно будет поправить одной строчкой)
panel.style.width = '100%';
textarea.style.width = '100%';
Имхо, 95% ширины — не принципиально, и в опере ничему не противоречит, а аккуратность повышается)
Вообще, я сейчас читаю доки к userJs, думаю можно найти доступ к calculated width и все можно будет поправить одной строчкой)
0
Хотя нет, вру, принципиально, сейчас обратил внимание, что скроллбар немного обрезается.
0
ширину нужно выставлять только в процентах, потому как это поле вставляется в разные места, которые то шире, то уже, и может все вообще некрасиво выглядеть, оптимальные варианты 95% и 96% но визуально мне больеш нравится «недобор» чем «перебор»
0
Спасибо! Только непонятно, зачем специально сделали «кавычки» отдельно, хабрапарсер все равно подменяет автоматом.
0
А нельзя воткнуть проверку на многоуровневость комментов, чтобы у одиночных комментариев не отрисовывалась надпись «Свернуть»?
И надо наверно определиться со строчными/заглавными буквами в ответить и свернуть. А заодно чуток побольше их разнести в стороны.
И надо наверно определиться со строчными/заглавными буквами в ответить и свернуть. А заодно чуток побольше их разнести в стороны.
0
Опередил)
0
можно, но там будет на кажды камент выполняться ряд лишних действий, и «возможно» он будет подтупливать при большом количестве каментов, я пока не увлекался, в следующей версии обязательно будет проверка
регистр букв и расстояние поменяю
регистр букв и расстояние поменяю
0
Только одно. Проверить, что
На этом топике не тормозит)
replyElements[q].parentNode.parentNode.childNodes[7]!=null
На этом топике не тормозит)
0
Проблема только в том, что при добавлении ответа на безответный комментарий, в него не добавляется ссылка. Но не думаю, что кому-то захочется тут же свернуть свой ответ)
0
=) как бэ вставят создатели хабра один пробельчик и все ;) я буду делать через гетэлемент, на этом топике не тормозит так как тут 30 каментов, есть другие по 300-500, а работа моего скрипта может:
1 — повесить бразер
2 — хабр может не откликаться на клик по ссылке ответить
3 — не сможете ставить оценку
4 — итд работающее на JS
а может и не, так что лучше сперва протестить на большом дереве, и потом уже внедрять :) не хочу делать поспешных нововведений
1 — повесить бразер
2 — хабр может не откликаться на клик по ссылке ответить
3 — не сможете ставить оценку
4 — итд работающее на JS
а может и не, так что лучше сперва протестить на большом дереве, и потом уже внедрять :) не хочу делать поспешных нововведений
0
=) как бэ поменяют создатели хабра один айдишник и все)
А как вы будете через гетЭлемент делать? Чекать все чайлдноды у li с каментом на tagName==ul? Нагрузка, конечно, возрастет.
Мне все-таки видится наиболее правильным вынести сворачивалку в отдельный плагин и уповать на стабильность хабровских шаблонов в угоду скорости)
В любом случае, сворачивалка гораздо менее критичный функционал, а пользователи, если увидят, что она не работает, посмотрят, не появилась ли новая версия. А вообще, если по-крутому, можно раз в день проверять последнюю версию ajax-запросом и выдавать запрос на обновление, если что. Хотя, конечно, нужно сделать отдельную версию без автообновлений, и вообще как следует это продумать.
Кстати, а кто-нибудь вообще думал раньше об проверки наличия обновлений в userJs? По-моему в таких контекстно-зависимых штуках было бы мегакруто (например, всякие скачивальщики музыки из контакта периодически ломаются и приходится самому на сайт лезть)
А как вы будете через гетЭлемент делать? Чекать все чайлдноды у li с каментом на tagName==ul? Нагрузка, конечно, возрастет.
Мне все-таки видится наиболее правильным вынести сворачивалку в отдельный плагин и уповать на стабильность хабровских шаблонов в угоду скорости)
В любом случае, сворачивалка гораздо менее критичный функционал, а пользователи, если увидят, что она не работает, посмотрят, не появилась ли новая версия. А вообще, если по-крутому, можно раз в день проверять последнюю версию ajax-запросом и выдавать запрос на обновление, если что. Хотя, конечно, нужно сделать отдельную версию без автообновлений, и вообще как следует это продумать.
Кстати, а кто-нибудь вообще думал раньше об проверки наличия обновлений в userJs? По-моему в таких контекстно-зависимых штуках было бы мегакруто (например, всякие скачивальщики музыки из контакта периодически ломаются и приходится самому на сайт лезть)
0
я хотел через getElementsByTagName но там поддетей возвращает, так что пока циклом обойдусь… кстати чаще меняют структуру чем айдишники и классы :)
мне не нравится концепция userJS, мне лень их запускать :( плагины удобней, они сами выполняются :)
мне не нравится концепция userJS, мне лень их запускать :( плагины удобней, они сами выполняются :)
0
эмм. Ваш плагин написан как раз по технологии userJS. И выполняется сам, при загрузке страницы. Разве нет?)
0
в опере 2 типа userJS первый цепляется на тублар, как во всех других браузерах, а второй грузится автоматом, вот первый мне и не нравится, те что кроссбраузерные
0
пока будет с циклом, если будет тупить, буду думать, вроде бы пока нормально
0
воткнул
0
Еще неплохо было бы убрать ссылку «свернуть» для комментариев, не имеющих ответов.
*да и вообще, имхо было бы логичнее разнести редактор и сворачивалку на два плагина
*да и вообще, имхо было бы логичнее разнести редактор и сворачивалку на два плагина
0
У меня вываливается ошибка:
Javascript User JS compilation Syntax error C:\Program Files\Opera\profile\userjs\habrButtons.js: line 135 of User JS script : Expected token: ')' =\"red\">"") !== -1) ? lc.substr(lc.lastIndexOf("<font color=\"red\">"")) : null; -------------------------------------------------^
0
залейте скрипт по прямой ссылке, я глупость делал что выложил его на сайте исходников, там преобразовали в " (\«red\»>"") и получилась вот такая двойная ковычка, в ней и бок )
прямая ссылка
я ее постепенно обновляю, так что иногда заходите если все будет хорошо, мож обновиться захотите :)
прямая ссылка
я ее постепенно обновляю, так что иногда заходите если все будет хорошо, мож обновиться захотите :)
0
ну еще шапку добавите, чтоб по канонам )
// ==Userscript==
// @name xxx
// @version xxx
// @date xxxx-xx-xx
// @author xxx
// @download xxx
// @include xxx
+1
автор шапку добавил, но самый главный пункт include — забыл. Да и переименновать в *.user.js как уже ниже сказано
0
и первую строчку переименовал, хотя не надо ), так и должно быть "// ==Userscript=="
0
не переименовал, так как есть небольшие расхожденя между браузерами, и сразу он не заработает в других, если следующая версия будет кроссбраузерная, обязательно переименую
0
Переименуйте на *.user.js что бы Chrome и FF сами ставили крипт
0
Он все равно с Хромом пока несовместим.
0
Тогда я думаю стоит написать для какого браузера скрипт, и почему нельзя сделать кроссплатформенный?
0
Чтобы Хром и Лиса стали их понимали надо добавить полей в заголовке. возможно даже сам скрипт даже допиливать не придётся
0
Хром и ФФ может и подхватят автоматом, за то Опера перестанет его понимать. Какой-то глюк присутствует при подхватывании скриптов с
.user
в имени файла.0
{ type: 'image', src: 'http://www.picamatic.com/show/2009/11/29/09/36/6125202_20x20.png', title: 'Quote', text: '<blockquote>?</blockquote>', },
+1
я специально не вставлял кнопок, получающих изображения из других сайтов, все берется только из хабра, остальные кнпочки на совести пользователей, измененя не запрещаются, а даже поощряются
0
Честное спасибо!
0
Кстати, если автор против использования картинок для кнопочек с других доменов, почему бы не использовать base64? )
0
Подскажите, что я делаю не так?
1. Сохранил C:/userJs/habr.user.js в UTF-8
2. Прописал C:/userJs в опциях оперы. Включил консоль при ошибках.
3. При перезагрузке страницы никакого тулбара и ошибки:
1. Сохранил C:/userJs/habr.user.js в UTF-8
2. Прописал C:/userJs в опциях оперы. Включил консоль при ошибках.
3. При перезагрузке страницы никакого тулбара и ошибки:
0
это не ошибки, это замечания хабра а не тулбара, они обычно не влияют на работу =)
сходу сказать в чем ошибка затрудняюсь, может это не весь список ошибок, может есть другие, которые прояснят ситуацию?
сходу сказать в чем ошибка затрудняюсь, может это не весь список ошибок, может есть другие, которые прояснят ситуацию?
0
консоль отключи и попробуй без нее, тулбара нет? Файл сам нормально сохранён?
0
Так я ж чего и включил консольку — потому что тулбара не было.
Что значит нормально? Ctrl+C+V в Notepad++, Convert to UTF-8 without BOM, Save. Символы при этой процедуре не пострадали.
Что значит нормально? Ctrl+C+V в Notepad++, Convert to UTF-8 without BOM, Save. Символы при этой процедуре не пострадали.
0
ошибок в консоли точно не было? это те что с красным крестиком )
0
Нет. Только ворнинги, которые на скрине.
И Опера ж зараза никаких комментариев к ворнингам не пишет. Где? Почему?
И Опера ж зараза никаких комментариев к ворнингам не пишет. Где? Почему?
0
бр )) проблема с именем ) habr.user.js не корректное ) habruser.js будет корректно. Видимо опера немного некорректно определяет расширение, никому не лень багрепорт сделать?
+2
Это капец. Воистину спасибо за наводку. Я был свято уверен, что должно работать. Тем более учитывая то, что я раньше уже подключал юзерскрипты к более старой версии оперы с именами файлов .user.js
0
тогда с вас багрепрот ) bugs.opera.com
0
И кстати вся магия только в
Скрипт с именем habr.comment.js подхватился.
.user
.Скрипт с именем habr.comment.js подхватился.
0
Возникла идея прикрутить типограф от Spearance. Но там есть несколько нюансов для рассмотрения… Есть мысль, что должен получиться следующий маневр:
— у себя на сайте находится прокси, который может общаться с веб-сервисом типографа посредством POST и формировать ответ для тулбара.
— тулбар делает JSONP запрос на прокси и получает оттипографированный текст.
Тут только несколько вопросов:
1. Разрешено ли будет userJS-скрипту произвести JSONP запрос?
2. Насколько это будет тормозить?
3. Не накроет ли проксю или веб-сервис типографа хабраэффектом? :)
Второй и третий вопросы риторические и больше относятся к проверяемым опытным путем. А вот на первый вопрос не знает ли кто ответ?
— у себя на сайте находится прокси, который может общаться с веб-сервисом типографа посредством POST и формировать ответ для тулбара.
— тулбар делает JSONP запрос на прокси и получает оттипографированный текст.
Тут только несколько вопросов:
1. Разрешено ли будет userJS-скрипту произвести JSONP запрос?
2. Насколько это будет тормозить?
3. Не накроет ли проксю или веб-сервис типографа хабраэффектом? :)
Второй и третий вопросы риторические и больше относятся к проверяемым опытным путем. А вот на первый вопрос не знает ли кто ответ?
0
=) я просто хотел сделать кнопочки для удобства написания каментов, и сворачивание ненужных веток каментов, типограф более нужный при создании топиков, но для этих целей есть хабра-редактор, хотя он и подглючивает с подсветкой кода, еще проблемма в кросбраузерном аяксе, в принципе на данный момент я знаю только один способ — вставка скрипта в тело документа, но проблемма в том что результат должен быть валиндым JS кодом, иначе возникает ошибка
0
еще проблемма в кросбраузерном аяксе
Как-то так:
/* Создание нового объекта XMLHttpRequest для общения с Web-сервером */
var xmlHttp = false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTT");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTT");
} catch (e2) {
xmlHttp = false;
}
}
@end @*/
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
+1
ну виджетам разрешено к примеру, нужно проверять опытный путём
0
То ли скачивается криво, то ли просто не работает в релизе Оперы 10.50
0
в скрипте в самом низу вместо
document.attachEvent('onload', Toolbar.draw);
ставим
document.addEventListener('DOMContentLoaded', Toolbar.draw)
должно все заработать
document.attachEvent('onload', Toolbar.draw);
ставим
document.addEventListener('DOMContentLoaded', Toolbar.draw)
должно все заработать
0
Не работает :( Но могли бы Вы залить полный скрипт на userscripts.org? У меня все равно ощущение, что скрипт скачивается неправильно
0
я позже напишу, надо будет протестить его в опере новой и выложу ссылку обновленную, ща я сервак переустановил, его на серваке нету
0
onotole.name/html/js/habrButtons.js
пользуйтесь на здоровье :)
пользуйтесь на здоровье :)
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Хабра-редактор комментариев ноль.два