LINUX.ORG.RU

LORCode Tools: панель тегов и цитирование выделенного

 


21

29

Скрипт добавляет панель тегов над формами ответа/треда/профиля/etc.
Кроме тегов на панели есть специальные функции:

  • «brs» добавляет [br] к переводам строк;
  • «fix», а-ля викификация: превращает (c) в ©, (f) в £, " - " в " — " и еще много;
  • «deltags-in» снимает крайнее (внешнее) обрамления тегами в выделенном.

Добавляет ссылки сверху постов:

  • «блок-цитата» вставляет выделенный текст (или все сообщение) в тегах [quote];
  • «цитата» вставляет текст, добавляя в начало каждой строки стрелочки цитирования (>);
  • «юзер» вставляет обращение через тег [user] к автору соответствующего поста.

Для установки скрипта в Firefox вам необходимо расширение Greasemonkey, по ссылке на скрипт будет предложено установить его.
В Opera смотрите настройки для сайта >> скрипты, где задается папка JavaScript, в которую и должен быть сохранен скрипт.

Обновления:

  • 03.11.2011: v. 0.1
  • 04.11.2011: v. 0.11
  • 13.11.2011: v. 0.12
  • 14.12.2011: v. 0.13
  • 02.01.2012: v. 0.2
  • 14.04.2012: v. 0.21

Форки:

Официально поддерживается только тема black. Форки любого рода приветствуются.

При обновлениях обновляется все тот же файл, а равно ссылка не меняется (по крайней мере пока). Об обновлениях создаются соответствующие посты в треде, ChangeLog ведется на официальной странице. Рекомендую подписаться на тред.

Скрипт базируется на MultiCodePanel 2 (тоже мой проект) и распространяется на условиях лицензии Creative Commons Attribution 3.0 Unported.

Спасибо за помощь Yareg, спасибо авторам статей «Range, TextRange и Selection», «Учимся писать userscript'ы», «Textarea и управление им с помощью javascript», без вас у меня ничего бы не вышло.



Последнее исправление: moscwich (всего исправлений: 20)

Круто, спасибо!

drull ★☆☆☆
()
Ответ на: комментарий от hor

Или так:

a.insertBefore(a.getElementsByClassName("atag")[0], a.getElementsByTagName("textarea")[0]);
hor
()

Небольшой апдейт - 0.11.1

  • Bugfix: положение панельки при создании тем
  • Убираются всем надоевшие строчки над формой ввода сообщения (остается только одна - со ссылкой на справку по LORCODE)

В расширении для Chrome постом выше включен уже этот апдейт.

Юзерскрипт: http://al-moscwich.tk/data/lor.user.js
Расширение Chrome: http://al-moscwich.tk/data/LORCode%20Tools.crx

moscwich
() автор топика
Ответ на: комментарий от zolden

Перекрасить панельку ты и сам можешь — писал уже где-то тут как именно.
Можешь форкнуть, а я танго не уважаю принципиально, так что сам этого делать не буду.
Или что там еще не так?

moscwich
() автор топика
Ответ на: комментарий от Shaman007

Shaman007

Не могу.

О_о, а есть — кто может?
Просто как бы обычно на форумах модераторы могут править любые посты...

moscwich
() автор топика
Ответ на: комментарий от megabaks

megabaks

а зачем?

Ради значка ;) Если серьезно, подумываю в каталог расширений добавить… Зачем? — just for fun.

moscwich
() автор топика
Ответ на: комментарий от moscwich

В этом форуме - только через базу. Был инцидент когда я что-то исправил задним числом, что Рут или Луговский сочли плевком в сердце дискуссии. Вспомнил: он написл много матюгов как я не прав, а я заменил абзац с ними на слова «я сюда пролил ведро черной краски», чтобы не удалять все.

Shaman007 ★★★★★
()
Ответ на: комментарий от moscwich

moscwich

Если серьезно, подумываю в каталог расширений добавить

а вот это хорошо

megabaks ★★★★
()
Ответ на: комментарий от Shaman007

Т. е. раньше такая возможность была, я правильно понял? А какой-то инцидент (один?!) — причина ее выпила? Двойной facepalm тогда...

moscwich
() автор топика
Ответ на: комментарий от blackst0ne

blackst0ne

Кажется нашёл баг. Сейчас попробую воспроизвести. Форматирование: user line breaks w/quoting

bug test

blackst0ne ★★★★★
()

moscwich

bug: есть выделить сообщение, на которое отвечаешь, и которое состоит из нескольких строк (от двух и больше) с переносами строк, то по клику «[цитировать]» вставляется цитата без переноса строк. См. мой пост выше.

bug: при клике «[цитировать]» курсор перемещается внутрь тега </quote>, хотя по логике он должен быть после </quote><br>

blackst0ne ★★★★★
()
Ответ на: комментарий от blackst0ne

blackst0ne

bug: есть выделить сообщение, на которое отвечаешь, и которое состоит из нескольких строк (от двух и больше) с переносами строк, то по клику «[цитировать]» вставляется цитата без переноса строк. См. мой пост выше.

bug: при клике «[цитировать]» курсор перемещается внутрь тега </quote>, хотя по логике он должен быть после </quote><br>



Актуально для форматирования LORCODE.

blackst0ne ★★★★★
()
Ответ на: комментарий от blackst0ne

blackst0ne

есть выделить сообщение, на которое отвечаешь, и которое состоит из нескольких строк (от двух и больше) с переносами строк, то по клику «[цитировать]» вставляется цитата без переноса строк. См. мой пост выше.

Это не баг, но надо будет профиксить...

blackst0ne

при клике «[цитировать]» курсор перемещается внутрь тега </quote>, хотя по логике он должен быть после </quote>

Разве?

moscwich
() автор топика

v. 0.12 (Based on MultiCodePanel v. 0.22)

Изменения:

  • Bugfix по сосзданию опросов
  • Новые превращения fix
  • Функция deltagsin
  • Функция brs (в опере глючит, поэтому кнопка в ней не показывается)
  • Форма ответа становится шире, а элементы панели группируются
  • При цитировании к переводам строк добавляются теги br
  • В т. ч. upd. 1 of 0.11 (0.11.1):
    • Bugfix: положение панельки при создании тем
    • Убираются всем надоевшие строчки над формой ввода сообщенияд формой ввода сообщения

Ссылка на UserScript не меняется: http://al-moscwich.tk/data/lor.user.js
Ссылка на расширение Chrome не меняется: http://al-moscwich.tk/data/LORCode%20Tools.crx

moscwich
() автор топика
Ответ на: комментарий от Tanger

В 0.11.1 появилась фича, убирающая справку по режимам над формой ввода, она запускалась также и при создании опросов. Фактически это убирало теги font и первые br (они вынесены из font) из form. На странице создания опросов перед этой справкой еще есть формы вариантов ответа и с ними br.

moscwich
() автор топика
Ответ на: комментарий от moscwich

Больше браузеров нет тчк.

luakit. Все работает.

Почему используется strong, em, а не b и i? Место же много занимает..
Реквест на цитирование с
>quoted text

Tanger ★★★★★
()
Ответ на: комментарий от moscwich

Класно.

у меня следуещее поведение: выделяю, нажимаю цитировать ничего не происходит. нажимаю ответить. выезжает форма ответа с нужным текстом. это правильный behaviour?

(GC + crx)*распоследний

есть несколько замечаний по коду. принимаете?

ZuBB ★★★★★
()
Ответ на: комментарий от ZuBB

ZuBB

есть несколько замечаний по коду. принимаете?

Принимаю, конечно. Ну, кстати, да, я правда быдлокодер ;)

ZuBB

у меня следуещее поведение: выделяю, нажимаю цитировать ничего не происходит. нажимаю ответить. выезжает форма ответа с нужным текстом.

Ну правильно. Не вижу особо рациональным делать выезд формы по ссылке цитирования... Хотя может попробую сделать.

moscwich
() автор топика
Ответ на: комментарий от moscwich

это ничего все мы когда-то начинали

так как на лоре используется jquery то по идее можно упростить способ нахождения элемента

  • по id
    document.getElementById('bla')
    
    на
    $("#bla")
    
  • по класу
    document.getElementsByClassName('bla')[0]
    
    на
    $(".bla").get(0)
    
  • по тегу
    document.getElementsByTagName('bla')
    
    на
    $("bla")
    
ZuBB ★★★★★
()
Ответ на: комментарий от moscwich

moscwich

Ну правильно. Не вижу особо рациональным делать выезд формы по ссылке цитирования... Хотя может попробую сделать

думаю опционально вполне можно

ZuBB ★★★★★
()
Ответ на: комментарий от ZuBB

но будьте внимательны. обьект который возвращает jquery не тоже самое что plain dom element

ZuBB ★★★★★
()
Ответ на: комментарий от ZuBB

А ты уверен, что JQuery будет работать из скрипта?
Кстати, там он столько всего всего умеет, емнип, и с выделением даже работает, то тогда весь скрипт переписывать нафиг... Но я его не изучал.

moscwich
() автор топика
Ответ на: комментарий от Tanger

Tanger

Почему используется strong, em

Они идеологически верны. b, i - теги оформления, а strong, em несут еще и смысл (а поисковики его учитывали, раньше, как сейчас - не уверен).

Tanger

Реквест на цитирование с

Думаю, при наличии сабжа, оно не нужно.

moscwich
() автор топика

moscwich
1. А чего он, кстати, не обновляется автоматом в FF? Или для этого надо загружать на userscripts.org?
2. Почему бы не совместить функциональность верхней кнопки «цитировать» и нижней «quote» просто в последней? А то, чтобы отквотить выделенный фрагмент в большом посте, приходится скроллить вверх.
3. Зачем нужно указание на юзера в цитировании, если посты на лоре и так помечаются адресатом? Получается лишнее дублирование текста. А отвечать нескольким людям в одном посте не очень тут принято.

Alsvartr ★★★★★
()
Ответ на: комментарий от Alsvartr

Alsvartr

Почему бы не совместить функциональность верхней кнопки «цитировать» и нижней «quote» просто в последней?

quote нужна сама по себе, пониже кнопку цитирования переместить или продублировать (?), я подумаю.

Alsvartr

Зачем нужно указание на юзера в цитировании, если посты на лоре и так помечаются адресатом? Получается лишнее дублирование текста.

Ничего страшного. А я иногда так делаю: отвечая одному юзеру, привожу цитату другого из поста в котором он отвечал первому. Обычно, выражая свое согласие с цитатой.

Alsvartr

А отвечать нескольким людям в одном посте не очень тут принято.

Это беда.

moscwich
() автор топика
Ответ на: комментарий от moscwich

quote нужна сама по себе, пониже кнопку цитирования переместить или продублировать (?), я подумаю.

Так они же ничем не отличаются, кроме того, что «цитировать» вставляет выделенный текст, если такой есть. Зачем нужны две кнопки?

Это беда.

А по-моему хорошая традиция :)
1. можно всегда прыгнуть к тому посту, на который идет ответ, т.к. он один;
2. поддерживается древовидность дискусии и можно без проблем использовать такие ништяки, как lor treeview (я иногда включаю в больших топиках).

Alsvartr ★★★★★
()
Ответ на: комментарий от Alsvartr

Alsvartr

Так они же ничем не отличаются, кроме того, что «цитировать» вставляет выделенный текст, если такой есть. Зачем нужны две кнопки?

Тег цитирования используется не только для цитирования поста на который отвечаешь.

Alsvartr

А по-моему хорошая традиция :)
1. можно всегда прыгнуть к тому посту, на который идет ответ, т.к. он один;
2. поддерживается древовидность дискусии и можно без проблем использовать такие ништяки, как lor treeview (я иногда включаю в больших топиках).

Зато из-за этого в т. ч. не развиваются достаточно широкие и уютные темы, как на юниксфоруме, например.

moscwich
() автор топика
Ответ на: комментарий от moscwich

Тег цитирования используется не только для цитирования поста на который отвечаешь.

Ясно. Можно просто в quote добавить возможность цитирования выделенного текста, если таковой имеется, не? Хотя в принципе уже и так как есть хорошо.

Alsvartr ★★★★★
()

Спасибоогромноемастер.

nihil ★★★★★
()
Ответ на: комментарий от VirRaa

VirRaa

Это ведь не сложно.

Таки сложнее, чем тебе поставить версию посвежее - это точно. Плюс к тому, мне для отладки нужен тогда FF3, а у меня только свежие опера и хром на линуксе, свежий фф, да и тот в винде, в виртуалке.

moscwich
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.