2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 04:26 
Заслуженный участник


26/07/09
1559
Алматы
Когда? В теме «Атрибут» у [code] cepesh уже обещал это сделать.

Действительно, в разделе (форуме) "программирование" было бы гораздо больше порядка если бы публикуемые фрагменты кода оформлялись соответствующей подсветкой. Необязательно добавлять поддержку многих языков, достаточно мэйнстримовых и некоторых академических, например C/C++, pascal, некоторые диалекты asm (x86 хотя-бы), неплохо бы lisp, python, basic, php, perl, и sql.

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

Откликнитесь! Спасибо!

P.S.: Если на данный момент нет технической возможности реализовать подсветку синтаксиса для программистов, добавьте хотя-бы аналог тега quote с моноширинным шрифтом (гарнитура типа Курьер) и сохранением префиксных пробельных символов, что позволило бы осуществлять подсветку своего кода вручную (написав простенькую программульку/скрипт).

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 04:47 
Основатель
Аватара пользователя


11/05/05
4312
прикручу

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 04:50 
Заслуженный участник


26/07/09
1559
Алматы
Спасибо! Буду ждать. Поверьте, все участники, в профиле которых указана наибольшая активность в форуме "программирование", будут очень рады. Не зря стараетесь.

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 06:58 
Основатель
Аватара пользователя


11/05/05
4312
topic26708.html

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 17:57 
Заслуженный участник


26/07/09
1559
Алматы
2cepesh
Еще раз спасибо, особенно за оперативность. Сто пудов у вас эта "примочка" уже была припасена на случай, если спросят. :)

Теперь о проблемах. При использовании тега syntax отображаемый фрагмент кода обрамляется дополнительными информационными элементами (полями), содержащими некоторые команды для работы с кодом, а также указание используемого языка программирования. Мне кажется (я уверен), что от этих элементов необходимо избавиться. Поясню.

Во-первых, готовые к использованию большие исходники никто на этом форуме не публикует, поэтому команды "свернуть" и "спрятать" не нужны (код для того и выкладывают, чтобы его читали), исходник должен быть по-умолчанию развернут;

Во-вторых, с командой "спрятать" лично у меня имеется проблема, командой "показать" воспользоваться не удается (соответствующая ссылка не "кликабельна");

В-третьих, команды "выделить" и "скачать" также не нужны (еще раз повторюсь, что код выкладывают, чтобы его читали и обсуждали, а непросто копировали, к тому же, обычно в сообщениеях приводят фрагменты на псевдокоде, который вообще "скачивать" бессмысленно);

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

Возможно ли убрать эти излишества? Надеюсь. Спасибо.

P.S.: Понравилась автоматическая нумерация строк, очень удобно будет ссылаться на конкретные участки кода. Есть ещё такой вопрос, вот вы в теме Подсветка синтаксиса выложили список поддерживаемых языков, некоторые из которых выделены полужирным, что это значит?

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 18:12 
Супермодератор
Аватара пользователя


29/07/05
8248
Москва
Circiter в сообщении #261293 писал(а):
Во-первых, готовые к использованию большие исходники никто на этом форуме не публикует, поэтому команды "свернуть" и "спрятать" не нужны (код для того и выкладывают, чтобы его читали), исходник должен быть по-умолчанию развернут;

Во-вторых, с командой "спрятать" лично у меня имеется проблема, командой "показать" воспользоваться не удается (соответствующая ссылка не "кликабельна");

В-третьих, команды "выделить" и "скачать" также не нужны (еще раз повторюсь, что код выкладывают, чтобы его читали и обсуждали, а непросто копировали, к тому же, обычно в сообщениеях приводят фрагменты на псевдокоде, который вообще "скачивать" бессмысленно);

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


Новшество классное, будет очень полезно.

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

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 18:16 
Заслуженный участник


26/07/09
1559
Алматы
Цитата:
Не нужно ничего убирать, это все будет реально полезно.

Приведите, пожалуйста, примеры. Мне кажется от этих кнопочек одни только проблемы. И, кстати, как у вас работает функция "спрятать"/"показать"? Проверьте, если не затруднит.

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 18:22 
Супермодератор
Аватара пользователя


29/07/05
8248
Москва
Circiter в сообщении #261314 писал(а):
И, кстати, как у вас работает функция "спрятать"/"показать"? Проверьте, если не затруднит.


Все функции работают (Firefox).

-- Чт ноя 12, 2009 19:27:44 --

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

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

Указание синтаксиса полезно, не все могут определить любой из 300 языков из контекста. Может, я не знаю этот язык, но интересно, на чем написано.

А главное - места эти две строчки занимают мало и на мой взгляд от сути не отвлекают. Может быть, они будут полезны и не всем, но если кому-то пригодятся, то убирать ни к чему.

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 18:37 
Заслуженный участник


26/07/09
1559
Алматы
Хм, тоже логично.

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 18:42 
Заслуженный участник
Аватара пользователя


01/08/06
3053
Уфа
Отличная вещь! :appl:

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 19:40 
Основатель
Аватара пользователя


11/05/05
4312
Circiter в сообщении #261293 писал(а):
Во-первых, готовые к использованию большие исходники никто на этом форуме не публикует, поэтому команды "свернуть" и "спрятать" не нужны (код для того и выкладывают, чтобы его читали), исходник должен быть по-умолчанию развернут;

Публикуют. Как минимум сегодня видел длинные шаблоны в $\TeX$ническом.
Circiter в сообщении #261293 писал(а):
Во-вторых, с командой "спрятать" лично у меня имеется проблема, командой "показать" воспользоваться не удается (соответствующая ссылка не "кликабельна");

Проверил на Chrome 4 --OK , Opera 10 -- не пашет выделение, FF 3.5 -- OK, IE8 --OK. IE8asIE7 -- плохо себя ведет... Подозреваю, что у вас IE7...
Circiter в сообщении #261293 писал(а):
В-третьих, команды "выделить" и "скачать" также не нужны (еще раз повторюсь, что код выкладывают, чтобы его читали и обсуждали, а непросто копировали, к тому же, обычно в сообщениеях приводят фрагменты на псевдокоде, который вообще "скачивать" бессмысленно);

Не соглашусь. Код не всегда выкладывают для обсуждения. Для примера, опять же, шаблоны в $\TeX$ническом.
Circiter в сообщении #261293 писал(а):
В-четвертых, указание языка программирование излишне и привносит ненужный визуальный шум, язык известен из контекста.

Указание языка программирования подключает соответствующие правила парсинга для этого языка.
Circiter в сообщении #261293 писал(а):
Возможно ли убрать эти излишества? Надеюсь. Спасибо.

Возможно, пользователи IE7 лишатся этих излишеств... Посмотрим. Убрать всегда успеется. Пока я только плюсы вижу.
Circiter в сообщении #261293 писал(а):
Есть ещё такой вопрос, вот вы в теме Подсветка синтаксиса выложили список поддерживаемых языков, некоторые из которых выделены полужирным, что это значит?

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

-- 12 ноя 2009 16:44:34 --

Circiter в сообщении #261293 писал(а):
Еще раз спасибо, особенно за оперативность. Сто пудов у вас эта "примочка" уже была припасена на случай, если спросят. :)

Давно хотел прикрутить. До недавнего времени не было живого GeSHi-мода. После вашего сообщения поискал снова и посчастливилось... Ну а потом часа 3 прикручивал, тестировал и писал FAQ.

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение12.11.2009, 21:37 
Заслуженный участник


26/07/09
1559
Алматы
Цитата:
Возможно, пользователи IE7 лишатся этих излишеств... Посмотрим.

Насколько я понимаю, проблема только в командах "спрятать" и "выделить", т.е. можно только их убрать. Остальные команды вроде бы во всех браузерах работают.

Цитата:
Указание языка программирования подключает соответствующие правила парсинга для этого языка.

Это понятно. Я имел ввиду не возможность автодетектирования языка, а всего-лишь предполагаемую ненужность отображения названия языка в блоке с кодом в уже готовом сообщении. Хотя это не такая-уж и беда, может кому-то и поможет не запутаться.

В общем-то, я с вами и с PAV'ом согласен, если что-то себя не оправдает убрать-то потом всегда можно будет. Честно говоря, я бы даже и не начал разговор о ненужности дополнительных команд, просто межбраузерная несовместимость настроение подпортила. :)

 Профиль  
                  
 
 Re: Подсветка синтаксиса в теге code для программистов
Сообщение13.11.2009, 15:39 


29/09/06
4552
Circiter в сообщении #261293 писал(а):
Во-первых, готовые к использованию большие исходники никто на этом форуме не публикует, поэтому команды "свернуть" и "спрятать" не нужны (код для того и выкладывают, чтобы его читали), исходник должен быть по-умолчанию развернут;
...
В-третьих, команды "выделить" и "скачать" также не нужны (еще раз повторюсь, что код выкладывают, чтобы его читали и обсуждали, а непросто копировали,

Circiter,

хотя Вас уже переубедили (или почти переубедили), я добавлю.

Код, выложенный мной в теме Алгоритм правильного замыкания плоской кривой "розы" --- готовый к использованию исходник, для обсуждения не предназначенный (я бы тогда написал подробнее и аккуратнее). Хватает развёрнутых первых пяти строк, из которых видно главное: обсуждавшиеся в задачке параметры m=5, n=3 можно произвольно менять.

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

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 13 ] 

Модераторы: cepesh, Forum Administration



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group