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)

Че же за фигня такая-то, уже и за деньги вернуть домен не предлагают?
Где домен зарегить? al-moscwich-ru? Как-то не звучит. Net? Что-то тоже не нравится... А к чужестранным доменам прибегать не хочу.

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

Зачем тебе вообще домен? Лучше гитхаб как предложил макском, лоркод, или юзерскриптс.орг какой-нибудь.

Мне не только для этого же.
да и не люблю я все эти гитхабы.

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

сейчас в .com большая часть доменов вообше не относятся к коммерческой деятельности

ну и есть еще .org, в нем, кстати, много сайтов, связанных с опенсорцем

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

Это понятно, но все-равно. И не орг я, да.
Эх, tk все-таки хорошо было... Просто, но звучит и не вызывает разрыв шаблона.
Алсо мне кажется приставка al- не лишняя (ибо я Алексей).

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

ну так бери тогда al-moscwich в .name или .me

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

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

Ну и бери .al (Албания, лол). Я тоже себе давно присмотрел регионный домен под инициалы.

Но всё равно CVS куда удобнее. «не люблю» - это детский сад.

Алсо, имхо, флуд в теме с двумя десятками подписчиков не уместен.

Kalashnikov ★★★
()

Апдейт 0.21.2

Всё починил. В том числе панелька работает при изменении профиля, создании/редактировании тем/опросов/новостей/etc и чего-там еще, с чем у Eddy не все ладно.

moscwich
() автор топика
Последнее исправление: moscwich (всего исправлений: 1)
Ответ на: Багрепорт от drull

Это не баг, я пока не представляю себе как можно учесть всю разметку должным образом.
Ну процитируем этот текст - а толку то без разметки (то есть ссылки ссылками не окажутся)?..
Так что пока цитируется текст основного уровня, или выделенный.

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

Апдейт 0.21.2 Всё починил. В том числе панелька работает при изменении профиля, создании/редактировании тем/опросов/новостей/etc и чего-там еще, с чем у Eddy не все ладно.

Попробуй у меня измененный код кнопки [блок-цитата] взять

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

Попробуй у меня измененный код кнопки [блок-цитата] взять

А, так у тебя субтеги разбирает-таки получается... Круто. Да, возьму скорее всего.
Но там подпилить мне надо будет. С позицией курсора, например, безобразие пока получается.
Ах да, рекурсия в такой задаче удивила.

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

Ах да, рекурсия в такой задаче удивила.

Это чтобы не забыть закрыть тег.

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

А ссьілка на комментарий в виде решетки (#) вернется?

Не вижу практического смысла, да и стилистического, в общем-то тоже.

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

Сейчас обратил внимание на то что нет панели при правке своего сообщения, т.е. если забыл тег поставить и хочешь исправить сообщение, то панели там не будет. Сложно будет туда панель запилить?

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

Сложно будет туда панель запилить?

Нет, несложно.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Loki13

+ daemonpnz, подправил, качайте либо с дропбокса, либо hg clone с сосфоржа.

Починил:

  • глюк с исчезновением панели при правке сообщений
  • подправил форматирование вставляемых через панель тегов [quote] и [code]
  • подправил действие кнопки [list]: теперь если что-нибудь выделить, а потом нажать [list], выделение поместится в список, перед каждой строкой добавится [*]
  • при нажатии на [#] в текст вставляется ссылка на это сообщение, а внутрь помещается выделенный текст
Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Лучше б рядом с решёткой кнопочку сделал. А то вдруг потребуется скопировать ссылку на сообщение, а там скрипт.

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

Пофиксил.

daemonpnz

А то вдруг потребуется скопировать ссылку на сообщение, а там скрипт.

Ссылка копируется, т.к. это — обычная гиперссылка, просто на нее еще и обработчик повешен.

А чтобы просто обновить страницу, жамкай [Ссылка].

Eddy_Em ☆☆☆☆☆
()

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

ну или это только я такой криворукий :(

BMX ★★☆
()
Последнее исправление: BMX (всего исправлений: 1)
Ответ на: комментарий от BMX

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

У меня ни разу не было. Видимо случайно неправильно тыкал.

HerrWeigel ★★★★
()

Сделай пожалуйста опциональную автоматическую замену ненавистных елочек на нормальные кавычки.

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

Вместо строк 150-151 попробуй

		if (!isNaN (i)) {
			mps[i].innerHTML = mps[i].innerHTML.replace (/<br\/?>(?![\n\r])/g, "<br>\n");
			mps[i].innerHTML = mps[i].innerHTML.replace (/[«»„“]/g, '"');
		}

moscwich
() автор топика
5 марта 2013 г.

Использую Opera. Имею странный факт: на некоторых комментариях имеется панель

Ответ на: комментарий] [юзер] [блок-цитата] [цитата от

, а на некоторых - нет. Например, вот в этой теме над комментариями Eddy_Em то есть такая «шапка», то её нет.

Где искать проблему?

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


Пять лишних переводов строк.
Да. Работает.

С этим апдейтом тоже наверняка все работало бы. Ну, форк так форк, тогда далее не ко мне.



Значит у меня была не самая последняя версия скрипта.
Спасибо за информацию.

blackst0ne ★★★★★
()

http://dl.dropbox.com/u/9075060/LOR-panel(tango).user.js

Форк Eddy_Em(от 13.02.2013) со стилем tango.

//немного поправил отображение даты(у меня кодировка сбивалась).

- Tt[T].innerHTML = aDate.toLocaleDateString() + " " + aDate.toLocaleTimeString();
+ Tt[T].innerHTML = aDate.format("dd.mm.yyyy HH.MM.ss");

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

Loki13 ★★★★★
()
Последнее исправление: Loki13 (всего исправлений: 1)
Ответ на: комментарий от moscwich

Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'wrtSel' lor.user.js:200
Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'wrtSel' lor.user.js:234
2 Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'wrtSel' lor.user.js:200
4 Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'wrtSel'
Uncaught TypeError: Object #<HTMLTextAreaElement> has no method 'wrtSel' lor.user.js:254
Uncaught TypeError: Cannot set property 'selectedIndex' of undefined

Вот, что сыпется в консоль хрома, если пробовать кнопки тыкать.

cipher ★★★★★
()
Последнее исправление: cipher (всего исправлений: 2)
Ответ на: комментарий от moscwich

Подтверждаю поломку, симптомы те же. Mozilla/5.0 (X11; Linux x86_64; rv:20.0) Gecko/20100101 Firefox/20.0 SeaMonkey/2.17, скрипт отсюда, white2.

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