Кто как борется с форматированием исходного кода на vkontakte.ru? (съедание всех отступов и перенос длинных строк)
Мое решение: пользовательский скрипт http://XaoS.susu.ru/user_js/vk_code.js
<vkcode>
Здесь
исходный
код
</vkcode>
Есть ли еще какие-нибудь решения?
15 августа 2007 в 12:02
Есть предложение:
1) положить скрипт на максимально короткий адрес (vkcode.ru)
2) в названии тега использовать именно этот адрес:
<vkcode.ru>
код
</vkcode.ru>
Это нужно для того, чтобы те, у кого скрипта нет, сразу видели где его можно взять, без лишних инструкций или ссылок.
3) Сделать его greasemonkey-compatible (для начала, проверить работает ли он в файерфоксе).
4) В скрипте, сверху написать: "Это скрипт для Оперы и Файерфокса". И инструкцию по установке. Инструкцию можно взять отсюда: http://oleg.sunoni.net/smileys.userjs.html
Вместо vkcode.ru могу предложить бесплатное место: vk.sunoni.net(мой сервер).
15 августа 2007 в 12:02
Еще нужно нафиг убрать слово "<b>Code:</b>", зачем этот мусор? =)
17 августа 2007 в 20:03
Переделал. Работает и для оперы и для ff.
На ie не пролверял. Если кому надо, проверяйте сами
<vkcode.ujs.net.ru>
// ==UserScript==
// @nameCode blocks for VKontakte.ru
// @version0.2
// @date2007-08-17
// @authorDr.XaoS http://vkontakte.ru/id528243
// @description Converts vkcode.ujs.net.ru tags to code box
// @includehttp://*vkontakte.ru/*
// ==/UserScript==
// Notes: Spec for Spb.BlackHat.Team =)
(function(){
function vkcodeconv() {
var testHost = /^(.*\.|^)vkontakte\.ru$/;
var s = window.location.host;
if(testHost.test(s))
{
var testClass = new RegExp("(^|\\s)(postMessage|note_content)(\\s|$)");
var find1 = /<vkcode.ujs.net.ru>(<br>)*/ig;
var testNotes = /note/;
var testBoard = /board/;
if(testNotes.test(window.location))
var repl1 = "<pre style=\"margin-right: -10px;padding:3px;background-color: #F7F6F7;border: #D8DFEA solid 1px;overflow: scroll;\">";
else if(testBoard.test(window.location))
var repl1 = "<pre style=\"margin-right: -30px;padding:3px;background-color: #F3F4F8;border: #D8DFEA solid 1px;overflow: scroll;\">";
else exit();
var find2 = /(<br>)*<\/vkcode.ujs.net.ru>/ig;
var repl2 = "</pre>";
var current;
var alldivs = document.getElementsByTagName('div');
var length = alldivs.length;
for(var i=0; i<length; i++){
current = alldivs[i];
if(testClass.test(current.className)){
current.innerHTML = current.innerHTML.replace(find1, repl1);
current.innerHTML = current.innerHTML.replace(find2, repl2);
}
}
}
}
document.addEventListener('load', vkcodeconv(), false);
})();
</vkcode.ujs.net.ru>
если кто-то может сделать редирект на страничку со скриптом с более короткого адреса, пишите сюда.
9 апреля 2008 в 19:00
а куда этот код надо засунуть?
19 мая 2008 в 19:01
ляляля
<vkcode>
void main(int argc, char **argv)
{
printf("hello, world!\n");
}
</vkcode>
ляляля
<vkcode>
а вот тут я пожалуй закрывающий тег ставить не буду
19 мая 2008 в 19:02
А зачем пустые строки?
21 мая 2008 в 8:02
У мя GreasyMonkey не ставиццо
Failed to create chrome directory, Error code -214!
21 мая 2008 в 15:00
ЧТо-то не пашет. Хотя смайлы отображаться начали.
21 мая 2008 в 16:05
vkcode уже давно не поддерживается. Если кто-то хочет приспособить его к текущей верстке – пожалуйста. Отдаю все авторские права тому, кто возьмется доделывать.
23 июня 2008 в 22:04
Нечё непашет хотя мож чтото нетак делаю