Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Удобства ресурсов для копипаста

241
29 октября 2009 года
Sanila_san
1.6K / / 07.06.2005
Один хороший человек задумал некий веб-проект, к которому планируется прикрутить копипастер наподобие такого или такого. GUI в этом проекте занимаюсь я, и сразу же возник вопрос по определению того, что такое "удобно" в копипастерах. Выдумывать эвристики самостоятельно не считаю правильным, поэтому меня интересует мнение каждого из тех вас, кто пользуется (или пользовался) такими ресурсами, ну и вообще всякое аргументированное мнение.

Вопрос простой: что, по-вашему, должно быть в удобном копипастере?
5
29 октября 2009 года
hardcase
4.5K / / 09.08.2005
Пастеоргру считаю точкой отсчета.
Неудобства: поле "вставленного" должно иметь моноширинный шрифт.
Выбор способа подсветки ужасен - компоновка языков кошмарна, найти нужный язык в том выпадающем списке нереально.
6
29 октября 2009 года
George
4.1K / / 05.01.2007
последующее редактирование православно чуть менее чем полностью )
87
29 октября 2009 года
Kogrom
2.7K / / 02.02.2008
Цитата: hardcase
Выбор способа подсветки ужасен - компоновка языков кошмарна, найти нужный язык в том выпадающем списке нереально.


Всё намного проще тут:

http://codepad.org/

Но выбор языков маленький. Хотя, может это и правильно.

Там выбор среди языков, которые codepad.org может интерпретировать. В вашем случае можно выбрать наиболее популярные языки в виде радиобаттонов (как в моей ссылке), а остальные языки выбирать с помощью какого-нибудь текстового поля ввода.

241
29 октября 2009 года
Sanila_san
1.6K / / 07.06.2005
А насколько вообще сложно опознать язык автоматически? С языками непростая проблема, их очень много. Выпадающим списком получается плохо. Вообще можно подумать и о том, чтобы автоматически распознавать язык, ну или хотя бы пытаться сделать это. Правда, это наверняка увеличит либо время загрузки интерфейса, либо время отклика. ИМХО, лучшее решение вообще без радиокнопок, но с автоподстановкой языка в поле ввода: автор вставляемого текста всегда знает, на каком языке написан текст.
5
29 октября 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: Sanila_san
А насколько вообще сложно опознать язык автоматически? С языками непростая проблема, их очень много.

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

241
29 октября 2009 года
Sanila_san
1.6K / / 07.06.2005
Хорошо, тогда возникает второй вопрос: как вы (в смысле, господа пользователи :)) указываете язык вставляемого текста? И насколько это вообще надо?
5
29 октября 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: Sanila_san
Хорошо, тогда возникает второй вопрос: как вы (в смысле, господа пользователи :)) указываете язык вставляемого текста? И насколько это вообще надо?


Юзаю пастеоргру, обычно C# выбираю, с ASP.NET хуже - вместо него использую PHP подсветку, ибо ближе она по списку... этот комбобокс использовать ваще нельзя. Автодетект приветствуется - меньше телодвижений.

536
29 октября 2009 года
alex-kniaz
382 / / 07.08.2008
Предлагаю сделать выбор часто используемых языков как в codepad.org (ну радиокнопками на панели) и редко используемые языки вынести в список с возможностью поиска по первой букве. Если надо могу отписать код для подобного варианта.
536
29 октября 2009 года
alex-kniaz
382 / / 07.08.2008
По поводу автодетекта - искать специфические операторы вне ' и " - так часто пишут строки в ЯП.
Т.е. если есть begin .... end то видимо это Delphi или Pascal, если { .... } - ближе к си-подобным языкам, если #<include unitname> видимо, это что-то из сей и так далее.
6
29 октября 2009 года
George
4.1K / / 05.01.2007
хм, а че. сервер ведь может автоматически самые популярные определять и радиобатонить. а экзотика в комбобоксе =)
297
29 октября 2009 года
koodeer
1.2K / / 02.05.2009
Лично для меня одним из критериев удобства любых программ является наличие горячих клавиш. Так неохота снимать руку с клавиатуры и юзать мышку, если есть возможность взять аккорд на клаве. При этом желательно наличие подписей к кнопкам/пунктам меню с указанием горячих клавиш.
6
29 октября 2009 года
George
4.1K / / 05.01.2007
тему читал? =))) речь про ВЕБ-сервис ;)
92
29 октября 2009 года
Тень Пса
2.2K / / 19.10.2006
в чем трабл сделать ВЕБ-сервис с hotkeys? )
6
29 октября 2009 года
George
4.1K / / 05.01.2007
хм. чето я себе такое не представляю.
люди, кто хочет написать на PHP детектор языка? ну или на жаваскрипте, хз
536
29 октября 2009 года
alex-kniaz
382 / / 07.08.2008
Могу написать анализатор на pascal или C или PHP подобность.
Типа
function getLang(text){
var res='';
if(text.indexOf('begin')!=-1){
var res='PASCAL-TYPED';
}
else{
if(text.indexOf('<include')!=-1){
var res='C-TYPED';
}
else{
if(text.indexOf('echo')){
var res='PHP-TYPED';
}
//анализ других языков
if(...){
...
}
else{
var res='UNDEFINED TYPE';
}
}
}
return res;
}

Функция JavaScript. Параметр - код проги. Производит поиск специфических операторов, и возвращает примерный тип языка, если его нашла или UNDEFINED TYPE - если нет.
Конечно анализ глубоким не назовёшь. Плюс надо прикрутить вырезание выражений
в
апострофах, двойных кавычках, знаках /* */ и //...\n гдже ...-любой текст \n-символ перевода строки. Но это регулярами, а как их вертеть в JS я ни бум-бум
6
29 октября 2009 года
George
4.1K / / 05.01.2007
конечно этого мало. надо хороший анализатор. чтобы основные языки умел узнавать. либо вообще без него
536
29 октября 2009 года
alex-kniaz
382 / / 07.08.2008
Я думаю, зная уникальные и часто используемые операторы других основных языков можно переделать вышеописанную схему.
6
29 октября 2009 года
George
4.1K / / 05.01.2007
ага. кто готов переделать и предоставить готовый хорошо работающий анализатор?
536
29 октября 2009 года
alex-kniaz
382 / / 07.08.2008
Или список часто использемых специфических операторов, директив и т.д.
241
30 октября 2009 года
Sanila_san
1.6K / / 07.06.2005
Может копнуть в сторону Geshi? Если она умеет подсвечивать, то наверняка должна уметь парсить.
5
30 октября 2009 года
hardcase
4.5K / / 09.08.2005
Цитата: Sanila_san
Может копнуть в сторону Geshi? Если она умеет подсвечивать, то наверняка должна уметь парсить.


Судя по файлу описания языка используется какая-то унифицированная грамматика.

6
31 октября 2009 года
George
4.1K / / 05.01.2007
Цитата: Sanila_san
Может копнуть в сторону Geshi? Если она умеет подсвечивать, то наверняка должна уметь парсить.


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

241
31 октября 2009 года
Sanila_san
1.6K / / 07.06.2005
Ну так взять из неё список ключевых слов и по ним автодетектить. К тому же мне что-то подсказывает, что там не надо выискивать все слова, достаточно некоторое уникальное множество.
6
31 октября 2009 года
George
4.1K / / 05.01.2007
Цитата: Sanila_san
Ну так взять из неё список ключевых слов и по ним автодетектить. К тому же мне что-то подсказывает, что там не надо выискивать все слова, достаточно некоторое уникальное множество.


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

241
31 октября 2009 года
Sanila_san
1.6K / / 07.06.2005
На самом деле там не надо сравнивать весь текст на наличие вхождений слов из всех словарей. У тебя получится огромная сложность. Лучше проверять первые двадцать слов, по ним достаточно точно можно определить множество языков (а то и сам язык), а там дальше можно подсвечивать текст или по обобщённым правилам, или до первой ошибки подсветки, после которой уточнять язык.
260
01 ноября 2009 года
Ramon
1.1K / / 16.08.2003
Помимо всего прочего если базироваться четко на грамматике языка то можно обломаться с детектом из-за ошибки в тексте. По сему алгоритм детекта - эвристический.

PS: Разве Geshi не тупая подсветка, оно детектить умеет?
PS2: Алгоритм скорее всего будет похож на поиск в тексте ключевых слов, последовательно для каждого из знакомых языков и выбор того языка, чьих ключевых слов в тексте оказалось больше.
241
01 ноября 2009 года
Sanila_san
1.6K / / 07.06.2005
Господа, у этой темы появился форк, поэтому по алгоритму лучше писать туда. Насколько я понял, из удобств в таких ресурсах интересно только сделать приемлемый выбор языка и подходящие шрифты везде где положено. Судя по тому, что сделано в уже существующих ресурсах, для копипастера больше ничего и не надо.:)

Или я ошибаюсь?
6
01 ноября 2009 года
George
4.1K / / 05.01.2007
Цитата: Ramon
PS: Разве Geshi не тупая подсветка, оно детектить умеет?


неа, эт просто Sanila San огород городит :D
в конце концов, кто сказал, что именно в геши нужно искать список характерных слов?

241
05 ноября 2009 года
Sanila_san
1.6K / / 07.06.2005
По ходу обсуждения получается, что пользователям копипастеров из возможностей надо только то, что уже придумано: подсветить код, сохранить ссылку навечно, ну и чтобы выглядело привычно. Или я что-то упустил?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог