В этот раз я хочу рассмотреть текстовые IDE, которые были у нас в ту эпоху, пока Windows не поглотила индустрию ПК. Я хочу сделать это потому, что тем IDE можно было позавидовать, даже по сравнению с нынешними. Создается впечатление, что мы пережили темную эпоху, когда большинство этих функций было утрачено на долгие годы, а появились они вновь только сейчас.
Оставайтесь, чтобы насладиться ностальгической поездкой в прошлое и немного поразглагольствовать о «раздутости». Но, что более важно, прочитайте статью, чтобы получить представление о том, что было раньше, чтобы более критично оценивать настоящее.
Первые редакторы и текстовые пользовательские интерфейсы
В 1990-х годах почти каждая программа под DOS имела полноэкранный текстовый пользовательский интерфейс (TUI) с текстовыми окнами, тенями, цветами и поддержкой мыши. Вот лишь один пример:
Редактор MS-DOS (он же EDIT.COM) с одним из окон настроек. Обратите внимание на строку меню, диалог со списком селекторов и кнопок, а также строку состояния, документирующую навигационные ярлыки.
Каждая программа была своим собственным островом, потому что ее интерфейс был уникален. Однако все они были похожи внешне — 80x25 символов не оставляли места для разнообразия — и по принципу работы, так что различия не мешали удобству использования и узнаваемости. Как только вы узнали, что клавиша Alt открывает меню, а Tab перемещает по полям ввода и кнопкам, вы могли с легкостью ориентироваться практически в любой программе.
Но давайте поговорим о редакторах. Начиная с версии 5 (1981) MS-DOS поставлялась с текстовым редактором TUI, который показан выше. Этот редактор «работал», но он был очень неудобен для программирования: вам нужно было выйти из редактора, чтобы скомпилировать и запустить код, а когда вы снова запускали редактор, вам нужно было вернуться к тому месту, где вы были раньше.
«В моем доме» мы использовали нечто под названием SideKick Plus (1984), который на самом деле не был редактором кода: это была скорее система управления персональной информацией (PIM) со встроенным блокнотом. Но самое интересное в нем было то, что это была Terminate and Stay Resident (TSR) программа, то есть она работала в фоновом режиме, и вы могли вызвать ее в любой момент, нажав Ctrl+Alt.
Главный экран SideKick Plus после нажатия Ctrl+Alt для его вызова. Обратите внимание, что DOS остается в фоновом режиме.
Считайте эту функцию TSR рудиментарной многозадачностью для ОС, в которой на самом деле не было многозадачности. Это было действительно эффективно, потому что быстрое переключение между редактированием кода и сборкой очень важно для эффективного внутреннего цикла разработки. (И, кстати, этот опыт объясняет поток редактирования кода в EndBASIC. Я не реализовал эквивалент Ctrl+Alt, но много раз думал об этом).
Однако к этому моменту настоящие IDE уже существовали несколько лет. Turbo Pascal 1.0 (1983) демонстрировал начало интегрированного опыта, хотя в нем еще не было знакового TUI. QuickBASIC 2.0 (1986) показал более «традиционный» TUI (такой же, как EDIT.COM, потому что это один и тот же редактор), а MS-DOS 5 поставлялся с QBasic, урезанной версией QuickBASIC, которая не позволяла компилировать нативный код, но имела тот же внешний вид.
Серия Borland Turbo
Жемчужиной IDE, на мой взгляд, была более поздняя серия Borland Turbo, включавшая Turbo C++ (1990), Turbo Assembler и Turbo Pascal. Эти IDE были ориентированы на конкретный язык, имели полноэкранные TUI и были чрезвычайно мощными.
Вот, посмотрите, что у нас было. Подсветка синтаксиса:
Borland Turbo C++ с «Hello World» для демонстрации подсветки синтаксиса.
Интеграция с компилятором и диагностика:
Borland Turbo C++ после компиляции программы выдает предупреждение о том, что я не вернул значение из main().
Интегрированное управление проектом и системой сборки:
Управление проектами и многооконные возможности в Borland Turbo C++. На рисунке вы видите два исходных файла C++, один из которых зависит от другого, и окно проекта, в котором перечислены все файлы, которые необходимо скомпилировать.
Отладчик с точками останова, трассировкой стека и т.п:
Сеанс отладки с программой, содержащей несколько функций, точку останова и текущий стек вызовов.
И даже полное справочное руководство:
Интегрированная в Borland Turbo C++ справочная система с программой «Hello World» на заднем плане и справкой по printf.
Помните: все это было в начале 1990-х — чуть более 30 лет назад на момент написания этой статьи.
Я был заядлым пользователем Turbo C++, с помощью которого я многому научился. Я помню, как использовал их библиотеку conio.h для реализации собственных TUI, а затем их встроенную библиотеку graphics.h, чтобы поиграть с реализацией графических интерфейсов. И заметьте: это было еще до Интернета. Для многих не было возможности просто «посмотреть, как все работает» в Stack Overflow: IDE должна была быть доступной сразу (что и было реализовано) и самодостаточной, чтобы предложить вам полный опыт разработки.
А что было с Linux в те времена?
Сравним эти IDE с Linux начала 1990-х годов.
В Linux почти все программы также были текстовыми, но они не поставлялись с полноэкранным пользовательским интерфейсом. Это просто не было «путем Unix». Я помню, как смотрел на инструмент настройки X11 (XF86Setup) или программу установки OpenBSD и был шокирован тем, насколько они были упрощены. Даже я, молодой подросток, не имевший почти никакого «настоящего» опыта программирования, уже писал более красивые программы.
В любом случае, это не остановило меня в моем стремлении отказаться от использования Windows. Я продолжал изучать Linux и вскоре столкнулся с «лучшими» редакторами, которые рекомендовали все книги и сообщества в Интернете: Vim и Emacs. И я не мог понять, почему их так хвалят. Использование этих редакторов было похоже на возврат в прошлое. Это действительно были полноэкранные программы, но они казались довольно заумными. В Vim была подсветка синтаксиса, но до IDE ему было далеко. Emacs можно было настроить на интеграцию с некоторыми функциями помощи в программировании, но он был далек от того, чтобы «запустить и забыть», как семейство Turbo IDE.
Просто посмотрите на сегодняшнюю конфигурацию Emacs по умолчанию, которая не сильно изменилась (если вообще изменилась) с тех пор. У него есть окна, но они не прорисованы. У него не было цветов (а теперь почти нет), потому что зачем? В нем не было поддержки мыши. У нее есть строка меню, но это просто прикол? Если вы нажмете M-`, как сказано в инструкции, вы столкнетесь с действительно странным интерфейсом для навигации по меню — что заставляет задуматься, зачем они вообще потрудились потратить целую строку экранного пространства, чтобы показать строку меню, которая ничего не делает.
Свежая установка Emacs в консоли, со стандартным экраном приветствия в фоновом режиме и «меню», открывающимся после нажатия M-`.
А теперь попробуйте дать это любому человеку с небольшим опытом программирования и попросить его создать, скомпилировать и отладить программу. Ему будет сложно просто ориентироваться в редакторе, и он не найдет ни одной функции, которая позволила бы управлять проектами или запустить компилятор.
Для сравнения, при написании этого поста я запустил Turbo C++ в DOSBox, смог создать проект «hello world» и сориентироваться в среде за считанные минуты — и все это без предварительных знаний (все, что я знал, к настоящему моменту уже забыто). Среда интуитивно понятна и, как IDE, интегрирована с ней.
Современные текстовые IDE
Как бы то ни было. Давайте забудем о прошлом и посмотрим на то, что мы имеем сегодня в области TUI. Я не хочу рассматривать графические интерфейсы, потому что… ну, Visual Basic был вершиной графического программирования, а у нас его больше нет — и это тоже тема для другой статьи (ладно, у вас есть Gambas… но кто о нем знает?).
Ближайшим более современным эквивалентом среды Borland Turbo C++ является RHIDE. Как вы можете видеть на рисунке ниже, среда выглядит невероятно похожей — и вас бы простили, если бы вы сказали, что это Turbo C++. К сожалению, она предназначена только для DOS и, похоже, уже практически заброшена, а ее последний релиз вышел 7 лет назад.
RHIDE IDE показывает ту же программу «hello world», что и раньше, без ошибок и предупреждений после компиляции.
Далее у нас есть Free Pascal. Это наиболее близкий к старому вариант, но с современной кодовой базой, работающий на Unix-системах и использующий терминалы любого размера.
IDE Free Pascal с тривиальной программой «hello world» и перекрывающимися окнами для встроенной таблицы ASCII и калькулятора.
И, наконец, QB64. Он очень похож на Microsoft QuickBasic, но… не дайте ему обмануть вас: хотя он и выглядит как TUI, на самом деле это GUI-приложение, которое имитирует TUI. Вы не можете запустить QB64 в терминале.
QB64 IDE, которая выглядит текстовой, но на самом деле является графической.
И Free Pascal, и QB64 поддерживаются и относительно активно развиваются, их последние релизы вышли в 2021 году… но в основном их игнорируют, потому что они представляют собой архаичные языки, которые в наши дни не интересуют большинство людей.
«Настоящие» современные консольные IDE
Итак, что же мы имеем на сегодняшний день для современных языков?
На сегодняшний день, похоже, актуальными являются Neovim, Doom Emacs или даже Helix. Эти редакторы очень мощные и, благодаря различным плагинам, предлагают разумные IDE-подобные возможности. Однако, как по мне, ни один из них не дает того опыта, который давали предыдущие продукты Borland: их интерфейсы непонятны, а из-за мультиязычности они «мастера на все руки, да путем ничего и не умеют», если хотите.
В любом случае, предпочтительным «простым» TUI редактором, основываясь на том, что я наблюдал в ненормальном обсуждении в microsoft/terminal#16440, кажется является GNU Nano… который нормальный, он работает, но во-первых: это не IDE, и во-вторых, для меня это выглядит как WordStar. Да, я знаю, что это не WordStar: если вам нужен WordStar, то ближе всего к нему будет Joe, но внешний вид Nano напоминает мне о моем первом опыте работы с текстовым процессором во времена CP/M. Вот, смотрите:
Редактор GNU Nano в его стандартной настройке, с открытым пустым файлом.
Так что, несмотря на наличие мощных консольных редакторов в наши дни, они не дают того же опыта работы, что и 30 лет назад. На самом деле, кажется, что за эти 30 лет мы во многом регрессировали, и только сейчас достигли паритета с некоторыми функциями, которыми обладали раньше.
Естественно, что популярность TUI уменьшилась, как только графические ОС набрали обороты, и достаточно интересно, что они возвращаются только сейчас. Что касается причин, то я думаю, что мы должны благодарить изобретение LSP (Language Server Protocol) за большую часть недавнего прогресса в этой области. Редакторы TUI были «законсервированы» в течение многих лет, потому что создание функций IDE для них требовало много усилий, а их небольшая база сопровождающих не могла позволить себе их реализовать. LSP открыла доступ к существующим языковым интеграциям и вернула интерес к старым и надежным Vim и Emacs. Надеемся, что грядущий BSP сделает еще больше для того, чтобы эти TUI стали более похожими на IDE.
Зачем вообще нужны TUI IDE?
Справедливо будет спросить: «Да кого это волнует? На каждом настольном компьютере и ноутбуке теперь работает графическая ОС!»
И это хороший вопрос. В общем, вам, вероятно, не нужна текстовая IDE. Если вы предпочитаете VSCode, то его возможности удаленной работы превосходны, и VSCode имеет достаточно хороший графический интерфейс, не являясь полноценной IDE. Но есть несколько вещей, которых VSCode нам не дает.
Первое — это то, что TUI IDE отлично подходит для работы на удаленных машинах — даже лучше, чем VSCode. Вы можете с легкостью подключиться по SSH к любой машине и запустить IDE. Объедините это с tmux, и вы получите «полноценную» многозадачность. Да, вы можете использовать клиент удаленного рабочего стола вместо SSH, но я всегда находил это неудобным из-за задержек и неправильной интеграции с шорткатами локального декстопа.
Во-вторых, расширения удаленной работы VSCode не имеют открытого исходного кода, что не является большой проблемой… за исключением того факта, что они не работают, скажем, на FreeBSD, и нет способа это исправить. Таким образом, это делает невозможным удаленное подключение к моему основному серверу разработки с помощью VSCode.
И третье — это… снижение потребления ресурсов.
Раздутость повсюду
Я не могу уйти, не поразглагольствовав немного о «раздутости». Borland Turbo C++, со всеми его плюсами и минусами (пользовательский интерфейс, набор инструментов C++, интегрированные руководства...), занимает менее 9 МБ после установки и работает в пределах 640 Кб оперативной памяти.
Для сравнения, Helix занимает 16 Мб на диске, что довольно впечатляюще (и, честно говоря, неожиданно), а Doom Emacs — около 500 Мб и потребляет много Мб оперативной памяти. Заметьте, однако, что ни одно из этих чисел не учитывает инструментальных цепочек для языков или справочных систем, а они в наше время занимают гигабайты дискового пространства.
Чтобы получить «настоящую» IDE, мы должны перейти к графическим программам, таким как IntelliJ или VSCode. VSCode, например, занимает около 350 МБ на диске (на удивление меньше, чем Doom Emacs), но он съест ваш компьютер на обед: это же Electron, в конце концов. Отказавшись от VSCode и перейдя на Doom Emacs, я заметил очень большую экономию времени автономной работы ноутбука.
Итак, вопрос, на который я хочу ответить — сильно ли мы продвинулись за 30 лет? Современные IDE имеют несколько лучшие инструменты рефакторинга, лучшие возможности и поддерживают больше языков, но по сути… они не сильно изменились. Единственным существенным отличием, которое мы начинаем видеть, может быть программирование с помощью искусственного интеллекта, но это функция, предоставляемая в основном удаленным сервисом, а не локальным кодом!
И это все на сегодня. Со своей стороны, я с удовольствием продолжу использовать все Doom Emacs, Vim, VSCode и IntelliJ в зависимости от ситуации. Счастливого Рождества, если вы празднуете!
Мой канал с материалами про код, технологии и просто интересное: IT Insights.
Комментарии (315)
Veliant
29.12.2023 09:38Интересовался как-то темой консольных редакторов и находил довольно интересный FTE Editor, но уже давным давно заброшен.
aik
29.12.2023 09:38Да, в своё время он был единственным, кто через ssh поддерживал подсветку синтаксиса и имел привычные меню, а не :wq!
Вроде только кодировки не поддерживал.
Потом, правда, и в vim подсветку синтаксиса притащили, и в mc... Они более мэйнстримные, потому FTE тихо куда-то пропал.
Хотя относительно недавно я его добывал для работы в DOS'е.
Zara6502
29.12.2023 09:38+29если линукс, то всегда ставлю mc
если винда, то FAR
когда пишу в VS, то одновременно запущено 3-4 FAR - манипуляции с файлами, просмотр логов, запуск релизной версии программы и т.п.
в FAR сильно быстрее и комфортнее работать за ПК, если конечно работа не сводится к паре кликов.
Проводник запускаю по Win+E регулярно, от каждой программы свои плюшки.
nerudo
29.12.2023 09:38+7Если линукс, то стараюсь не лениться и ставить far2l
Жаль, что не far3l
Zara6502
29.12.2023 09:38буду знать, не знал что он там есть, но сюдя по статье тут же на хабре там есть свои проблемы.
unclegluk
29.12.2023 09:38Это здорово, но вот Мак ругается: “far2l” can’t be opened because Apple cannot check it for malicious software.
Upd. Первое открытие по R-click - Open. Потом все работает.
edogs
29.12.2023 09:38+1Тоже плотно сидим на FAR, в основном из-за олдскульного вида, хотя казалось бы тот же total commander по функциям одно и то же, но нет жеж, не заходит:)
mihmig
29.12.2023 09:38+8пфф, молодёжь...
У меня Far в цветовой гамме DOsNavigator-а (того, в который тетрис был встроен)!edogs
29.12.2023 09:38+28Если хотите кряхтеть про "молодежь", то никак не с доснавигатором это надо делать:)
Дефолтная схема в FAR используется та же что в Norton Commander (который вот реально у всех стоял), который появился аж на 5 лет раньше ньюфажного ДосНавигатора и почти полностью повторяет еще более ранную цветовую схему XTree.Zara6502
29.12.2023 09:38+3я раньше FAR всегда перенастраивал в цвета DN, не люблю я синее, ярко слишком, но когда пошли окна, то забросил почему-то.
edogs
29.12.2023 09:38+17когда пошли окна, то забросил почему-то.
ПостарелиПовзрослели просто:) Мы тоже раньше после установки/переустановки какого-нибудь софта (ИДЕ, редактора и т.д.) или просто на новом месте настраивали интерфейс, хоткеи, цвета, автосейзы, историю, фильтры и т.д..
Сейчас предпочитаем "прогнуться под изменчивый мир", настраивать что-то лениво (разве что по мелочи что-то что считаем совсем критичным), пользуемся как есть, даже если слегонца неудобно.BAXMAH
29.12.2023 09:38Как вариант - экспорт-импорт настроек, у меня так Far постепенно сохранил черно-зеленую цветовую гамму от 1.70beta5 до актуального Far3. Одно НО - далеко не везде так получается, приходится уступать дефолтному интерфейсу.
mltk
29.12.2023 09:38+9Нортон стоял у всех, а профи стоял vc.com - Volcov Commander, который влезал полностью в ограничения .com файла в 65 килобайт.
edogs
29.12.2023 09:38Volkov появился почти на 10 лет позже нортона и почти на 5 лет позже дос-навигатора. Его конечно использовали, но размер 64кб в момент его появления уже значения не имел, а функций в нем было меньше чем в нортоне и DN.
axe_chita
29.12.2023 09:38+6Вы точно уверены что Volkov Commander появился на десять лет позже Norton Commander? Или вам так мерещится? :D
По своему опыту, могу сказать что VC, появившись в начале 1992 года вытеснил NC3 везде где только можно к концу 1993 года, поскольку в отличии от NC умел работать с файлами и каталогами имеющих в имени кириллические символы. Т.е. если вас угораздило создать/сохранить файл/каталог с запретными буквами, их нельзя было в NC копировать/изменить/удалить/переименовать. Далее, можно было померить размер содержимого директорий, удалять не пустые директории, выкидывать из памяти резидентов которых запустили из VC. ;)
Далее была куча просмотрщиков файлов/архивов. Можно было легко настраивать каким просмотрщиком просматривать тот или иной файл. 8P
Запуск программ по расширению файла, причем можно было использовать группу команд. Вложенные пользовательские меню. И все это было в разы быстрее NC3 и надежнее. Про размер Volkov Commander уже упоминали. :))
Дос Навигатор был очень нестабильным и регулярно падал гдето до середины 1995 года, и на ХТ он был очень тормозным и постоянно свопился на диск. Полноценно DN раскрывался на 386sx с 2мб и загруженным драйвером EMS. Кстати, у Дос навигатора была неустранимая глича, если в имени файла был символ & то Дос Навигатор съедал амперанд имени файла, а букву идущую за ним отображал как букву шортката. К примеру W&D.com в DN превращался в WD.com
NC4 и NC5 были тормознючим отстоем и их использовали по большей части или для запуска Win.com или для запуска какой то программы в пользовательском меню, типа какойто бухгалтерии.
edogs
29.12.2023 09:38+2Вы точно уверены что Volkov Commander появился на десять лет позже Norton Commander? Или вам так мерещится? :D
Окей, перепроверили по википедии, NC вышел в 86, VC вышел в 92. 6 лет разницы, не 10, это так принципиально?
По своему опыту, могу сказать что VC, появившись в начале 1992 года вытеснил NC3 везде где только можно к концу 1993 года, поскольку в отличии от NC умел работать с файлами и каталогами имеющих в имени кириллические символы
В NC3 проблема с кириллицей решалась правкой nc.exe за полчаса максимум, а NC4 с нормальной поддержкой кириллицы вышел в том же самом 92 году, что и VC.
Поэтому Ваше утверждение о повсеместной победе VC над альтернативными ФМ можно объяснить, действительно, лишь Вашим личным опытом.NC4 и NC5 были тормознючим отстоем и их использовали по большей части или для запуска Win.com или для запуска какой то программы в пользовательском меню, типа какойто бухгалтерии.
Прям флэшбэк случился:) Первые фан-войны. Предвестники "винда против юникса", "айфон против андроида" и т.д.. Ровестницы холиваров вокруг каким архиватором лучше пользоваться и чем на 5.25" дискету записать больше чем на нее может теоретически влезть:)
По факту же, хотя и VC и DN были распространены, того массового вытеснения (ни одним ни другим) NC не было.
Да, были энтузиасты, которые говорили что NC зло, сносили его и накатывали VC (они же потом сносили винду и накатывали юникс или ставили os/2 вместо доса), но потом приходил лесник (директор) и пинками наводил порядок. Это все равно что где-нибудь в 2053 году вдруг кто-то скажет, что в 2023 все поголовно сносили винду и ставили юникс, сносили фотошоп и ставили гимп и т.д.. Да, на местах было, но отнюдь не массово мягко говоря и уж тем более о захвате мира речь не идет.Chamie
29.12.2023 09:38Окей, перепроверили по википедии, NC вышел в 86, VC вышел в 92. 6 лет разницы, не 10, это так принципиально?
А функционал вы именно этих первых версий сравниваете?
axe_chita
29.12.2023 09:38Окей, перепроверили по википедии, NC вышел в 86, VC вышел в 92. 6 лет разницы, не 10, это так принципиально?
Да ты шо! А WinWorld прямо и упорно утверждает что NC3 был релизнут в октябре 1989 года, а апдейт до 3.02 вышел 16 декабря 1990 года. Т.е. Ваше десятилетие резко ужалось до пары лет, а разница на порядок уже принципиальна. %)
В NC3 проблема с кириллицей решалась правкой nc.exe за полчаса максимум,
Вы точно уверены что надо было патчить NC.EXE ? 8)) LOL
А VC прям "искаропки" работал с кириллицей без всяких патчейNC4 с нормальной поддержкой кириллицы вышел в том же самом 92 году, что и VC.
NC4 вышел, барабанная дробь, в 1994 году.
цитата из Readme.txt "Copyright 1994 Symantec Corp. All Rights Reserved."И да, с кириллицей у него ещё было не всё Ок ;) Тоже надо было патчить :))
Поэтому Ваше утверждение о повсеместной победе VC над альтернативными ФМ можно объяснить, действительно, лишь Вашим личным опытом.
Над тормознутым NC4 и выше Volkov Commander безоговорочно доминировал. И не было ни одного человека попробовавшего VC и вернувшегося на NC. Реальным конкурентом VC был только DN
Прям флэшбэк случился:) Первые фан-войны.
Холивара с фанатами NC не случилось, поскольку все фанаты NC перешли в стан VC.
Предвестники "винда против юникса",
Холиваров "винда против юникс" не существовало, это были абсолютно разные миры которые не пересекались. А еще, ко всему прочему учитывая что Microsoft это и есть UNIX(Xenix) холивар превращался в балаган "пчелы против мёда"
Ровестницы холиваров вокруг каким архиватором лучше пользоваться
ARJ / LHA / RAR ;)
и чем на 5.25" дискету записать больше чем на нее может теоретически влезть:)
PU-1700 8))
По факту же, хотя и VC и DN были распространены, того массового вытеснения (ни одним ни другим) NC не было.
По факту бодались между собой, причем без улёта в холивар, пользователи DN и VC. А NC существовал в узком кругу продованов бухгалтерских решений.
Да, были энтузиасты, которые говорили что NC зло, сносили его и накатывали VC
Они не говорили что это зло, они просто показывали как быстро работает VC, объясняли что переучиваться не придется, и что ещё добавятся удобные и вкусные плюшки. И NC отлетал на силиконовые небеса ;)
(они же потом сносили винду и накатывали юникс или ставили os/2 вместо доса)
Как у Вас всё запущенно, кто-то сносил винду чтоб накатить UNIX? Оригинальная конструкция... Токмо зачем?
А полумух, это святое "DOS better than DOS, and Windows Better than Windows" (c) IBM :Pно потом приходил лесник (директор) и пинками наводил порядок.
"Говорила бабка деду - "В Санта-Барбару поеду! Хоть язык, не понимаю, Но зато всех там прекрасно знаю!"".
Этим "лесникам" в те "божественные" времена было по.... ниже пояса до происхождения софта, у них были куда более животрепещущие вопросы. А "порядок" они начали наводить только тогда когда их стали жим-жим за вымячко правоохранители
И кстати, VC был в разы дешевле чем NC
Это все равно что где-нибудь в 2053 году вдруг кто-то скажет, что в 2023 все поголовно сносили винду и ставили юникс
Вполне поверю, ведь вы гдето сейчас наблюдаете массовый переход на UNIX.
Да, на местах было, но отнюдь не массово мягко говоря и уж тем более о захвате мира речь не идет.
Если вы не видите суслика, это не означает что его вообще нет. :)))
edogs
29.12.2023 09:38+2Да ты шо! А WinWorld прямо и упорно утверждает что NC3 был релизнут в октябре 1989 года
Мы сказали "NC вышел в 86, VC вышел в 92", то есть речь шла о первых выходах, а Вы "незаметно" подменяете на 3 версию. А чего уж тогда не на NC5 , для усиления эффекта? Увы, но NC вышел в 86 году, хотя если верить статье на хабре, то вообще появился он аж в 84 году
NC4 вышел, барабанная дробь, в 1994 году. цитата из Readme.txt "Copyright 1994 Symantec Corp. All Rights Reserved."
Этот копирайт говорит о дате выхода readme.txt или о чем-то другом, а не о дате выхода NC4, Вы снова подменяете данные.
книга на русском об NC от 1993 года, если верить Вашим датам, то появилась на год раньше выхода NC :D
Информацию о датах выхода NC можете глянуть тут https://softpanorama.org/OFM/Paradigm/Ch03/norton_commander.shtml#nc4.0 , 4 версия вышла в июне 92 года.
Вы точно уверены что надо было патчить NC.EXE ? 8)) LOL
Может и не надо было. Но патч работал, нам этого было достаточно.
Холивара с фанатами NC не случилось, поскольку все фанаты NC перешли в стан VC.
Ага, конечно (зеваем и засыпаем).
Если вы не видите суслика, это не означает что его вообще нет. :)))
Вы не увидели выход NC4.0 в 92, зато Вам увиделась версия 3.0 в нашей цитате о первом появлении NC. Насчет сусликов не знаем.
geher
29.12.2023 09:38+2Его конечно использовали, но размер 64кб в момент его появления уже значения не имел
Имел, и очень большое. При запуске "тяжелых" приложений командира нортона и доснавигатора (со вторым было в этом плане немного проще, но все же) приходилось перед этим самым запуском частенько завершать, в то время как командир волков оставлял другому приложению очень много памяти, освобождая даже часть из своих < 64к.
saboteur_kiev
29.12.2023 09:38+1Нортон стоял у всех, а профи стоял vc.com
Между выходом NC и VC прошло несколько лет.
deathbel
29.12.2023 09:38+1VC использовался в дискетах востановления, куда затягивать нортон даже максимально обрезаный было пределом кощунства, у NC была фишка com и lpt link (у первых тоталов тогда еще виндовс командеров тоже было) могло помочь поставить систему на ноут или пк если у тебя сдохли или нет дискет, чтобы перетащить дистриб.
Zara6502
29.12.2023 09:38+1я DN пользовался плотно, а про то что в нём есть тетрис узнал году в 2012 из какой-то статьи XD
Rayven2024
29.12.2023 09:38+4значит вы никогда его не пробовали нормально настроить....
тетрис там вызывался командой из меню - пропустить её при настройке - это надо уметь... (скучаю по DN Necromancer - один из последних более-менее нормальных версий, жаль что он обрезал слишком длинные имена файлов.... а вот его фич не хватает - сходу в FAR'е нет возможности сделать сравнение файлов не только по имени-дате-времени, но и по содержимому, да и сочетания кнопок на сравнение панелей там нет....)
Andrusha
29.12.2023 09:38скучаю по DN Necromancer - один из последних более-менее нормальных версий
А зачем по нему скучать? Последний билд буквально вчера вышел, а релиз - месяц назад.
geher
29.12.2023 09:38+7сходу в FAR'е нет возможности сделать сравнение файлов не только по имени-дате-времени, но и по содержимому
Как нет? Штатно в поставке плагин Advanced compare. Можно добавить другие плагины, с еще более расширенным функционалом.
да и сочетания кнопок на сравнение панелей там нет....)
Решается макросом.
veg2022
29.12.2023 09:38Мне крайне не хватает возможности сортировки папок по количеству файлов в них. Можете дать совет?
nronnie
29.12.2023 09:38-2Можете дать совет?
Могу :)))
ls -Directory | select @( @{ Name = "Name"; Expression = { $_.Name } }, @{ Name = "FileCount"; Expression = { ls $_ -File | measure | select -exp Count } } ) | sort FileCount -Descending
Все эти "двухпанельные" FM в Win были актуальны пока не было нормального shell. Зачем они нужны сейчас лично мне вообще непонятно.
mayorovp
29.12.2023 09:38+3И вот это всё предлагается набирать каждый раз?
nronnie
29.12.2023 09:38Функцию в профиль, или скрипт в *.ps1 файл. У меня всевозможных собственных функций/скриптов накоплено уже около полутора тысяч строк, организовано все через модули с lazy loading, чтобы все подряд не загружать при каждом запуске.
Merrynose
29.12.2023 09:38+3Двухпанельные ФМ нужны по той причине, что жизнь -- штука богатая и может подкинуть целый ряд кейсов, в которых использование FAR и тп будет быстрее и удобнее, чем использовать shell.
veg2022
29.12.2023 09:38+1Спасибо, конечно. Но скрипты не в тему, нечто такое и я делаю, выкручиваясь. Но это неудобно. Работать нужно именно с панелью, например удалить уже "опустошенные" папки, выделить самые полные... Обработать файлы в очередной раз, снова проанализировать результаты... Нужного плагина пока не нашел, и есть ли такой?
qw1
29.12.2023 09:38Чтобы такое сделать, надо вносить изменения в ядро, чтобы у каждой папки был не только атрибут "суммарный размер вложенных файлов", но и атрибут "суммарное количество файлов". Слишком редкая задача, поэтому не сделано (я, например, с такой проблемой никогда не сталкивался).
Чисто теоретически, можно закостылить кастомной файловой системой, где каждый файл бы весил 1 байт, и тогда суммарный размер директории был бы равен количеству файлов.
Есть такой плагин ls-lR, который парсит вывод команд ls и dir
dir /a /s C:\my_directory > directory_snapshot.dir
плагин заходит в dir-файл, как в архив (очень удобно "снепшотить" свои диски с архивами, прежде чем отключить и положить на полочку).
Так вот, можно "заснепшлотить" директорию, запустить простой скриптик, который бы regexp-ом поставил бы всем файлам размер 1 байт, и на правой панели зайти в такой "архив", отсортировать по числу файлов, а на левой панели зайти в реальный каталог и делать там свои дела. Обновление, конечно, не реал-тайм, но если подготовить скрипты, можно обновлять снепшот за пару секунд.
nronnie
29.12.2023 09:38например удалить уже "опустошенные" папки
ls -Directory | ?{ -not (ls $_ -r -File) } | %{ rm $_ -r -fo }
ну а вы ждите пока вам кто-нибудь нужный плагин к Far не напишет - больше, увы, ничего посоветовать не могу :)
geher
29.12.2023 09:38+2Все эти "двухпанельные" FM в Win были актуальны пока не было нормального shell. Зачем они нужны сейчас лично мне вообще непонятно.
Очень удобно вдумчиво разгребать содержимое подкаталогов, используя не всегда формализуемые критерии выбора файлов, особенно когда точно не помнишь, как оно называется.
Командная оболочка, конечно, многое позволяет, но продвижение по каталогу файл за файлом с пометкой нужных для следующей операции часто на порядок удобнее в двухпанельнеке проделывать, чем играться в чтение списка и автодополнение.
geher
29.12.2023 09:38Если все файлы одного размера, то можно использовать сортировку по размеру и нажать F3.
Если же размеры файлов разные, то похоже, что только свой плагин писать, или искать готовый (но я такой не видел).
vkni
29.12.2023 09:38+2Увы, в оригинальном DN цветовая схема обладала каким-то магически-приятным серым, который в NDN превращается в какое-то убожество.
qw1
29.12.2023 09:38DN перепрограммировал палитру текстового режима прямым доступом к видеокарте. Палитру консоли Windows можно поменять в свойствах консольного окна (правая кнопка мыши на заголовке). Где в интернете я видел готовые reg-файлы с гаммой "под DN".
Zara6502
29.12.2023 09:38Ну понятие нормальности слишком субъективное, я им просто пользовался таким какой он есть, от него мне нужно было копирование, навигация и редактор, за 25 лет мои потребности не изменились, в FAR я точно так же копирую, бегаю по папкам и работаю с текстом. Поэтому какие-то дополнительные настройки умещаются в меню по F2, где тетриса нет.
Mingun
29.12.2023 09:38+1сходу в FAR'е нет возможности сделать сравнение файлов не только по имени-дате-времени, но и по содержимому
В штатной поставке уже бог знает сколько времени идёт плагин Расширенное сравнение (
F11 -> Расширенное сравнение
), позволяющий сравнивать файлы на панелях по времени, размеру и содержимому (в том числе заходить во вложенные папки). В результате на каждой панели выделяются отличающиеся файлы/папки.Второй плагин (уже не из штатной поставки) — Визуальное сравнение (VisualCompare) (
F11 -> Визуальное сравнение
). Позволяет сравнивать два каталога, в том числе рекурсивно, поддерживает сравнение по содержимому файлов. Результаты сравнения выводятся в отдельном двухколоночном окне с результатами.geher
29.12.2023 09:38Еще есть AdvCmpEx и Deep Compare, которые основаны на штатном Advanced compare, но немного расширяют его функциональность.
ftc
29.12.2023 09:38+11Киллер-фича FAR-а - интеграция с консолью (можно "не отходя от кассы" наколотить консольную команду, перенаправить её в файл, файл поглазеть штатным редактором, скопировать-поправить итп).
И всё в пределах одного окна, без переключений.nronnie
29.12.2023 09:38+1наколотить консольную команду, перенаправить её в файл, файл поглазеть штатным редактором, скопировать-поправить
Только вот зачем для этого Far вообще непонятно - всё это запросто делается прямо в PowerShell:
New-TemporaryFile | %{ Invoke-MyConsoleCommand | Out-File $_; & $env:EDITOR $_; rm $_ }
ftc
29.12.2023 09:38+4Делается, но при этом нет фичей "посмотреть глазками, какой файл тебе нужно в эту команду подставить, одним хоткеем добавить в команду его имя, скопировать что-то куда-то".
Короче, для меня в FAR самое удобное - именно синергия возможности использовать консоль с визуальным способом работы с файлами.nronnie
29.12.2023 09:38Это да, но в PowerShell действительно очень классный autocomplete (а с 7.какой-то версии еще и с поддержкой autocomplete-а всей команды целиком из history) - если, например, я в папке с проектом, то зачем мне его вообще "искать глазами", если я могу, например, просто набрать
blablabla *csproj<tab>
, а то и меньше.
mayorovp
29.12.2023 09:38+1А откуда у вас на винде переменная окружения EDITOR?
nronnie
29.12.2023 09:38Из HKCU:\Environment
На самом деле она полезна - в частности её понимает, например, PSReadLine (кстати, $env:PAGER у меня тоже есть - нужен, например, для PowerShell-ного Get-Help). Git как бы тоже должен их понимать, но у него какие то проблемы с обратной косой чертой - я так ничего лучше и не нашел кроме как прописать все это в
~\.gitconfig
DarkTiger
29.12.2023 09:38+2Вот только из командной строки Far что-то скопировать, путь, например, хм, не очень удобно. Понятно, перенаправление наше все, но в mc проблем с этим нет от слова совсем - ctrl-o, выделил путь мышой, скопировал.
В mc, правда, другая радость - если его в сессии ssh запустить, он делает странные вещи с сессией, непонятно, то ли ты на удаленной машине, то ли на своей, чего нет в Far. Понятно, что какой-то хоткей пакостит, но пока его не вычислил.
Нет в мире идеала, короче говоря.PuerteMuerte
29.12.2023 09:38+2Вот только из командной строки Far что-то скопировать, путь, например, хм, не очень удобно
Почему? Там тоже работает выделение мышкой и копирование. А если ctrl+o нажать, то и выделение клавиатурой.
qw1
29.12.2023 09:38если ctrl+o нажать, то и выделение клавиатурой.
Alt+Insert работает в любом режиме, потом выделяй хоть мышкой, хоть кнопками.
edogs
29.12.2023 09:38+3Вот только из командной строки Far что-то скопировать, путь, например, хм, не очень удобно.
Ctrl+O выключает панели.
При выключенных панелях Ctrl+C дает копировать то что в командной строке прямо сейчас.
Ctrl+{ или } - вставляет в командную строку путь из левой/правой панели, после чего можно вырубить панели и Ctrl+C.
Может быть можно удобнее, но нам хватает.chnav
29.12.2023 09:38+2>> Ctrl+{ или } - вставляет в командную строку путь из левой/правой панели,
Вот же ж... А я всегда переходил в начало директории (на две точки) и нажимал Ctrl-Enter, т.е. копировал то что под курсором. Оказывается всё гораздо проще :рукалицо:
Mingun
29.12.2023 09:38+1Ещё комбинации:
Ctrl+F
вставляет путь (заключённый в кавычки, если в нём есть пробелы) к файлу под курсором на активной панели (работает даже при скрытых поCtrl+O
панелях);Ctrl+Insert
копирует имя файла под курсором на активной панели в буфер обмена;Ctrl+Alt+Insert
— копирует полный путь к файлу под курсором на активной панели в буфер обмена.
saboteur_kiev
29.12.2023 09:38+2far+conemu или другой альтернативный терминал, и отлично выделяется мышой и копируется.
Плюс не совсем понятно зачем мыша, если есть Ctrl+[, Ctrl+]
ftc
29.12.2023 09:38+1У mc своих "приколов" хватает. Меня например больше всего бесит неудобный плагин для SSH/SFTP сессий. В FAR-e в NetBox все частоиспользуемые сессии сохранены и открываются буквально несколькими нажатиями клавиш. А в mc приходится каждый раз вспоминать "а как там точно этот сервер называется и какой туда логин".
Ну и не хватает кучи хоткеев для подстановки чего-либо в командную строку (Ctrl+Space, Ctrl+Enter итп).
GRADUSnick
29.12.2023 09:38хоть уже много лет как ушел из тотала в фар, в тотале такое тоже сделать можно только делается это больше в стиле линуксовых иксов (или макос) когда консоль открывается в текущем каталоге через горячие клавиши и вывод можно смотреть в самой консоли, либо точно так же вывести в файл в этом же каталоге (если вывод слишком большой). Это, кстати удобнее, на мой взгляд, для долгих операций, пока операция выполняется файловый менеджер не заблокирован.
И не смотря на всё это из тотала я в итоге ушёл:
во-первых, потому что с возрастом стало как-то неудобно чужой интелектуальный труд воровать, а Far лицензию за знание русского языка даёт.
во-вторых, мой личный тотал коммандер, превратился в какую-то самостоятельную оболочку над Windows, где скрипт управлял скриптом и скриптом всё это запускалось и накопленные механизмы и привычки уже начали моей работой управлять.
Короче, захотелось эту игру пройти сначала.
Zara6502
29.12.2023 09:38я долго пользовался ТС и FAR вместе, но по факту ТС совсем другая программа, поэтому ТС перестал использовать, да и жмякать на кнопку при запуске триального периода надоедает, я софт не ломаю.
Laryx
29.12.2023 09:38+2Только Тотал Коммандер (хотя, вобще говоря, Виндовс Коммандер). Фар - не выдержал испытания драг-н-дропом, и был благополучно давно забыт.
SergioT4
29.12.2023 09:38+3Под винду ещё надо хотя бы cygwin ставить - иногда сильно помогает.
Для FAR очень часто помогает "folder shortcuts" - настроил десять шорткатов, быстро туда-сюда летает, ещё его NetBox полезен - всякие (S)FTP и т.п. визуализировать.
В редакторе FAR-а regexp часто использую. Интересно langserver кто-то уже подцепил к нему.
Жалко что из коробки нету поддержки regexp для поиска файлов, плагины тащить приходится.
Andy_U
29.12.2023 09:38NetBox полезен
Эх, вот бы он еще "понимал" SSH ключи в формате open-ssh, а не putty.
saboteur_kiev
29.12.2023 09:38у него же встроенный конвертер
Andy_U
29.12.2023 09:38+1Где? Я вижу в plugins configuration только пути к putty, puttygen, pageant и жрет он только .ppk. Пришлось добыть pyttygen и конвертировать ключ ручками. Про работу с keyring от open-ssh молчу. На всякий случай, я про Windows. Или у меня версия старая (Version 2.4.5 build 545)?
saboteur_kiev
29.12.2023 09:38+1При подключении к удаленному серверу, указываю путь к обычному rsa ключу, он предлагает его конвертнуть, конвертит, после чего указываешь путь к сгенеренному ppk
qw1
29.12.2023 09:38"folder shortcuts" - настроил десять шорткатов, быстро туда-сюда летает
Можно больше. Если на одном шорткате несколько папок, всплывает менюшка.
EvilShadow
29.12.2023 09:38+1если линукс, то всегда ставлю mc
vifm лучше. Но только в связке с vim, конечно. Если в mc активно используется mcedit, то vifm не имеет смысл.
NeoCode
29.12.2023 09:38+3Да, TUI очарователен в своей олдскульности) И хорошо что у него осталась небольшая ниша в виде софта для ssh/терминалов. А фактически, из современных TUI IDE с классическим (не vim/emacs) интерфейсом - только FreePascal? Ничего универсального нет?
strvv
29.12.2023 09:38+1я на ваксах (VaxVMS 4.5) писал в середине 90х свой менеджер для программирования, сходу как-то под 60 кб кода накропал, не отрываясь, еще без комментариев, только вечерний дома набросок в тетради, друзья называли приложение turbozelya, тогда еще tmux и screen не знал, а программировать и отлаживать не выходя в dcl было проще.
зы. Зелей называли из-за зеленой джинсовки и отцовых рубах в 1994 году, т.к. только переехали с казахстана и жили большинство очень не богато. сейчас не в ходу, путают с зеленским.
сейчас проще с всевозможными *curses и прочими библиотеками, а тогда это чистый хардкор...
fndrey357
29.12.2023 09:38+7ChiWriter был такой веселый штук.
Это было под DOS до офиса...
В те времена он конкурировал с Лексиконом, между прочим Советским...
Javian
29.12.2023 09:38+3Самое самое ...что я видел это Фотон
Gummilion
29.12.2023 09:38+10Фотон - это же вроде просто русифицированный Multi-Edit?
maximw
29.12.2023 09:38+10Да. Вообще, не упомянуть Multi-Edit в статье про текстовые IDE это какое-то лютейшее упущение. По-мне, он должен был бы быть на первом месте.
rombell
29.12.2023 09:38я тоже удивился. Пользовался ME и MEW до конца 0х, потом всё-таки пришлось пересесть на гуёвую IDE. Но обе до сих пор стоят, куча макросов нарулена, жалко бросить.
Javian
29.12.2023 09:38+3"До того, как это стало мейнстримом"
strvv
29.12.2023 09:38+1ох как вниинс любило осваивать чужие приложения, вырезая из них части и отдельно продавая.
та же мсвс 3.0 это красношапка 7.2..7.3 с поддержкой дальше, т.к. редхат позже повел две ветки - fedora и rhel (энтерпрайз, не хухры-мухры)...
DenSyo
29.12.2023 09:38+6Foton был "форком" Multi-Edit - обе версии были самыми распространёнными редакторами из-за малого размера и шустрого интерфейса.
a_nick
29.12.2023 09:38+10Muti-Edit, на мой взгляд, вообще был шедевром. Всегда предпочитал его, даже несмотря на наличие вышедших уже Turbo- Borland- Quick- и прочих IDE'шек.
Подсветка синтаксиса для любых языков, а писать тогда приходилось на всем - и Pascal и C/C++ и QBasic и Assembler.
Плюс возможность компиляции/сборки не выходя из среды + подключение внешних отладчиков. Шедевр, одним словом.
DenSyo
29.12.2023 09:38+1Да, он ведь, действительно, плагинами и своей архитектурой позволял очень многое. По скорости работы ему равных не было. Из него даже игрушки запускали, чтоб не спалиться и переключиться в редактор - ресурсов достаточно и для этого оставлял.
FlyingDutchman2
29.12.2023 09:38+1Muti-Edit, на мой взгляд, вообще был шедевром. Всегда предпочитал его
Я до сих пор им пользуюсь. Еще в 90-х годах я написал много макросов на его встроенном языке (несколько тысяч строк кода) и до сих пор их использую. Правда, последня версия Multi-Edit датируется 2008-м годом.
Rayven2024
29.12.2023 09:38+8Помню и Лексикон и Фотон. Но мне больше нравился "слово-дело" в зеленоватых тонах... там еще вроде бы настройки шрифтов и тп сохранялись в конце редактируемого файла.... а в Лексиконе в тех местах, где использовались....
geher
29.12.2023 09:38Зато в "Лексиконе" шрифт при печати точнее всего воспроизаодил шрифт печатной машинки.
Chamie
29.12.2023 09:38+6«Слово и Дело» умудрялся в текстовом режиме отображать полужирный, подчёркнутый и курсив. Лексикон так умел?
MiyuHogosha
29.12.2023 09:38это не был текстовый режим, это была консольная графика. Лексикон тоже кое-что умел в поздних версиях
Chamie
29.12.2023 09:38Нет, изначально там было именно в текстовом режиме, через правку таблицы знакогенератора:
Скриншот
Это уже в совсем поздних версиях он перешёл на графику. Версии, кажется, с седьмой.
MiyuHogosha
29.12.2023 09:38Насколько я помню, менять таблицу на ходу так что это отражалось только на части символов в то время было возможно только в определенном режиме когда это была графика - после вывода тескта в видеопамяти хранится изображение. В текстовом режиме в видеопамяти хранился только текст и цвет символов, смена таблицы знакогенератора изменит весь экран. Формально это графика, можно было бы и рисовать, но редактор этого не делал. По этой причина на некоторых типах адаптеров это возможно было только в чб редиме - их видеопамяти не хватало на разрешение (80*ширина символа)x(25*высота символа) в цвете.
Chamie
29.12.2023 09:38Если я правильно помню, он просто как-то выкручивался за счёт того, что на экране практически никогда не бывает полный набор всех символов.
axe_chita
29.12.2023 09:38+1Как минимум с шестой версии W&D уже умел работать с графикой и редактировать шрифты.
Про отсутствие поддержки графики могу сказать только то, что во второй версии W&D этого ещё не было.
Chamie
29.12.2023 09:38А редактор шрифтов там и в той самой тексто-режимной версии был, я им ещё приловчился системные шрифты MS DOS и даже растровые шрифты Windows править.
Kotofay
29.12.2023 09:38-2Консольная графика в DOS? Это что за зверь такой?
W&D именно что в текстовом режиме работал.
А как просто там было таблицы рисовать -- закачаешься.
PuerteMuerte
29.12.2023 09:38+1W&D именно что в текстовом режиме работал
Ага, в текстовом
Chamie
29.12.2023 09:38Это поздняя версия, она уже с графикой работала. А более ранние, с круглыми кнопками, именно что умели в курсив в текстовом режиме.
deathbel
29.12.2023 09:38Из текстовых редакторов самым топовым был "слово и дело" с резиновыми таблицами шрифтами, графическим режимом
BenGunn
29.12.2023 09:38+11Турбо Паскаль… как же ты был хорош! На винде в работе постоянно использую far из за возможности по F2 юзать пользовательское меню к которому понаписал скриптов. А на маке постоянно использую mc и nvim(не фанат, просто есть необходимость иметь в терминале функциональный редактор кода).
Starl1ght
29.12.2023 09:38+2Не совсем понимаю, зачем авторы этих чудо статей обращают внимание на занимаемое дисковое пространство, когда хороший ССД 7гб\с на чтение и запись стоит в районе 5 центов за гигабайт.
ris58h
29.12.2023 09:38+5Я как-то для себя сравнительную таблицу текстовых редакторов сделал, так вот по ней сразу видно где Electron, а где натив. А от этого уже и скорость старта и скорость работы понятны.
MiyuHogosha
29.12.2023 09:38+4А уж какие замечательные режимы фейла у Electron! Программа (проект наUnity) упала , сделав что-то нехорошее с GPU. Все на электроне, и Дискорд, и IDE упали и показывали черные окошки. Убивать приходилось долго и упорно, все подпроцессы стали "зомбями". При этом несохраненные измения и кое-что еще потерялось. При этом всему остальному ПО, даже браузерами хоть бы хны. Ловил много раз. Пару раз нечто подобное вызывал Chrome с WebGL.
Anatol2007
29.12.2023 09:38+2Ох, прям пробрало от ностальгии) Был у меня случай как то в 90х, Win95 потеряла какую то dll и отказывалась запускаться вместо со сжатым диском со всеми файлами, взять было неоткуда. В итоге на лето пришлось пересесть с C++ на тот самый Borland Pascal, а потом и вовсе на Asm (только вот не помню какой был IDE). в Pascal писал простенькую графическую оконную библиотечку с окнами и мышкой, в астме тоже самое, но побоялся лезть в графику, успел только в 80х25 сваять. Читаю статью и пускаю скупую мужскую слезу теперь, но кажется теперь у меня +1 хобби будет)
DenSyo
29.12.2023 09:38+12Исходный код библиотеки Turbo Vision по рукам ходил в то время - образцом объектного программирования и создания интерфейсов пользователя был.
Willy64
29.12.2023 09:38+5Он же в комплекте с BP шёл. Очень удобно было вместо документации смотреть прямо в исходник.
DenSyo
29.12.2023 09:38Ну, не знаю как у Вас, у нас "комплекты" формировались тем, что на Фидо дали. Исходники IDE на Turbo Vision в комплекте всегда были, да, они же и в документации рассматривались, как пример использования библиотеки. А исходники самой Turbo Vision были допом.
DenSyo
29.12.2023 09:38Исходники библиотеки были далеко не у всех, по ним никогда не встречал документации, хотя книг по использованию Turbo Vision было множество. На сколько помню, скомпилировать то, что ходило по рукам было проблемой, я даже не пытался, я их просто читал. С тех пор люблю читать грамотно написанный код больше, чем документацию к нему. Когда они ко мне попали, уже хорошо освоил Turbo Vision в примерах использования, был понятен замысел, назначение всех свойств и методов - исходный код всего этого механизма дал очень много.
zaiats_2k
29.12.2023 09:38Проблема была в отсутствии двух файлов исходников, в конце концов удалось их добыть, и все без единой проблемы скомпилировалось. Вставлял туда костыль для поддержки русских шорткатов в курсаче. Не помню уже даже что он считал, а это помню. ;)
geher
29.12.2023 09:38Насколько я помню, исходники Turbovision появились в комплекте впервые именно в полной поставке BP 7.0 (не путать с TP 7.0, который поставлялся как отдельно, так и как часть BP). Причем при установке, если не путаю, была возможность эти исходники не ставить. Кроме того, существовали урезанные поставки BP 7.0 (естественно, совершенно не официальные), из которых было выброшено все "лишнее", включая означенные исходники (да, сборки "от Васяна" практиковались уже тогда).
adonixis
29.12.2023 09:38+1Там где "Интегрированное управление проектом и системой сборки:" картинка не та взята из оригинальной статьи, надо вот эту — https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ffedc5d3b-9816-439d-9aa8-0e04c3e40572_1264x948.png
Cheater
29.12.2023 09:38-5У него есть окна, но они не прорисованы. У него не было цветов (а теперь почти нет), потому что зачем? В нем не было поддержки мыши. У нее есть строка меню, но это просто прикол? Если вы нажмете M-`, как сказано в инструкции, вы столкнетесь с действительно странным интерфейсом для навигации по меню — что заставляет задуматься, зачем они вообще потрудились потратить целую строку экранного пространства, чтобы показать строку меню, которая ничего не делает.
Что за феерический бред.
У него есть окна, но они не прорисованы.
Wat
У него не было цветов (а теперь почти нет), потому что зачем?
"Теперь цветов почти нет" на моей машине (и это только именованные цвета, а так про правильной настройке там 24 bit true color как и во всех уважающих себя современных консольных приложениях):
В нем не было поддержки мыши.
Полной интеграции с GPM в емаксе сто лет в обед, не понимаю о чём речь.
У нее есть строка меню, но это просто прикол?
Вызвал, вроде работает, в чём проблема? Хотя давно уже графическим меню не пользуюсь, оно не нужно когда есть хоткеи и M-x. Но автор, конечно, волен упражняться с фичами для новичков и критиковать редактор на их основе.
Alexey2005
29.12.2023 09:38+10Суть проблемы в том, что в какой-нибудь Turbo Pascal IDE всё нужное было сразу из коробки: оно было юзабельно прямо с дефолтными настройками. А в современных текстовых редакторах и тем более IDE вы вообще ничего не сможете сделать, не потратив предварительно несколько часов на настройку и решение проблем.
И это ещё если данная среда вам знакома. Если нет, то вам потребуется пара дней только чтобы разобраться, как в этом вообще набрать программу, скомпилировать её и запустить на выполнение.
mayorovp
29.12.2023 09:38+3Ну почему же, та же Visual Studio тоже адекватно работает из коробки.
Кстати, наиболее "весёлую" проблему с запуском я когда-то наблюдал во Free Pascal. Эта IDE настолько хорошо умела в кросс-компиляцию, что просто не имела опции компилировать под ту платформу, на которой была запущена она сама. То есть каждый раз запуская IDE нужно было залезать в меню и выбирать платформу. А учитывая, что сетевой диск был общий для рабочих станций под винду и под DOS...
Starl1ght
29.12.2023 09:38+2А в современных текстовых редакторах и тем более IDE вы вообще ничего не сможете сделать, не потратив предварительно несколько часов на настройку и решение проблем.
У нас в проде 2 С++ проекта, которые запускаются несколько десятков миллионов раз в месяц. Оба компилируются нажатием кнопочки Build на свежей студии без какой либо конфигурации чего либо, разве что при установки студии, само собой, надо поддержку С++ не забыть.
Аналогично было с IDEA когда я писал на джаве.edogs
29.12.2023 09:38+1Писали/дописывали под андроид, утомились ставить (предварительно угадав) нужные пакеты, а потом их обновлять еще через раз при запуске.
voldemar_d
29.12.2023 09:38MS Visual Studio сразу собирает C++ без каких-либо донастроек.
Только при установке надо выбрать всё правильно.
strvv
29.12.2023 09:38(корпоративная политика вкл) сейчас - нет, поставили недавно студию по моей просьбе, а поддержку с/с++ не включали - только с#... (корпоративная политика выкл)
спасло только mingw64. поставленое просто распаковкой без прописывания путей.
mayorovp
29.12.2023 09:38Потому что Visual C# и Visual C++ - это немного разные продукты, пусть и ставятся они соседними галочками в одном установщике. Но если галочку не забыть поставить, то всё работает без проблем.
А вот с mingw64 нынче одна только установка превращается в приключение...
voldemar_d
29.12.2023 09:38+1Ваша корпоративная политика постановила забивать гвозди шуруповёртом? ;)
Vaitek
29.12.2023 09:38Что у нас есть ещё текстовое для Python кроме vim и emacs ???? (ipython не предлагать)?
MountainGoat
29.12.2023 09:38+1С ноги входит kakoune - вимоподобный редактор с поддержкой протокола LSP - можно иметь vim с IntelliSense и даже ИИ. Имеет скрепочку, и её даже можно дообучать!
LuchS-lynx
29.12.2023 09:38+3Я учился и немного работал в то время с Borland Pascal 7.0 и QBasic 4.5, у последнего была более лаконичная и понятная справка, но и меньшего объема, с более крутым дизайном (белый текст на черном фоне и линки выделеные зелеными текстовыми стрелками, супротив справки черным на фоне бирюзового цвета, которая для меня вызывала отвращение ей пользоваться).
У редактора QBasic 4.5 была классная фича, которую я больше нигде не видел, а именно и в Паскале, и в Си, и в Бэйсике процедуры хранятся в одном и том же файле, соответственно такое представление (портянкой или папирусом), если программа большая, неудобно. Гораздо удобнее выделить процедуры в отдельные окна или осуществлять переключение через меню, что и было сделано в редакторе QBasic 4.5
На самом деле файл писался портянкой всегда, но при использовании операторов перехода как gosub отличалось от Declare SUB / Function с дальнейшим CALL. В VBA (VB) такой подход сохранился кстати.
PuerteMuerte
29.12.2023 09:38+1У редактора QBasic 4.5 была классная фича, которую я больше нигде не видел
В Visual Studio это перешло, во все последующие версии. В BP7 это, пожалуй, не особо легко было реализовать, т.к. процедура/функция там не являлась всегда подпрограммой высшего уровня, как в Бейсике.
alecv
29.12.2023 09:38+3Современные средства рефакторинга - очень мощная и полезная вещь. Как то раз пришлось переводить старинную С программу с кучей папок и файлов аж из K&R стиля в современный. Старые IDE такого не умели или умели не очень. Даже тогдашние GUI топы типа MS Visual C++/Borland C++. Первый нормальный был, наверное, Eclipse. А VSCode вообще отлично.
mayorovp
29.12.2023 09:38Если бы этот Eclipse ещё запускался не по часу, и умел отлаживать без плясок...
alecv
29.12.2023 09:38Вроде это был Kepler. Нормально запускался даже на тогдашнем Pentium IV. А компилятор/отладчик были gcc/gdb виндовые, не помню какие. Вроде MinGW старый, какая-то готовая сборка. Настоящий адок - это СLion. Можно кофе сходить попить, пока запускается.
JordanCpp
29.12.2023 09:38На мой взгляд более объективно было бы сравнивать современные IDE и период 20 лет назад. Что то с 1998-2000 ых.
MiyuHogosha
29.12.2023 09:38+3Так беда в том что с текстовыми средами за 20 лет ничего принципиально не изменилость. Здесь не сравнение старых сред со студией - здесь сравнение с их современными аналогами. и выходит что современный аналог занимает в 50 раз больше места и до сих пор является той же адовой шкатулкой , которую надо знать, как открыть.
А все почему? Элитарность. Пользователи emacs гордятся тем, что умеют им пользоваться (из зала доносится фыркание пользователей vim).
JordanCpp
29.12.2023 09:38+1Если уж объективно сравнивать, текущие современные IDE это не просто текстовый редактор, а парсер языков ч созданием дерева проекта, для обеспечения переходов в коде и т. д
Просто подсветки уже не достаточно, хочется некие функции рефакторинга.
Portnov
29.12.2023 09:38-1Т.е. я так понял товарищ хочет IDE от FreePascal, но для других языков (я так понял C или пюсов). Действительно, несколько даже странно, что их нет, с учётом всего разнообразия софта, который есть :) Или может есть, но на первой странице гугла не всплывает.
eugrus
29.12.2023 09:38-1Консоль для пайпинга. GUI для интерактивных приложений. Интерактивные, а тем более полноэкранные интерактивные приложения для консоли – костыли, которые были нужны в силу отживших технических ограничений.
Что касается современных технических ограничений, как упомянутая проблема VSCode с FreeBSD: даже для Windows есть отличный драйвер SSHFS, так что можно монтировать каталоги на уровне системы и редактировать файлы с FreeBSD-хоста произвольным текстовым редактором.
sukhe
29.12.2023 09:38+1Там проблема в том, что ремоут дебаггер на FreeBSD не работает. То есть, не отладишь запущенную удалённо программу.
Mirn
29.12.2023 09:38+5Я до сих пор пользуюсь связкой FAR manager + ConEmu
помимо всех плюшек что выше в каментах перечислили (интеграция с консолью, и тд)
для меня важны ещё и эти:Поддержка уникода как на ввод так и на отображение кандзи, китайских и тд
Возможность перетаскивать в панель и из панели файлы например в проводник винды
Порт под люниксом работает ТАК ЖЕ как и под виндой и даже отлично работает на одноплатниках типа малинки / оранджа
Двух-панельность
Поддержка символических хард и софт линков в винде (да да они есть и они похожи на люниксовые)
Возможность просмотра корневой ФС винды а не дисков (и это тоже есть!), всех файлов - ивентов, мьютексов и тд
Встроенный архиватор
Подсветка синтаксиса в редакторе текста чего угодно: не только классических ЯП а и HDL типа верилога, скриптов разводки плат спектры и тд
показ содержимого, например лог файла, реалтайм в режиме просмотра - если сторонняя программа в него пишет то он покажет обновления. Конечно же с поддержкой множества вкладок просмотра и редактирования.
Поддержка не только разных кодировок но и разных форматов конца строк CR/LF LF CR и тд (почему то многие люникс программы и скрипты не умеют в СR/LF - что крайне удивительно для меня, тот же пайтон например) Ну и ещё он при редактировани очень аккуратно обрабатывает и кодировки и концы строк сохраняя исходное.
chnav
29.12.2023 09:38+1Я и половины не знаю из вышеперечисленного (( В частности про мьютексы в FAR, подсветку синтаксиса и др. Максимум использую встроенные плагины, идущие с фаром в комплекте. Ещё были бы интересны плагины для просмотра машинного кода по типу HIEW, чтобы для x86 и ARM.
BareDreamer
29.12.2023 09:38+1Поясните про пункт 6: просмотр корневой ФС. Это встроенная возможность или плагин?
qw1
29.12.2023 09:38Похоже на плагин, который показывает это дерево
https://learn.microsoft.com/ru-ru/sysinternals/downloads/winobj
Исходники WinObj есть, наверное кто-то переделал в плагин.
mikegordan
29.12.2023 09:38+730 лет прошло, а люди всё сидят на своих Вимах, Емаксах и всё никак их не отпустят.
p.s жду слив кармы.
ciuafm
29.12.2023 09:38+2С TUI IDE познакомился на PC XT в 1988 - это был Turbo Basic. После унылого БК0010-01 интерпретатора а-ля Синклер компилятор с Бейсика - это была бомба. Точно не помню, но вроде бы и дебаггер там был.
vvbob
29.12.2023 09:38+3Первые программы писал на Спектруме, было прикольно и по своему удобно. Потом пересел в школе на Turbo Pascal, современные разработчики не поймут, насколько это было в те времена круто! Это как научиться ездить и получить права на Жигулях, а потом сесть за руль какого-либо современного дорогого кроссовера, ощущения будто ты в какой-то лакшери ракете сидишь, все удобно, все работает с огромной скоростью, куча памяти (да сейчас смешно звучит, а тогда 640 Кб реально хватало), жесткий диск, блин.. это восторг был.
bear11
29.12.2023 09:38Читаю я, читаю, и удивляюсь! Ну почему никто, никто не упомянул xwpe и wpe!? Они же именно для этого были сделаны!
https://pkgs.org/search/?q=xwpe
xwpe - c поддержкой X, wpe - чисто консольный.
Window Programming Environment.
Очень рекомендую попробовать.
YuriPanchul
29.12.2023 09:38+2Лучшим редактором всех времен и народов для меня был досовский Multi-Edit, но joe, который я использую сейчас - тоже норм (я подсел на него как следствия использования TurboC в 1988-1991). Но для молодежи наверное приемлемым оптимумом сейчас является VSCode.
vi и emacs - несколько раз пробовал перейти, через месяц с облегчением сваливался обратно на joe. Sublime - ок чтобы писать тексты, но плохо работает с прямоугольными блоками.
dimas
29.12.2023 09:38vim стоит начать с vimtutor. Либо уже через час-два начнешь в нём нормально работать, либо стоит бросить :)
YuriPanchul
29.12.2023 09:38+3Да я уже раза три его выучивал до того, как "нормально работать". Но потом снова пробовал joe, и такое облегчение испытывал "боже зачем я мучился с этим vi"
checkpoint
29.12.2023 09:38Юрий, могу предположить, что основная фича к которой ты привык в joe (как и в multi-edit-е) это блочно-прямоугольное копирование текста. В vi/vim такого нет и быть не может потому, что эти редакторы по сути строковые. Блочное копирование текста конечно удобная фича, но она создает проблемы с табуляциями. Поэтому пользователи joe и прочих VSCode-ов люто ненавидят табуляции, так как произвольное копирование табуляций приводит к нарушению форматирования текста. Для пользователей же vi/vim и emacs табы это благодетель. :-)
Cheater
29.12.2023 09:38+1В vi/vim такого нет и быть не может
??? В Vi такого нет, но в Vim Ctrl+v выделяет прямоугольный блок текста, его можно вырезать, вставлять. Это такой же выделенный текст, просто выделение не непрерывное, и с некими соглашениями как такие объекты вырезать и вставлять.
checkpoint
29.12.2023 09:38В моём vi (FreeBSD 13.2) такой фичи нет, но это и не важно, так как такой способ копирования создает больше проблем, чем упрощает работу.
mpa4b
29.12.2023 09:38Ну может в настоящем vi в вашей фрибзде и нет, но в viM прекрасно есть. Не надо вводить людей в заблуждение написав без разбору что мол "vi/vim".
deathbel
29.12.2023 09:38+1Зачем во фряхе vi когда там ee есть из коробки? Vi это для совсем диких систем где воообще ничего из коробки нет.
YuriPanchul
29.12.2023 09:38+2Моя лютая ненависть к табуляциям не только из-за этого. А например потому что они превращают в кашу текст на гитхабе, так как всем разработчикам и читателям невозможно договориться об одинаковых установках табуляций. Интересный случай: в британской компании Imagination Technologies разработчики спорили, делать ли в коде отступы по 2 пробела или 4 пробела, и менеджмент решил что раз так, то всех перевести на 3 пробела. Это не интернет-байка, я в этой команде работал!
mpa4b
29.12.2023 09:38+3Блин, ну на поверхности же решение. Табуляции -- для индента (вложенные блоки), а всё что правее текущего индента -- пробелы. И тогда от размера табуляций зависит только сдвиг индента, в кашу ничего никогда и нигде не превращается.
<tab>assign a = (b & c) | <tab> (d & e) ;
Вот типа такого
nronnie
29.12.2023 09:38+2А что за нужда вообще для отступов tab использовать вместо пробелов?
checkpoint
29.12.2023 09:38Меньше кнопок давить. Экономия дискового пространства.
qw1
29.12.2023 09:38+1Меньше кнопок давить
Нет разницы. В любой современной IDE жмёшь тот же TAB, и получаешь нужное число пробелов. Жмёшь BackSpace и откатываешься на 1 уровень отступа.
daggert
29.12.2023 09:38Зачем в этом всем тогда пробелы? Жмешь таб - у тебя табуляция вставляется. Зачем ее заменять на пробелы? Какая-то лишняя сущность.
qw1
29.12.2023 09:38Очень удобно. А у меня в разных редакторах размер таба разный, поэтому вариант использовать таб вместо пробелов вызывает неудобства.
GRADUSnick
29.12.2023 09:38одно нажатие мизинцем против двух или четырёх?
Я найду на что потратить это время, если честно.
YuriPanchul
29.12.2023 09:38Это очень мило, но когда в команде 200 человек, которые делают checkin в разных временных зонах, причем приходят новые, а старые забывают - все такого рода рекомендации не работают и код превращается в кашу. Править эту кашу - вносить дополнительные изменения в revision control, которые нужно review. Не надо, спасибо.
YuriPanchul
29.12.2023 09:38+1Также ваш код автоматически превратится в кашу, если кто-то из членов команды забудет в своем редакторе при разрешении табов отменить установку "превращать пробелы в табы" (вторая строка сломается). А навязать всем членам команды один редактор и одинаковые установки - это нереально. А вот с запретом табов код будет для всех выглядеть одинаково и ни у кого не будет фокусов, пока другие члены команды спят.
mayorovp
29.12.2023 09:38+2Зато будут фокусы с тихим переформатированием всего кода под заданные отступы.
Пришёл один программист - переделал все отступы на 4 пробела, пришёл второй - переделал все отступы на 2 пробела. А потом конфликт при слиянии.
Увы, агрессивное форматирование современных редакторов, помноженное на нежелание программистов их настраивать, не лечится простыми костылями вроде запрета табов.
YuriPanchul
29.12.2023 09:38+1Ну прежде всего в моем текущем проекте на работе строк кода миллионы и "тихое переформатирование" тихим не будет - сразу будет вопрос при интеграции (которая сделана сложно) "кто это пробует столько менять".
Поэтому традиция такова: у каждого есть ownership некоторых модулей, в своем модуле делай как хочешь, а на чужой территории стараться подстраиваться под чужой стиль и предварительно спросить.mayorovp
29.12.2023 09:38Если всё так - то и с табами проблем быть не должно.
YuriPanchul
29.12.2023 09:38+1Нет, в таком случае с табами проблема, так как настройки табов в редакторе одного инженера могут быть другие чем настройки табов в редакторе другого инженера, и при этом может стоять опция "заменяй N пробелов на таб" то есть "сделай кашу для другого". Избегание табов это решает.
Но вообще с табами у меня проблемы больше всего не на основной работе, а на open-source проектах, которые держатся на гитхабе и потом даются студентам в качестве примеров. Так как на гитхабе в веб-интерфейсе каждый читатель видит табы как у него установлено, и так как табы в веб-интерфейсе могут быть другими, чем в редакторе писателя, то уж для кого-нибудь из сотен читателей каша возникнет.
Для таких проектов у меня есть скрипт, который сразу ловит табы, и хотя периодически контрибуторы вставляют табы, я стараюсь поддерживать с этим порядок, тем более что открытые проекты не такие большие
Chamie
29.12.2023 09:38А навязать всем членам команды один редактор и одинаковые установки - это нереально.
Как насчёт добавить в проект файл .editorconfig?
checkpoint
29.12.2023 09:38+2если кто-то из членов команды забудет в своем редакторе при разрешении табов отменить установку "превращать пробелы в табы" (вторая строка сломается).
А вот за такие фичи разработчикам редакторов нужно руки отрывать и засовывать туда, где у негра темнее всего. Редактор не имеет морального права ничего менять в тексте без ведома пользователя и получения явной команды от него.
В редакторе vi можно спокойно открыть бинарный (исполняемый) файл и отредактировать его без потери исполняемости.
qw1
29.12.2023 09:38Меня бесят разработчики, не соблюдающие правила пунктуации и индентацию.
И как хорошо, когда IDE заботливо превращает ихint r=f(x,y,z)+c;
в нормальныйint r = f(x, y, z) + c;
при печати последней;
или правильно выравнивает весь вложенный блок сразу при печати закрывающего}
checkpoint
29.12.2023 09:38А меня вот бесят разработчики которые целиком и польностью полагаются на IDE. Все эти авто-подставновки, замена табов - это все делает разработчика ленивым и не стимулируют развитие памяти.
qw1
29.12.2023 09:38Да ну, глупости. IDE, которая делает авто-форматирование по правилам коде-стиля, экономит кучу времени на мелочи типа "тут пробел добавить, тут подвинуть". Меня вот бесит неряшливый код, а коллегам важнее сэкономить 10 секунд своего времени, и вообще себя не утруждают полировкой. Пусть хоть IDE поправит, что может.
А тут я ещё распробовал AI-auto-completetion, это вообще имба. Угадывает процентов на 20, что нужно, и остаётся только давить хоткей "complete" в нужный момент, или писать своё, если IDE не угадала. Это вообще делает ленивым, но как круто экономит время, особенно на рутинных блоках, где нужно перелить одноимённые поля из одной DTO в другую.
checkpoint
29.12.2023 09:38В какой-то момент Вы обнаружите, что без автоподстановки не можете написать ни строки кода. И это будет печально.
qw1
29.12.2023 09:38+1Не вижу в этом проблему. В какой-то момент программисты обнаружили, что не могут по памяти пробить перфокарту, потому что забыли двоичные коды символов. А ведь когда-то это знание было частью повседневной работы.
checkpoint
29.12.2023 09:38Не совсем так. История гласит, что перфокарты были вытеснены более обьёмными носителями с меньшим временем доступа. Программисты тут совершенно не причем. Но я с согасен, двоичные коды знать нужно.
mpa4b
29.12.2023 09:38Ну так запрет табов (выдача пачки пробелов по нажатию на Tab) тоже надо в редакторах настраивать. Так что чисто логически разницы в подходах нет -- и там и там надо редакторы настраивать.
bear11
29.12.2023 09:38+3огромная проблема с vi* - то, что при работе с мультиязычными текстами при включенной, например, русской раскладке все командные клавиши не работают! надо переключаться на английский, что ломает всю стройность хоткеев.
Nagdiel
29.12.2023 09:38Просто не надо для переключения раскладки использовать системный переключатель. В vim это делается так:
" Настраиваем переключение раскладок клавиатуры по <C-^> set keymap=russian-jcukenwin " Раскладка по умолчанию - английская set imsearch=0 set iminsert=0
По желанию можно привязать альтернативную комбинацию:
inoremap <C-L> <C-^>
bear11
29.12.2023 09:38+6... и держать в мозгу "я в vim - мне сontrol ^" - я не в vim - мне control-alt. Спасибо, не надо.
nronnie
29.12.2023 09:38-1Есть альтернативные решения и про них тут неоднократно в статьях писали, можно поискать.
А вообще, надеюсь ...
... что тех двух греков, что изобрели и притащили сюда когда-то кириллицу, черти в аду каждый день в котлах варят и на сковородах жарят.
geher
29.12.2023 09:38двух греков, что изобрели и притащили сюда когда-то кириллицу,
Есть версия, что не притащили, а доработали (добавив символы в уже существующую и популярную письменность). А вот за что следует хвалить всех богов, так за то, что продвигаемая ими же (двумя греками) глаголица не прижилась. Иначе было бы почти как в Японии с их аж тремя наборами знаков (почти, поскольку там правила выбора набора знаков достаточно хитрые, и всегда пользоваться одним не получится, не поймут, не в смысле написанное не поймут, а не поймут, почто нарушаешь).
tenzink
29.12.2023 09:38-1Не знаю почему, но мне vim идеально заходит, только когда живу под linux. Предполагаю, что всё дело в убожестве виндовой консоли (что cmd, что power shell), другими инструментами (tmux и т.п.) и тому как всё вместе это удобно стыкуется воедино в линуксе
nronnie
29.12.2023 09:38что power shell
Вы не умеете его готовить. После него
bash
воспринимается как какой-то полуночный кошмар.Vim
отлично живет и работает в Windows Terminal (про "conhost" не знаю, потому что уже даже забыл как оно выглядит)tenzink
29.12.2023 09:38Скажите, туда аналог z (из zsh), быстрые переходы к последним директориям, продвинутый autocomplete и навигацию по истории команд завезли? В power shell не специалист, действительно интересно. Как язык меня ни bash, ни ps не интересуют от слова совсем. Для чего-то нетривиального есть python
nronnie
29.12.2023 09:38+1продвинутый autocomplete
По него я уже показывал - autocomlete-ит по любому wildcard (а не только по началу), плюс вместо полной команды можно набирать её сокращение (например, "g-i" сразу развернется в "Get-Item").
Есть API для создания completion-скриптов для любой команды (аналог bash-completion скриптов). Есть готовые модули или скрипты для некоторых приложений (git, winget, dotnet cli, github cli). Autoicomplete для всех команд cамого pwsh и любых пользовательских скриптов или ф-ий на нем написанных работает автоматически, если скрипт или функция имеет параметры, то можно (и даже несколькими разными способами) кастомизировать autocomplete для любого отдельного параметра.
навигацию по истории команд завезли?
В каком смысле? Есть команды "h" и "r" - псевдонимы для "Get-History" и "Invoke-History". А поскольку вывод любой команды в pwsh это всегда поток объектов, тот же Get-History (h) можно хоть отфильтровать, хоть отсортировать, хоть что угодно унифицированными для всего pwsh способами.
Например: "Выполнить все команды с 10 по 20, которые начинаются на "x" в обратном порядке":
h | ?{ $_.Id -ge 10 -and $_.Id -le 20 -and $_.Definition -match '^x' } | sort Id -des | %{ r $_.Id }
аналог z (из zsh)
Я просто не знаю, что это такое, поэтому сказать не могу.
быстрые переходы к последним директориям
cd - # одну назад cd + # обратно одну вперед # на несколько назад прямой команды, похоже, нет, но можно как-то так (на 7 назад, потом на 7 вперед): 1..7 | %{ cd - } 1..7 | %{ cd + }
Есть такие вещи, как "vi-" и "emacs-" mode для редактирования вводимой команды. Есть очень гибкая кастомизация prompt c которой вообще можно делать все что угодно. Есть фоновые задачи с отслеживанием статуса, буферизацией и получением вывода после завершения. И еще полным-полно всего, что можно качать и ставить как модули из "PowerShell Gallery" или же своих собственных репозиториев.
tenzink
29.12.2023 09:38z (zsh) - имеется ввиду вот это https://github.com/agkozak/zsh-z. Для навигации в файловой системе очень удобно. Про историю команд постоянно пользуюсь, что можно ввести начало команды, и стрелки вверх вниз будут перебирать только те команды из истории, которые начинаются с этого префикса
Если ps умеет делать autocomplete используя fuzzy logic типа такого, чтож, респект. При случае стоит попробовать. В свой время я поставил крест на PS за вот это чудо: `curl - is an alias of the Invoke-WebRequest cmdlet`
nronnie
29.12.2023 09:38можно ввести начало команды, и стрелки вверх вниз будут перебирать только те команды из истории, которые начинаются с этого префикса
Про такое прямо так сразу не скажу (если я этого точно не знаю, значит оно мне до этого было просто без надобности), возможно, в настройках PSReadLine что-нибудь про это и есть.
Если ps умеет делать autocomplete используя fuzzy logic типа такого, чтож, респект
В pwsh есть "Predictive IntelliSense".
В свой время я поставил крест на PS за вот это чудо:
curl - is an alias of the Invoke-WebRequest cmdlet
А в чем с этим проблема? Не нравится - можно его убрать и пользоваться псевдонимом
iwr
. У меня, кстати, почему-то (ничего для этого не делал):PS *@*:~$ gal iwr | ft name, definition Name Definition ---- ---------- iwr Invoke-WebRequest PS *@*:~$ gal curl | ft name, definition Get-Alias: This command cannot find a matching alias because an alias with the name 'curl' does not exist.
tenzink
29.12.2023 09:38А в чем с этим проблема?
Тогда было проще запустить cmd.exe и не сильно думать, почему curl не работает в ps как от него ожидается. Если от этого избавились, то можно только порадоваться. Сейчас под рукой нет windows. Если придётся ещё попрограммировать под windows, попробую ps. Ожидания, правда невысокие
nronnie
29.12.2023 09:38Выполняемая программа (exe-шник) в pwsh имеет приоритет над псевдонимом. Если установлен curl (в win его изначально нет), и он в PATH, то вызовется он, вот и все. А вот в bash как раз запросто можно накосясить переназначив curl в ~/.profile на что-то другое.
Dave_by
29.12.2023 09:38+5По мне так образцом идеального IDE остаётся Delphi. Настолько классно объединить редактирование кода и интерфейса - это нечто. До сих пор не понимаю почему он канул в лету. Может кто-то объяснит?
geher
29.12.2023 09:38Еще живо, выпускаются новые версии. Популярность не сказать, что высокая, но пока не слились.
Dave_by
29.12.2023 09:38+1Ну да, кое-как трепыхается. Но в начале нулевых он был прям идеалом enterprise разработки. Если сейчас про мобилы говорят "для всего есть своё приложение", то тогда про Delphi говорили "для всего есть свой компонент". Этот самый "hello world" можно было сделать не написав ни единой строчки кода, да ещё и со шрифтами и цветом поиграть.
qw1
29.12.2023 09:38Hidden text
https://cdn.discordapp.com/attachments/977945442581119046/1190728834023174305/delphi-chess-component.mp4
strvv
29.12.2023 09:38даже во второй половине 90х, когда появилась.
фирма Relex в Воронеже тогда, в 1996 году разрабатывала редактор типа delphi, с компонентами и прочими блекджеками и актрисами для своего Linter (реляционная СУБД) - делать виндовые приложения напрямую с логикой СУБД. правда с 97 года, как-то было не до них, но вроде ещё работают.
PuerteMuerte
29.12.2023 09:38+5Может кто-то объяснит?
По двум причинам:
Похерили старые наработки и начали писать с нуля, получилось коряво, и несколько лет понадобилось только чтобы довести до хорошего состояния, тем самым сильно расстроили текущих разработчиков
Одновременно с этим установили минимальную цену в 700 баксов на приобретение лицензии, при этом сделав неработоспособными бесплатные версии. Тем самым помножили на ноль приток новых разработчиков
Потом исправились, но было уже поздно.
SergeiMinaev
29.12.2023 09:38«Настоящие» современные консольные IDE
Итак, что же мы имеем на сегодняшний день для современных языков? На сегодняшний день, похоже, актуальными являются Neovim, Doom Emacs или даже Helix.
Неовим - не IDE.
checkpoint
29.12.2023 09:38А кто нибудь помнить как в MS-DOS делалась руссификация, т.е. ввод кириллицы ? ;)
Sly_tom_cat
29.12.2023 09:38-2КОИ-8R - брр, чур меня чур, от одного названия содрогаюсь....
checkpoint
29.12.2023 09:38+4Не. KOI-8R был в Юниксах, в MS-DOS-е использовалась кодировка CP866. Вопрос был в том, как организовывалось переключение раскладок клавиатуры. :)
Kotofay
29.12.2023 09:38+3В ЕС-1840/41 как раз KOI-8R был прошит в знакогенератор.
Но знаменитый keyrus всё исправлял на отлично. До сих пор использую его шрифты в поделках.
Willy64
29.12.2023 09:38+1На этот случай в системе было родное решение (вроде бы keyb.com, никогда им не пользовался из-за непригодности) и множество сторонних программ. Вспоминается keyrus.com (резидент) и fnload.sys (как драйвер). После того, как в мои руки попал редактор шрифтов, который позволял редактировать шрифт прямо внутри исполняемого файла fnload.sys, началось увлечение шрифтами. Точно помню, что делал "проволочный" шрифт, все линии в один пиксель, и "broadway" с утолщенными вертикальными линиями в буквах, этот был четко виден при пониженной яркости. А ещё ведь тогда на мониторы вешали экраны из затемненного стекла для "защиты от излучения", так что бродвей реально помогал.
Отличная функция fnload.sys - подсветка неиспользуемой области монитора (тогда все 100% были CRT) при включении русской раскладки. Мне сейчас такого заметного индикатора очень не хватает.
Для переключения использовался правый Ctrl. Я другими кнопками не пользовался, но выбор был, как и сейчас, Shift, Ctrl, Alt, комбинации.
strvv
29.12.2023 09:38dec vt220 шрифт прикольный, исходно wire, но сдублирован сдвигом вправо. очень красивый консольный шрифт.
geher
29.12.2023 09:38+1Было как минимум два способа. Штатный - подгрузкой родных драйверов из поставки системы (display.sys, country.sys; keyb.com и все такое), и альтернативный, запуском какого-нибудь keyrus.
checkpoint
29.12.2023 09:38Верно. TSR было наше всё. У меня на рабочей 286-й машине как правило в памяти висело четыре-пять TSR-ки. Среди них afd.exe (отладчик), techhelp.exe (гипертекстовый мануал по
системным вызовамINT-ам), keyrus.com (собсно руссификатор) ну и одна-две своих. Но первой всегда загружалась release.com - это такая TSR которая позволяла выкинуть из памяти любую другую TSR загруженную после неё. Эдакий диспетчер задач. Вот такая была в то время многозаачность в MS-DOS. :-)Правда длилось все это не долго, как только у нас появились 386-е ПК, все дружно пересели на OS/2 и SCO. Где-то в 1993-94м.
Willy64
29.12.2023 09:38А еще была утилита freegame, которая по Ctrl-Alt-Del прибивала программу, загруженную через аргумент командной строки. Обычно это была игра :), но при работе тоже пригождалось.
saboteur_kiev
29.12.2023 09:38+1keyrus.com
Но вообще зависит от. у меня на совковом ноутбуке была хардварная кнопочка переключения на русский, правда была своя собственная кодировка.PuerteMuerte
29.12.2023 09:38Но вообще зависит от
...видеоадаптера. На единственном серийно выпускавшемся совковом ноутбуке, Электроника МС1504, видеоадаптер был CGA, знакогенератор там зашит в ПЗУ и чудесным свойством программного переключения шрифтов не обладает. Keyrus для работы требует либо EGA, либо навороченные.
OlegZH
29.12.2023 09:38В те стародавние времена использовалась такая штука как таблица знакогенератора. Например, у меня в автозагрузке стояла TETTA.COM, которая «висела» на Ctrl-Shift (если не забыл). Смысл в том, чтобы подменить таблицу знакогенератора, иначе, русских букв, будут вылезать всякие псевдографические крякозябры.
Помнится, что в Norton Utilities (если кто помнит этот пакет) тоже подменялась кодовая таблица, в результате чего начертание символов становилось приятнее.
checkpoint
29.12.2023 09:38+1Подменялась не только таблица знакогенератора но и ввод с клавиатуры. Всякого рода руссификаторы (keyrus.com) сажались на прерывание с клавиатуры (int 9h), системных вызовов (int 21h) и подменяли коды символов когда это требовалось.
OlegZH
29.12.2023 09:38-1Эххх... А что будет, если нынешним специалистам рассказать про прерывания?
И ... ещё, эта книжка:
Р. Джордейн. Справочник программиста персональных компьютеров типа IBM PC, XT и AT. М.: Финансы и статистика, 1992.
Открываем стр. 272 и читаем:
MOV AH,6 MOVE AL,1 MOVE CH,0 MOVE CL,0 MOVE DH,24 MOVE DL,79 MOVE BH,7 INT 10H
Где же сейчас с этим со всем можно поиграться?
checkpoint
29.12.2023 09:38+1Поиграться с этим не составляет труда. apt-get install dosbox, установите AFD, NASM, LINK и вперед. Вот инструкция: http://wetolearn.blogspot.com/2013/09/setting-up-afd-nasm-and-dosbox-for-8086.html
geher
29.12.2023 09:38+3Помнится, что в Norton Utilities (если кто помнит этот пакет) тоже подменялась кодовая таблица, в результате чего начертание символов становилось приятнее.
Причем в поздних версиях подменялась динамически, что позволяло сделать графический курсор в текстовом режиме (коды четырех символов под курсором модифицировались на четыре левых кода, картинки из знакогенератора которых корректировались с учетом исходных кодов символов и положения курсора мыши).
Merrynose
29.12.2023 09:38+1Как только вы узнали, что клавиша Alt открывает меню, а Tab перемещает по полям ввода и кнопкам, вы могли с легкостью ориентироваться практически в любой программе.
В любой программе, созданной с использованием библиотеки Turbo Vision или ее имитирующих. А так там был знатный зоопарк: сравним интерфейс того же Turbo Pascal, Super Calc и какого-нибудь Лексикон -- вообще ничего общего.
OlegZH
29.12.2023 09:38У оригинальной библиотеки Turbo Vision был существенный недостаток — низкая скорость работы. Когда при помощи Turbo Vision делали Dos Navigator, то (в RIT Research Labs) сделали столько ассемблерных вставок, что этот самый Dos Navigator просто летал.
Sly_tom_cat
29.12.2023 09:38В линейке Borland Turbo **** замечательным было то, что там можно было в это IDE и свое что-то засунуть т.к. были исходники (на сколько они там легально могли использоваться тогда никого сильно не волновало).
Мы на пару с одногруппником сделали а-ля Turbo Lisp в качестве дипломной работы (я интерпретатор, а он в IDE его засунул). Сила этого "засунул" была в том, что скобочка ответная той, на которой стоял курсор тоже мигала (кто пробовал lisp - поймет на сколько это круто :) ).
Еще прикрутили а-ля компилятор - просто текст с вырезанными форматированием (не значимые пробелы, табуляции и переносы строк) цеплялся к бинарику интерпретатора. Перегонять lisp в какой-либо псевдо-код особого смысла нет т.к. там автомат синтаксического разбора примитивный как "палка и веревочная петля".
Его потом в учебном процессе еще несколько лет использовали. Позже студенты ошибку в интерпретаторе нашли, так я ездил в свою альмаматер, что бы ее поправить.
TitovVN1974
29.12.2023 09:38+1Compaq Visual Fortran шел с MSVS 6.0, библиотеками IMSL, Compaq Array Visualizer -на OpenGL и работающим в том числе при отладке, c диалогами, кнопками etc. Все отлично работало "из коробки" ...
breninsul
29.12.2023 09:38+1Не совсем понятен аргумент про регресс. Из названия я ожидал увидеть бомбический рефакторинг, удобную навигацию и т.д. что есть в продуктах Jetbrains, например.
Но магии нет, с переходом в GUI IDE ничего не потеряли.
Не совсем понятен и аргумент про ssh.
Скомпилировать может быть нудно, наверное, в каких-то сферах. Но зачем писать код открывая ide на удаленной машине не понятно
nronnie
29.12.2023 09:38+2Не совсем понятен и аргумент про ssh.
Ну, вот, например, пакет "Remote Development" для VS Code это не только ssh. С ним можно писать и, самое главное отлаживать код прямо внутри, например, WSL2 и даже docker-контейнеров. И все это сидя из-под своей основной, привычной операционки никуда не переключаясь и никаких тех же исходников туда-сюда не копируя.
AlexKMK
29.12.2023 09:38+2У бурландов была прекрасная опция отладки - анимация. Нажимаешь и он сам за тебя жмакает F8 а ты смотришь как процессор движется по программе.
Panzerschrek
29.12.2023 09:38Сравнивать нормальные ранние IDE, предназначенные для написания кода на строго определённом языке с общими текстовыми редакторами (vim/emacs) несколько некорректно.
Сравнивать нужно с чем-то вроде Visual Studio, NetBeans, Code::Blocks, QtCreator и т. д. Все они сразу после установки дают возможность написать код (с подсветкой синтаксиса), собрать его и отладить (если надо). Более того, в них есть то, чего не было в древних IDE - умное автодополнение кода, рефакторинг, интеграция с системой контроля версий, (иногда) редакторы GUI, и много чего ещё.MiyuHogosha
29.12.2023 09:38+2БылиIDEс автодополнением, автор просто их не знает. А контроля версий наПК не существовало до середины 90х
MiyuHogosha
29.12.2023 09:38Вот уж какую IDE (и заодно компиляторы) мы потеряли, так жто TopSpeed. Она была многоязыковая!Паскаль, Си, пролог и т.д
Jeshua
29.12.2023 09:38+1Внезапно заметил - смотрю на синий интерфейс, и глаза отдыхают. Не наполняются слезами от воспоминаний, а реально отдыхают, при переключении на текст статьи или на любое окно Винды я щурюсь и приближаюсь к экрану. Для эксперимента открыл ФАР. Теперь я знаю, как делать гимнастику для глаз ))
chnav
29.12.2023 09:38Для полного расслабления ещё установить растровый шрифт 10x18. Он легкочитаемый, максимально приближен к досовскому полноэкранному 8x16, всё как в статье.
Не помню с какой версии появился шрифт 10x18, кажется с Windows XP. До этого дополнительно устанавливал растровый фонт, в наборе были 8x16, 9x18 и др. С появлением 10x18 "из коробки" в этом отпала необходимость.
Chamie
29.12.2023 09:38Эхх, а у меня — наоборот, от синего глаза вытекают. Одним из плюсов ВолковКомандера для меня был как раз дефолтный чёрный цвет.
Willy64
29.12.2023 09:38Я и сейчас использую синий фон для написания программ, вот что привычка к борландовским средам делает, иначе сложно заставить себя воспринимать текст как программу. И всё еще без очков, хотя начинал с CGA!
axe_chita
29.12.2023 09:38-1Вообще Edit.com, из DOS 5 и выше, не был текстовым редактором. Это была программа запускавшая на исполнение Qbasic с ключом /EDITOR
sergpank
29.12.2023 09:38С удовольствием съехал с этой досовской мерзости в конце нулевых, как только вышло что-то поудобнее и никогда на него больше не вернусь. Даже Eclipse гораздо удобнее в разработке на С++ чем все эти TuboС и прочие вимемаксы когда речь заходит о проектах с сотнями файлов с сотнями строк кода каждый, а не о студентческой лабораторной работе.
w0lf
29.12.2023 09:38Стоило упомянуть в статье Turbo Pascal 3.0 под CP/M. Во-первых он имеет специфичный, отличный от DOS внешний вид, но включает в себя много функций DOS версии. Во-вторых он актуален и сейчас для ретро-программирования под CP/M. Я в частности использую для всяких поделок типа https://github.com/ivang78/flapcpm
nameisBegemot
29.12.2023 09:38+1Потеряли консоль. Зато библиотеки приобрели. Пробовал однажды все это турбо С++. Что значит нет библиотеки iostream? Что значит нет cout?
PuerteMuerte
29.12.2023 09:38Потеряли консоль. Зато библиотеки приобрели.
Библиотеки приобрели намного раньше, чем потеряли консоль
Пробовал однажды все это турбо С++. Что значит нет библиотеки iostream? Что значит нет cout?
Смотря в каком году пробовали
nameisBegemot
29.12.2023 09:38-1Я скачивал турбо срр тридцати летней давности. Ище в версии единица, древнее что-то. Было просто это интересно.
Но главное неудобство - там все вручную. Это даже не эдэе. Это прям визуальный компилятор. Самобытно, но как пытаться газель заменить гужевой повозкой
ovn83
29.12.2023 09:38На западе вычислительная техника распространилась раньше и у программистов популярен был Паскаль, с заточкой на dos и Винду с Делфи, а ранее, более простой и массовый Бэйсик. В России массово вычислительная техника стала приходить в нулевые с освоением Си и ++
Willy64
29.12.2023 09:38Всё же на 10 лет раньше. Это бытовой техникой компьютер стал в нулевые, а рабочим инструментом значительно раньше. Поэтому и пользовались рабочими компьютерами для подготовки текстов, печати и игр (как без них). Сети в 90-х в массе были только локальные, так что и сетевые побоища до интернета были в-основном на рабочих машинах.
unclegluk
29.12.2023 09:38Первый IDE после языков-игрушек Фокала, Бейсика и Лого был TurboC. Эх, сейчас бы ту самую IDE, но у меня уже давно Мак, сейчас на М1. Вряд-ли что выйдет.
Didimus
29.12.2023 09:38А нынче приходится под маком крудошлепать, так ни одного нормального инструмента для правки текста не нашёл. Нотпад++ нету, подсветки синтаксиса json-схем в родные редакторы не завезли
olimp_i_um
29.12.2023 09:38+1Это я такой старый? В университете учился программировать на turbo pascal а потом уже в Delphi.
strvv
29.12.2023 09:38нет, у некоторых университетов на территории бывшего СССР до сих пор остались готовые программные комплекты dosbox+turbopascal+... в учебных программах.
недавно у супруги нашёл cd c сборником всевозможных турбопаскалей, наиболее интересных библиотек, датированный 2001 годом. а прочитать негде...
rombell
29.12.2023 09:38В школе учился программировать на Fortran на перфокартах. Правда, в год поступления в универ ЕС-ки списали, так что продолжил на СМ-2 и М-220.
ipswitch
29.12.2023 09:38Апчхи! DEBUG.COM под DOS имел встренный ассемблер!
При усердии можно было наассемблировать себе исполняемый файл прямо из него)
ntu12170
29.12.2023 09:38демонстрировал начало интегрированного опыта
Ох, не понимаю я такой русский язык...
А статья любопытная, спасибо!
Roffild
29.12.2023 09:38MC для мелких правок сойдет.
Но почему игнорят связку: SCP или SFTP для доступа к файлу + нормальный редактор (VisualCode и т.д.) на своем компе ???
orahorn
29.12.2023 09:38+1Удивительно, что автор умолчал про всё ещё развивающийся редактор для программистов jed и библиотеку TUI slang, которую и файловый менеджер Midnight Commander использует. Также мы не услышали про TUI из командной строки - утилиту whiptail и библиотеку newt. Ну и классическая и массовая в мире UNIX библиотека curses вообще никак не прозвучала. Жаль, что получилось вроде много красивого текста и статья, но суть , живая суть TUI упущена.
kraken2018
29.12.2023 09:38Эх, сколько в студенчестве интерфейсов было написано на TurboVision... Тестирования, расчетные программы, чьи-то кандидатские, системы анализа данных. TP/BP+TurboVision=офигенно просто, быстро и, по тем красиво. И все-таки насколько простой и прозрачный был ObjectPascal. Прям удовольствие было на нем писать. И компиляция моментальная (в отличии от TC/BC), и код качественный.
А первые какие-то версии TP я использовать начал как бы не 88-89 годах, после Искровского бейсика было прям супер
Pardych
29.12.2023 09:38Дык а чего концептуально нового вы ждете от текстового редактора с большим количеством свистоперделок? С течением времени их все больше, они все тяжелее и интегрируют в себя все больше разного барахла. Если писать на c++, то наверное прям всю пользу какой-нить тяжелой idea и не увидишь, даже если это поставляется под названием clion. Слышал много всякого про то что с джава/котлин инструментарием в ней же это несравнимо. Но под jvm или kmp c градлом как бы лучше ничего и нет.
Все дело ж еще может быть именно в том что c++ такой. К примеру недавно пришлось на нем написать немного, писался кусок в vscode из-за того что идея у меня community и я не мог все делать в одной среде и таки это действительно не слишком прям сильно отличающийся от старого опыт писания с чистого листа. С рефакторингом, думаю, он бы был уже значительно лучше. И вряд ли что-то кардинально сдвинется хоть когда-то. Но я бы проснулся в холодном поту если бы мне пришлось пользоваться чем-то типа старых терминальных редакторов на моих jvm-проектах нынешнего масштаба (то есть по дефолту я такое только в страшном сне себе могу представить).
А так да, спасибо, поностальгировал на синие экранчики. Писали в институте и игры и вирусы на турбопаскале и сложные, неполигональные рендер-движки на турбо цпп.
denizkino_mesto
29.12.2023 09:38+2Мне нравился VC - Volkov Commander, Delphi 7 расширенное издание, Win2k - Windows2000
SwetlanaF
29.12.2023 09:38Борландовский Turbo Prolog 2.0 очень хорош для обучения прологу. Вижуал версии позаимствовали его синтаксис. И олдскульно, и прикольно - мышки нет.
FrankMorozoff
29.12.2023 09:38В конце 80ых и начале 90ых мы работали в основном на компиляторах Borland. Очень жаль, что эта прекрасная фирма была раздавлена Microsoft-ом. Наше небольшое подразделение работало на Турбоассемблер-е в основном с применением MultiEditредактора. Точнее: набор текста программ в редакторе с компиляцией через внутренние настройки (прописывали в редакторе вызов компилятора Борланд). И абсолютно никакой редактор не мог сравниться с упомянутым. В те времена.
daggert
29.12.2023 09:38+1Эта фирма была раздавлена жадностью. Когда были времена борланда делфи 7 и с++ - надо было выпускать бесплатные версии для энтузиастов, тем самым подсаживать программистов на себя. Но они пропустили момент.
qw1
29.12.2023 09:38+1Закончилась эпоха проприетарных компиляторов.
Программисты выбирают open-source языки, даже Microsoft сдалась и открыла c#Можно было бы открыть компилятор Delphi/BCPP, и повоевать на поле коммерческих IDE. Но бесплатные IDE откусили себе существенный кусок рынка. Возможно, проект уровня Delphi перестал окупаться.
daggert
29.12.2023 09:38Нет разницы опенсурс или закрытые исходники. Давая удобную бесплатную IDE тогда, и с такой огромной базой пользователей - можно было оставаться на плаву.
OlegZH
29.12.2023 09:38Когда Delphi только появилось, то если верить Орлику (был такой автор книг по Delphi), то в Delphi реализована возможность разработки собственных редакторов полей и собственных мастеров. То есть — имелась возможность наращивать среду собственными силами. Что-нибудь их этого где-нибудь пригодилось? И как с этим вопросом обстоит дело в современных средах разработки?
daggert
29.12.2023 09:38Интересный вопрос кстати. Я видел нафаршированную BCB в которую свои компоненты написали и юзали. Но это было однажды.
qw1
29.12.2023 09:38-1имелась возможность наращивать среду собственными силами. Что-нибудь их этого где-нибудь пригодилось? И как с этим вопросом обстоит дело в современных средах разработки?
Для Microsoft Visual Studio есть адд-он JetBrain ReSharper. Он полностью перелопачивает редактор, добавляет свою раскраску ошибок и навигацию по коду, переопределяет все хоткеи, добавляет кучу инструментов по рефакторингу, и даже заменяет build-движок, чтобы rebuild перестраивал только реально изменившиеся проекты. Причём окно билд-прогресса довольно интересно выглядит.
Для C# это довольно привычная функциональность. А для C++ я нигде подобного не видел.
Пишешьstd::cout <<
и тут всплывает подсказка "Не поключен iostream" Можно игнорировать и писать дальше, или жмёшь хоткей и в начале файла появляется соответствующий include, и ты пишешь дальше, не отвлекаясь.
mayorovp
29.12.2023 09:38Не поверю что никому эта возможность так и не пригодилась.
А в современных средах разработки с этим всё тоже нормально, в конце концов Visual Studio перебежчики из Delphi делали.
Кстати, лично мне больше нравится другая возможность - таблица полей объекта, она же PropertyGrid, сама является совершенно обычным контролом и её можно бросить на форму. Это очень пригождается когда надо по-быстрому сделать редактор конфигурации.
qw1
29.12.2023 09:38Да вроде ни у кого не получилось.
Watcom C++ закрылся. IBM свернул свою C++ IDE Visual Age.
Microsoft мог себе позволить делать Visual Studio в убыток, зарабатывая в целом на платформе.daggert
29.12.2023 09:38Майки прежде всего дали ВС 2005 бесплатно. Это хоть и стало работать в убыток, но позволило понизить порог входа - я например так и влетел в эти дела второй раз (первый был с пиратским борландом).
qw1
29.12.2023 09:38О том я и говорю. Для Microsoft направление компиляторов не приносило главного дохода, и они могли раздавать бесплатно. А Borland бы на что жил?
daggert
29.12.2023 09:38Это вопрос курицы и яйца. На момент перелома у борланда была база пользователей, в т.ч. в энтерпрайзе. Им надо было расширять сферу влияния беря под крыло тех кто и так пользовался их средой, но ломанной, для всяких школоподелок. Они это осознали только в 15м году чтоли, создав комьюнити версию. Сделав это пару лет ранее - продержались-бы, имхо.
ksokol
29.12.2023 09:38Интересно, а кто-нибудь еще начинал не с классических ЯП, а с dBase II/III? :)
kisskin
29.12.2023 09:38Почему же были? Вот, до сих пор использую:
С многопоточностью у нее, правда, плохо - она есть, но выигрыша при активном использовании динамической памяти у меня практически нет, но какая там многопточность была в 1999 году - с тех пор несколько технологических скачков произошло.
А в остальном со всем справляется, и с БД и с интернетом.
Breathe_the_pressure
Трубо Паскакаль ещё был :)
Zara6502
И про это в статье написано под общим заголовком "Серия Borland Turbo"
Chamie
Так он же трубо!
petropavel
Break/watch ещё был хороший пункт. При выборе, выскакивала форма с вопросом "Какие часы вы хотите сломать?" и предлагались варианты на выбор
aik
Это то, которое предлагало "компильнёмся"?
Kotofay
И Turbo Basic тоже был!
boojum
При нажатии "Edit" начинал шуршать диском и писал что-то типа "Ваши файлы уже редактируются, нет повода для беспокойства.."
olekl
О да! "Ваши файлы редактируются, нет причин для беспокойства" емнип :)
vasyaber
смешно, помню: break/watch - какие часы ломаем....