Сервис обмена кодом

Бывало так, что вам нужно быстро показать кому-то свой код, но опубликовать его негде, так как популярные сервисы просто не поддерживают раскраску кода 1С?
Теперь решение есть!

Если вы пишите не только на 1С, то вам наверняка знаком такой сервис, как pastebin или его аналоги.  К сожалению ни он, ни его аналоги, не поддерживают раскраску кода 1С. Пришлось написать свое, тем более что для создания proof of concent не потребовалось и получаса. Получилось без блэкджека и куртизанок, но в какой-то степени это отличает от конкурентов (а они есть, как показывает обсуждение).

Итак, ключевые особенности сервиса paste1c:

  1. Максимально аскетично. Внешний вид так же просто, как и выполняемые функции.
  2. Это не сервис для обсуждения вашего кода с другуми людьми. Ключевая задача — получения приватных ссылок, которые удобно кинуть в беседу в том же скайпе или jabber’e.
  3. Корректное отображения на мобильных устройствах. Код должен оставаться форматированным и читаемым, даже если вы смотрите его во время поездке в метро домой.
  4. Ваш код не хранится вечно и будет удален в течении суток. 

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

UPDATE 2024-07-03:

  1. Сервис переехал на новый домен http://paste1c.ru. Старый адрес так же доступен в качестве зеркала.
  2. Новый механизм раскраски. Теперь даже директивы форматируются корретно — мелочь а приятно.
  3. Поддержка мобильных устройств. Да, по началу ее не было Tongue Out
  4. Интервал хранения данных увеличен с 1 часа до суток. 

UPDATE 2024-07-10:

Добавлена возможность получать код в виде картинки (например, для вставки в электронные письма). Для этого на странице с кодом есть специальная пиктограмма. Либо можно получить рендер по специальной ссылке вида http://paste1c.ru/<ID>/render, где <ID> — уникальный идентификатор вашего фрагмента кода.

Формирование картинок поддерживает указание дополнительных параметров:

  1. width — ширина результирующего изображения. Допустимы значения от 100px до 2000px. По умолчанию 600px.
  2. zoom — коэффициент масштабирования. Допустимы значения от 0.1 до 3. По умолчанию 1.
  3. quality — качество изображения. Допустимы значения от 1 до 100. По умолчанию 50.
  4. tabsize — размер табуляции (в пробелах).  Допустимы значения от 1 до 10. По умолчанию 4.

Параметры передаются в GET запросе. Например: http://paste1c.ru/<ID>/render?width=600&zoom=2&tabSize=8

А вот пример того, как все выглядит с параметрами по-умолчанию:

Пример отрисовки кода

 Заранее хочу ответить на вопрос: «А зачем мне отрисовка кода, если я сам могу сделать Print Scr из конфигуратора?». Конечно можете! Но в случае использования сервиса не придется ничего обрезать, автоматически сформируются переносы под заданный размер изображения, а так же можно получить единое изображение с кодом, который по-умолчанию у вас просто не влезет на экран (в высоту). Так что пробовать всем!

22 Comments

  1. dj_serega

    И себе код в папочку на сервере? 🙂

    Reply
  2. nSpirit2

    Ну а для тех у кого есть снегопад предлогаю в дополнение к этому замечательному сервису еще и небольшой скрипт который позволит вам шарить код из конфигуратора по Ctrl + Shift+S ну или тому сочетанию которое вам больше по душе 🙂

    Reply
  3. Infactum

    (1) dj_serega, Конечно! И на http://govnokod.ru/ выложу.

    Ну в целом, если кого-то техническая сторона реализации интересует, то данные хранятся в Redis и у ключей выставлен expire. Поэтому переживать за ваши данные смысла нет. Да и не думаю, что кто-то туда целую конфигу постить собирается 🙂

    Reply
  4. insurgut

    Эх, ничего вы не понимаете — код надо скринить и картинкой показывать 😉

    Reply
  5. nSpirit2

    (4) insurgut, Ога фоткать на телефон и посылать по ммс 🙂 Думаю это дальнейшее развитие проекта

    Reply
  6. kser87

    можно добавить простую строку для ввода названия кода? Кусками кода меняемся часто и у каждого «кусочка» есть свое оригинальное имя.

    Reply
  7. Infactum

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

    Reply
  8. webester
    К сожалению, специализированные сервисы не поддерживают раскраску кода 1С

    Мой специализированный сервис http://www.1c-cod.ru/ поддерживает раскраску кода 1С 🙂 уже как несколько лет. Работает через pygments, c помощью допиленных правил. Хочу уйти на highlightjs но все никак руки не соберутся.

    Reply
  9. webester

    (6) kser87, У меня можно 🙂 добавить название, описание, добавить коммент через дискус, если регаться там не лень, ссылки живут всегда на данный момент, может через какое то время, анонимный код, который никто не смотрит начнет умирать с годами, но пока время хранения кода не ограничено.

    Reply
  10. ZOMI

    С другом можно и cf поделиться. C приятелем .st. С коллегами через хранилище…

    Reply
  11. eugeniezheludkov

    ещеб ктонибудь http://instacod.es/ адаптировал для 1с. Вводишь код, а на выходе имеешь ссылку на картинку, с красиво (3д плюшечки + куча эффектов) оформленым кодом

    Reply
  12. webester

    (11)Подозреваю единственный «ктонибудь» это только автор самого http://instacod.es/

    Reply
  13. kser87

    (9) webester, спасибо, попробую

    Reply
  14. webester

    (13)Если понравится, пожалуйста пишите по контактам на сайте, это будет для меня стимулом развивать функционал.

    Reply
  15. Infactum

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

    Reply
  16. nSpirit2

    (15) Отличное обновление то что нужно 🙂

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

    Reply
  17. dj_serega

    А сделайте кнопулину для получения ссылки на картинку. 🙂

    Reply
  18. Infactum

    (17) dj_serega, так есть же кнопка в правом верхнем углу страницы с кодом. Или я чего-то не понимаю.

    Reply
  19. nSpirit2

    (18) Она не ссылку возвращает а картинку скачивает а нужна именно ссылка на картинку 🙂

    Reply
  20. gruk

    Понравилось. Для удобства обсуждения кода еще бы номера строк прикрутить, но чтоб они при копировании кода в буфер не участвовали.

    Reply
  21. BlizD

    «В ближайших обновлениях планирую добавить подсветку синтаксиса для запросов»

    А ближайшее время уже наступило?=)

    Не хватает такой подсветки для запросов.

    Reply
  22. Infactum

    (21) BlizD,

    Ближайшее время уже давно прошло. Скажу честно, руки не дошли довести проект до ума.

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

    В целом я собираюсь на гитхабе все опубликовать, как только время появится, а там видно будет.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *