Запилил библиотеку CsConsoleFormat для форматирования текста в консоли.
Имеет удобный синтаксис для раскрашивания, переноса текста, таблиц, списков и ещё кучи всего. Понимает юникодовые символы для переносов, неразрывных пробелов и прочего. Можно рисовать в консоли примитивами и DOS-овскими символами для границ. Дружит с решарпером.
Здравствуйте, Athari , Вы писали:
A>Запилил библиотеку CsConsoleFormat для форматирования текста в консоли.
A>Имеет удобный синтаксис для раскрашивания, переноса текста, таблиц, списков и ещё кучи всего. Понимает юникодовые символы для переносов, неразрывных пробелов и прочего. Можно рисовать в консоли примитивами и DOS-овскими символами для границ. Дружит с решарпером.
Как будет выглядеть тетрис с использованием этой библиотеки?
Re: CsConsoleFormat - Форматирование текста в консоли (.NET)
Здравствуйте, Athari , Вы писали:
A>Имеет удобный синтаксис ...
A><Document> A> <Span Color="Red">Hello</Span> A> <Br/> A> <Span Color="Yellow">world!</Span> A></Document>
Не говори больше слова "удобный", вряд ли ты понимаешь его значение!
Re: CsConsoleFormat - Форматирование текста в консоли (.NET)
Здравствуйте, Athari , Вы писали:
A>Запилил библиотеку CsConsoleFormat для форматирования текста в консоли.
A>Имеет удобный синтаксис для раскрашивания, переноса текста,
Ну и зачем это?
Re[2]: CsConsoleFormat - Форматирование текста в консоли (.NET)
Здравствуйте, kov_serg, Вы писали:
_>Как будет выглядеть тетрис с использованием этой библиотеки?
Никак. Библиотека только для одноразового вывода текста.
Забавно, что вопрос про интерактивные консольные приложения возникает первым уже не в первый раз, а библиотека, которая реально реализует интерактив с окошками и кнопочками в придачу (ConsoleFramework) валяется никому не нужная. Наверное, логично интересоваться, что такого прикольного можно сделать в консоли, но эта библиотека предназначена для более приземлённых целей — в первую очередь это раскрашивание вывода консольных утилит, которые часто используются в консоли в интерактивном режиме, особенно для вывода справки по командам.
Здравствуйте, Kolesiki, Вы писали:
A>>Имеет удобный синтаксис ...
A>><Document> A>> <Span Color="Red">Hello</Span> A>> <Br/> A>> <Span Color="Yellow">world!</Span> A>></Document>
K> Не говори больше слова "удобный", вряд ли ты понимаешь его значение!
Ну давай, расскажи мне, как должен выглядеть язык разметки для документов с лейаутами как в WPF и биндингами. Я весь внимание. Я реализовал всё через XAML, который в простейшем случае превращается в HTML 3.2. Если кто не любит XML, то есть альтернативный DSL прямо в C#, который повторяет родной дотнетовый LINQ to XML (System.Xml.Linq.XElement) со всеми схлопываниеями IEnumerable и прочим. В дополнение есть методы-расширения для раскараски строк а-ля npm.js/colors.
Если есть конкретные предложения по синтаксису, а не претензии уровня "HTML — фу" и "XAML — фу", я весь внимание.
Re[3]: CsConsoleFormat - Форматирование текста в консоли (.NET)
Почему следующий? Библиотека уже умеет выводить изображения в консоль. Правда субсимвольным сглаживанием похвастаться не могу, но над этим ведётся работа.
Поддержку графики, RTF и XPS я сделал ради прикола, "чтобы было" (да и кода это много не потребовало), но если кому-то надо...
Ну вон, на Stack Overflow у вопроса про картинки в консоли 20 000 просмотров, 75 плюсов, 7 ответов и 3 баунти (конкурса в терминах RuSO). Может, кому-то действительно надо?
Некоторые консольные приложения рисуют FIGlet в консоли при выводе справки. Не перевелись ещё ценители искусства.
Re[3]: CsConsoleFormat - Форматирование текста в консоли (.N
Здравствуйте, Athari , Вы писали:
A>Никак. Библиотека только для одноразового вывода текста.
A>Забавно, что вопрос про интерактивные консольные приложения возникает первым уже не в первый раз
Лучшая интерактивня консоль у сисек https://www.youtube.com/watch?v=-zvihHxrfzM&t=202
И цвет там не главное
Re[4]: CsConsoleFormat - Форматирование текста в консоли (.N
Неправильно. В циске сделали, чтобы консоль выглядела как говно, чтобы те, кто заглядывает из-за спины сисадмина, не подумали, что тот занимается чем-то весёлым. Сисадминам сложно, им нужно репутацию поддерживать, безделье оправдывать.
У программистов же такой проблемы нет. Раскрашенный код — это норма. Поэтому и в прочих инструментах не нужно бояться сделать красиво и удобно.
Скажем, вы используете подсветку синтаксиса при редактировании кода? Или пользуетесь встроенным в винду Блокнотом для редактирования, потому что "цвет — это не главное"? И цисковый интерфейс Блокнот лучше всего повторяет, а не всякие модные Sublime Text или — упаси боже! — богомерзкие IDE типа Visual Studio с бесконечными подсказками и рефакторингами. Ещё и противная подсветка синтаксиса не отключается, приходится менять цвет каждого элемента на чёрный в настройках... И почему там не Courier New по умолчанию, как в циске?! Изверги, заставляют смотреть на Consolas!
Re[5]: CsConsoleFormat - Форматирование текста в консоли (.N
A>Неправильно. В циске сделали, чтобы консоль выглядела как говно, чтобы те, кто заглядывает из-за спины сисадмина, не подумали, что тот занимается чем-то весёлым. Сисадминам сложно, им нужно репутацию поддерживать, безделье оправдывать.
Вы не правы, она очень продуманно сделана.
A>У программистов же такой проблемы нет. Раскрашенный код — это норма. Поэтому и в прочих инструментах не нужно бояться сделать красиво и удобно.
Есть же графика, зачем издеваться над консолью. Она позволяет цепляться к устройству по двум проводам (RX,TX) и взаимодействовать с ним.
Красиво и удобно разные задачи более того с точек зрения пользователя и программиста они могут оцениваться по разному.
A>Скажем, вы используете подсветку синтаксиса при редактировании кода? Или пользуетесь встроенным в винду Блокнотом для редактирования, потому что "цвет — это не главное"? И цисковый интерфейс Блокнот лучше всего повторяет, а не всякие модные Sublime Text или — упаси боже! — богомерзкие IDE типа Visual Studio с бесконечными подсказками и рефакторингами. Ещё и противная подсветка синтаксиса не отключается, приходится менять цвет каждого элемента на чёрный в настройках... И почему там не Courier New по умолчанию, как в циске?! Изверги, заставляют смотреть на Consolas!
Причем тут шрифт. Циска по ком порту цепляется или по сети и какой шрифт зависет от вас DroidSansMono, Courier или что еще.
И раскраска текста тут как собаке пятая нога. Ваши цвета в консоле да еще в таком избыточном варианте мало кому нужны.
Для ценителей прекрасного есть 10бит цвет, 5К мониторы и хорошие видюхи, а вы им консоль.
Здравствуйте, kov_serg, Вы писали:
_>Вы не правы, она очень продуманно сделана.
И что при демонстрации работы приходится дёргать скроллбар из-за того, что страница у окошка и страница у реальной консоли разного размера — это тоже продумано? И что шрифт по умолчанию используется не из стандартных настроек (это Windows 7, там есть Consolas), а Courier New, который морально устарел лет 15 назад — это тоже продумано?
Меня не интересует, что, как и к чему подключается. Там всё может быть хоть трижды круто. Я вижу, что GUI в видео — отстой. Оцениваю я именно это.
_>Есть же графика, зачем издеваться над консолью. Она позволяет цепляться к устройству по двум проводам (RX,TX) и взаимодействовать с ним.
То есть Git в консоли вы никогда не пользуетесь? Всегда жмёте кнопочки в каком-нибудь GUI? Вы командной строкой пользуетесь только через обёртки вроде этого цискогуя, как минимум?
_>ps: Кстати если надо что-то быстренько поправить вот это блокнот https://xhmikosr.github.io/notepad2-mod лучше всяких монструозных IDE
Зачем этим огрызком от программы пользоваться? Есть же Notepad++.
Здравствуйте, Athari , Вы писали:
A>И что при демонстрации работы приходится дёргать скроллбар из-за того, что страница у окошка и страница у реальной консоли разного размера — это тоже продумано?
Жаль что вы не видите сути проблемы.
A>И что шрифт по умолчанию используется не из стандартных настроек (это Windows 7, там есть Consolas), а Courier New, который морально устарел лет 15 назад — это тоже продумано?
А арабские цифры не устарели?
A>Меня не интересует, что, как и к чему подключается. Там всё может быть хоть трижды круто. Я вижу, что GUI в видео — отстой. Оцениваю я именно это.
Это не GUI это CLI. Если вам надо сделать красивцю форматированную выдачу, то обычный html подходит почти во всех случаях. И любой шаблонизатор с этой проблемой справляется более чем хорошо.
_>>Есть же графика, зачем издеваться над консолью. Она позволяет цепляться к устройству по двум проводам (RX,TX) и взаимодействовать с ним. A>То есть Git в консоли вы никогда не пользуетесь? Всегда жмёте кнопочки в каком-нибудь GUI? Вы командной строкой пользуетесь только через обёртки вроде этого цискогуя, как минимум?
bash
_>>ps: Кстати если надо что-то быстренько поправить вот это блокнот https://xhmikosr.github.io/notepad2-mod лучше всяких монструозных IDE A>Зачем этим огрызком от программы пользоваться? Есть же Notepad++.
Не надо гнать волну, этот блокнот уделывает notepad++
Re[8]: CsConsoleFormat - Форматирование текста в консоли (.N
Здравствуйте, kov_serg, Вы писали:
_>Жаль что вы не видите сути проблемы.
Вы же её не объясняете. Ну, кроме "мне не надо, значит, никому не надо".
_>А арабские цифры не устарели?
Арабские — нет. Римские — да.
Я не случайно сказал, что Courier New устарел 15 лет назад, хотя шрифту за 60 лет. Courier New устарел не из-за времени своего создания, а из-за появления в 2001-м году Windows XP с технологией субпиксельного сглаживания ClearType и повсеместного перехода с CRT на LCD. Courier New был оптимизирован для старых технологий. (Если вы пользуетесь CRT и отключаете ClearType — да, в использовании Courier New есть смысл, так как в этом случае он выглядит отлично. Также, возможно, Courier New выглядит не так ужасно в 300+ DPI в крупном кегле, но у меня нет возможности оценить.)
_>Это не GUI это CLI. Если вам надо сделать красивцю форматированную выдачу, то обычный html подходит почти во всех случаях. И любой шаблонизатор с этой проблемой справляется более чем хорошо.
А если у вас нет GUI и вы пользуетесь консолью? Вот сидите в вашем любимом баше и вбиваете команды. Или пользуетесь той гуйной обёрткой над консолью от циски.
Нет у вас HTML и GUI ни там, ни там. А цвет — есть. (Ну, в баше есть; та консольная приблуда вряд ли умеет цвет, а роутер вряд ли умеет .NET Core.)
К слову, консоль вряд ли устареет, а вот баш уже показывает возраст. Пайплайн, построенный на бессистемном голом тексте и костылях с подпорками вокруг этой концепции, морально устаревает, хотя ещё и будет довольно долго применяться из-за царского наследия. Будущее за PowerShell.
_>Не надо гнать волну, этот блокнот уделывает notepad++
Назовите хоть один пункт, по которому Notepad2 кого-то уделывает (кроме времени с последнего релиза ).
[Edit] А, вы ссылку на mod кидали. Он даже по времени с последнего релиза никого не уделает. Впрочем, он такой же заброшенный, только версии библиотек обновляются, судя по коммитам.
A>Запилил библиотеку CsConsoleFormat для форматирования текста в консоли.
Прикольно. У меня есть несколько консольных фиговин которым никогда не понадобится тяжеловесный GUI, а возможности стандартной консоли они давно переросли. Попробую скрестить с библиотекой, спасибо.
Re[2]: CsConsoleFormat - Форматирование текста в консоли (.NET)
Здравствуйте, hi_octane, Вы писали:
_>Прикольно. У меня есть несколько консольных фиговин которым никогда не понадобится тяжеловесный GUI, а возможности стандартной консоли они давно переросли. Попробую скрестить с библиотекой, спасибо.
Фиговины опенсорсные? Если да, то как скрестите, киньте ссылку — мне будет полезно посмотреть на реальное использование.
Re[9]: CsConsoleFormat - Форматирование текста в консоли (.N
Здравствуйте, Athari , Вы писали:
_>>Жаль что вы не видите сути проблемы. A>Вы же её не объясняете. Ну, кроме "мне не надо, значит, никому не надо".
Интерфейс подразумевает взаимодействие. В цисок с эти всё нормально. Все задачи локализованы и есть справка. Всё выполнено единообразно и позволяет автоматизацию любых действий.
_>>А арабские цифры не устарели? A>Арабские — нет. Римские — да.
Рамскими никто не пользуется? XXL размер — не
A>Я не случайно сказал, что Courier New устарел 15 лет назад, хотя шрифту за 60 лет. Courier New устарел не из-за времени своего создания, а из-за появления в 2001-м году Windows XP с технологией субпиксельного сглаживания ClearType и повсеместного перехода с CRT на LCD. Courier New был оптимизирован для старых технологий. (Если вы пользуетесь CRT и отключаете ClearType — да, в использовании Courier New есть смысл, так как в этом случае он выглядит отлично. Также, возможно, Courier New выглядит не так ужасно в 300+ DPI в крупном кегле, но у меня нет возможности оценить.)
Это проблемы конкретной реализации, а не шрифта.
A>А если у вас нет GUI и вы пользуетесь консолью? Вот сидите в вашем любимом баше и вбиваете команды. Или пользуетесь той гуйной обёрткой над консолью от циски. A>Нет у вас HTML и GUI ни там, ни там. А цвет — есть. (Ну, в баше есть; та консольная приблуда вряд ли умеет цвет, а роутер вряд ли умеет .NET Core.)
Как ни странно но html там есть
A>К слову, консоль вряд ли устареет, а вот баш уже показывает возраст. Пайплайн, построенный на бессистемном голом тексте и костылях с подпорками вокруг этой концепции, морально устаревает, хотя ещё и будет довольно долго применяться из-за царского наследия. Будущее за PowerShell.
Ну ну. Powershell это чисто виндовая поделка после cmd и cscript это конечно же смотриться как великое достижение.
A>Назовите хоть один пункт, по которому Notepad2 кого-то уделывает (кроме времени с последнего релиза ).
По функционалу.
Re[10]: CsConsoleFormat - Форматирование текста в консоли (.N
Здравствуйте, kov_serg, Вы писали:
_>Рамскими никто не пользуется? XXL размер — не
Так и запишем: римские цифры вы не знаете. Размеры никакого отношения к римским цифрам не имеют. Никаких "S", "XS" и "XXXL" в римских цифрах нет, это сокращения от "extra-small" и "extra-extra-extra-large".
Римскими цифрами пользуются, конечно. В основном для понта и пафоса в частных случаях. Причём если "XX век" средний человек поймёт, то если вы будете использовать "MDCCCXCVIII" при записи даты, то на вас посмотрят как на психа.
_>Это проблемы конкретной реализации, а не шрифта.
Алгоритмы выравнивания по пиксельной сетке хранятся в самом шрифте, поэтому это проблемы именно что шрифта. (Что яббл игнорирует алгоритмы и рисует мыло — это проблемы яббла.)
_>Как ни странно но html там есть _>[url=https://i.imgur.com/3jE5S6C.png]Image: 3jE5S6C.png[/url]
Вы будете по сути спорить или писать однострочные отписки не к месту?
Вот скажите, когда вы хотите узнать, какие аргументы есть у команды, вы пишете "foo -h" или "lynx http://google.com/search?q=linux+foo+manual"?
_>Ну ну. Powershell это чисто виндовая поделка после cmd и cscript это конечно же смотриться как великое достижение.
То есть по сути возразить нечего.
A>>Назовите хоть один пункт, по которому Notepad2 кого-то уделывает (кроме времени с последнего релиза ). _>По функционалу.
То есть ни одного пункта назвать не можете.
Re[11]: CsConsoleFormat - Форматирование текста в консоли (.N
Здравствуйте, Athari , Вы писали:
A>Вот скажите, когда вы хотите узнать, какие аргументы есть у команды, вы пишете "foo -h" или "lynx http://google.com/search?q=linux+foo+manual"? https://www.gnu.org/software/libc/manual/html_node/Argp.html
foo --help
man foo
_>>Ну ну. Powershell это чисто виндовая поделка после cmd и cscript это конечно же смотриться как великое достижение. A>То есть по сути возразить нечего.
Чему возражать. Cmd ужасен, VBScript тоже недо язык, jscript лютый треш.
Вот что мешало микрософту сделать что то подобное из каробки.
Вместо этого они постоянно выкатывают новые вундер вафли не решив старых проблем.
Внешний вид консоли, копирование текста и поиск — нафига. Поиск в mmc это вообще за гранью.
_>>По функционалу. A>То есть ни одного пункта назвать не можете.
Скорость работы и запуска, закрытие по escape
Подсведка синтаксиса
Поддержка кодировок
Сворачикание блоков кода
Работа со строками, отступы списки, форматирование, регулярки и т.п.
Ничего лишнего
Когда надо больше sublime
Re[3]: CsConsoleFormat - Форматирование текста в консоли (.NET)
A>Фиговины опенсорсные? Если да, то как скрестите, киньте ссылку — мне будет полезно посмотреть на реальное использование.
Увы, пока совершенно не планируются в опен-сорс