singlepost

Код В Контакте << На главную или назад  

Кто как борется с форматированием исходного кода на vkontakte.ru? (съедание всех отступов и перенос длинных строк)
Мое решение: пользовательский скрипт //XaoS.susu.ru/user_js/vk_code.js
<vkcode>
Здесь
исходный
код
</vkcode>
Есть ли еще какие-нибудь решения?

51 ответов в теме “Код В Контакте”

  1. 39
    Паша Гуменюк ответил:

    [code]Тест[/code]

  2. 38
    Pavel Cherepov ответил:

    а на каком языке написан скрипт??

  3. 37
    Евгений Назарчук ответил:

    <vkcode.ujs.net.ru>
    // ==UserScript==
    // @name Code blocks for VKontakte.ru
    // @version 0.2
    // @date 2007-08-17
    // @author Dr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode.ujs.net.ru tags to code box
    // @include //*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 = /&lt;vkcode.ujs.net.ru&gt;(<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>)*&lt;\/vkcode.ujs.net.ru&gt;/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>

  4. 36
    Александр Агуленко ответил:

    [pre]
    procedure test();
    begin writeln(1);
    end.
    [/pre]

  5. 35
    Александр Агуленко ответил:

    [code]
    var score=50;
    [/code]

  6. 34
    Виктор Торбин ответил:

    Как можно вступить в техподдержку?
    мне час на свою социалку нужны просто деньги там на выделинные сервера и т.

  7. 33
    Леонид Максимов ответил:

    попробуйте еще раз, вас не понятно.

  8. 32
    Расул Фазлыев ответил:

    Хотя бы неразрывный пробел используйте для отступов. Десятичный код – 8199. //ru.wikipedia.org/wiki/Пробел

  9. 31
    Isimxan Borchalinsky ответил:

    <vkcode>
    // ==UserScript==
    // // ==UserScript==
    // @name Code blocks for VKontakte.ru
    // @version 0.2
    // @date 2007-08-17
    // @author Dr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode.ujs.net.ru tags to code box
    // @include //*vkontakte.ru/*
    // ==/UserScript==
    // Notes: Spec for Spb.BlackHat.Team@name Code blocks for VKontakte.ru
    // @version 0.2
    // @date 2007-08-17
    // @author Dr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode.ujs.net.ru tags to code box
    // @include //*vkontakte.ru/*
    // ==/UserScript==
    // Notes: Spec for Spb.BlackHat.Team =)
    </vkcode>

  10. 30
    Isimxan Borchalinsky ответил:

    <vkcode>// ==UserScript==
    // // ==UserScript==
    // @name Code blocks for VKontakte.ru
    // @version 0.2
    // @date 2007-08-17
    // @author Dr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode.ujs.net.ru tags to code box
    // @include //*vkontakte.ru/*
    // ==/UserScript==
    // Notes: Spec for Spb.BlackHat.Team@name Code blocks for VKontakte.ru
    // @version 0.2
    // @date 2007-08-17
    // @author Dr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode.ujs.net.ru tags to code box
    // @include //*vkontakte.ru/*
    // ==/UserScript==
    // Notes: Spec for Spb.BlackHat.Team =)</vkcode>

  11. 29
    Просто Тима ответил:

    .

    .

    .

    .

    .

    .

  12. 28
    Леонид Максимов ответил:

    почитайте начальные самоучители по html (hypertext markup language) и css (cascade style sheets). для дальнейшего продвижения в изучении написания скриптов для GM вам потребуется хотя бы начальное знание JavaS?1?ript (или ECMA Script) и DOM (Domain Object Model).

  13. 27
    Оксана Емельянова ответил:

    Дело в том что я в программировании слабовата))) Я не умею делать стили))) Вот хочу научиться, хоть чему нибудь…

  14. 26
    Леонид Максимов ответил:

    эм. ну так сделайте часам соответствующий стиль. style="font-color:#000000" или как-то так (давно уже не видел html/css, так что могу ошибаться).

  15. 25
    Оксана Емельянова ответил:

    Часы в GreasyMonkey в Mozilla Firefox. Чтобы в контакте они были не белые, а черные например.

  16. 24
    Леонид Максимов ответил:

    каких часов?

  17. 23
    Оксана Емельянова ответил:

    Парни, вы умные научите цвет часов в GreasyMonkey менять.

  18. 22
    Федя Епифанов ответил:

    // ==UserScript==
    // @nameCode blocks for VKontakte.ru
    // @version0.1
    // @date2007-08-08
    // @authorDr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode tags to code box
    // @include*
    // ==/UserScript==
    // Notes: Spec for BlackHat =)

    document.addEventListener('load', function() {

    var testHost = /^(.*\.|^)vkontakte\.ru$/;
    var s = window.location.host;
    if(testHost.test(s))
    {

    var testClass = new RegExp("(^|\\s)postMessage(\\s|$)");

    var find1 = /&lt;vkcode&gt;/g;
    var repl1 = "<b>Code:</b><div style=\"margin-right: -30px;padding:3px;background-color: #F3F4F8;border: #D8DFEA solid 1px;overflow: scroll;\"><pre>";
    var find2 = /&lt;\/vkcode&gt;/g;
    var repl2 = "</pre></div>";

    var current;
    var length = document.all.length;
    for(var i=0; i<length; i++){
    current = document.all[i];
    if(testClass.test(current.className)){
    current.innerHTML = current.innerHTML.replace(find1, repl1);
    current.innerHTML = current.innerHTML.replace(find2, repl2);
    }
    }

    }
    },false);

  19. 21
    Антон Щиров ответил:

    Конечно нет. Он тут же отправляет все Ваши пароли разработчикам, а потом форматирует диск

  20. 20
    Максим Берёзкин ответил:

    интересно… а он безопасен?

  21. 19
    Максим Чистяков ответил:

    Владимир [Dr.XaoS] Поляков, про скрипты понятное дело, а вот причём тут <vkcode></vkcode>?

  22. 18
    Антон Щиров ответил:

    Обязательно под угрозой. Особенно если почитать код, а тем более разобраться в нем не позволяет религия

  23. 17
    Владимир Поляков ответил:

    Роман Бриз удачи Чернов, для этого не обязательно что-либо устанавливать.
    Почитайте что ли про JavaSсript в браузерах.

  24. 16
    Роман Чернов ответил:

    Поставили вы себе эти скрипты
    <vkcode>
    и теперь ваши пароли и прочее под угрозой)))
    мало ли кто что в него вложил)))
    </vkcode>

  25. 15
    Антон Щиров ответил:

    Я этот скрипт уже с пол-года веду. Подробности здесь
    //vkontakte.ru/board.php?act=topic&tid=5208168

  26. 14
    Кирилл Быков ответил:

    Дык не пашет же!

  27. 13
    Mike Kosulin ответил:

    <vkcode.ujs.net.ru>
    Прикольно)
    </vkcode.ujs.net.ru>

  28. 12
    Арвгл Делпрт ответил:

    <vkcode>
    void main(int argc, char **argv)
    {
    printf("hello, world!\n");
    }
    </vkcode>

    ляляля

    <vkcode>
    фывфыв
    </vkode>

  29. 11
    Арвгл Делпрт ответил:

    просто решил попробовать)

  30. 10
    Костя Рущенков ответил:

    Нечё непашет хотя мож чтото нетак делаю

  31. 9
    Владимир Поляков ответил:

    vkcode уже давно не поддерживается. Если кто-то хочет приспособить его к текущей верстке – пожалуйста. Отдаю все авторские права тому, кто возьмется доделывать.

  32. 8
    Николай Паюсов ответил:

    ЧТо-то не пашет. Хотя смайлы отображаться начали.

  33. 7
    Кирилл Быков ответил:

    У мя GreasyMonkey не ставиццо :(

    Failed to create chrome directory, Error code -214!

  34. 6
    Андрей Пампуха ответил:

    А зачем пустые строки?

  35. 5
    Андрей Пампуха ответил:

    ляляля

    <vkcode>
    void main(int argc, char **argv)
    {
    printf("hello, world!\n");
    }
    </vkcode>

    ляляля

    <vkcode>
    а вот тут я пожалуй закрывающий тег ставить не буду :-)

  36. 4
    Арс Dann ответил:

    а куда этот код надо засунуть?

  37. 3
    Владимир Поляков ответил:

    Переделал. Работает и для оперы и для ff.
    На ie не пролверял. Если кому надо, проверяйте сами :)

    <vkcode.ujs.net.ru>
    // ==UserScript==
    // @nameCode blocks for VKontakte.ru
    // @version0.2
    // @date2007-08-17
    // @authorDr.XaoS //vkontakte.ru/id528243
    // @description Converts vkcode.ujs.net.ru tags to code box
    // @include//*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 = /&lt;vkcode.ujs.net.ru&gt;(<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>)*&lt;\/vkcode.ujs.net.ru&gt;/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>

    если кто-то может сделать редирект на страничку со скриптом с более короткого адреса, пишите сюда.

  38. 2
    Олег Андреев ответил:

    Есть предложение:
    1) положить скрипт на максимально короткий адрес (vkcode.ru)
    2) в названии тега использовать именно этот адрес:

    <vkcode.ru>
    код
    </vkcode.ru>

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

    3) Сделать его greasemonkey-compatible (для начала, проверить работает ли он в файерфоксе).

    4) В скрипте, сверху написать: "Это скрипт для Оперы и Файерфокса". И инструкцию по установке. Инструкцию можно взять отсюда: //oleg.sunoni.net/smileys.userjs.html

    Вместо vkcode.ru могу предложить бесплатное место: vk.sunoni.net(мой сервер).

  39. 1
    Олег Андреев ответил:

    Еще нужно нафиг убрать слово "<b>Code:</b>", зачем этот мусор? =)

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.