Я учился программировать в конце 1980-х — начале 1990-х годов. Тогда я не совсем понимал, что я делаю и почему инструменты, которые я использовал, были впечатляющими, учитывая ограничения имеющегося у нас железа. С годами я приобрел больше знаний, и теперь мне очень интересно взять в руки DOSBox, чтобы заново испытать те программы и сравнить их с нынешним положением дел.

image

В этот раз я хочу рассмотреть текстовые IDE, которые были у нас в ту эпоху, пока Windows не поглотила индустрию ПК. Я хочу сделать это потому, что тем IDE можно было позавидовать, даже по сравнению с нынешними. Создается впечатление, что мы пережили темную эпоху, когда большинство этих функций было утрачено на долгие годы, а появились они вновь только сейчас.

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

Первые редакторы и текстовые пользовательские интерфейсы


В 1990-х годах почти каждая программа под DOS имела полноэкранный текстовый пользовательский интерфейс (TUI) с текстовыми окнами, тенями, цветами и поддержкой мыши. Вот лишь один пример:

image
Редактор MS-DOS (он же EDIT.COM) с одним из окон настроек. Обратите внимание на строку меню, диалог со списком селекторов и кнопок, а также строку состояния, документирующую навигационные ярлыки.

Каждая программа была своим собственным островом, потому что ее интерфейс был уникален. Однако все они были похожи внешне — 80x25 символов не оставляли места для разнообразия — и по принципу работы, так что различия не мешали удобству использования и узнаваемости. Как только вы узнали, что клавиша Alt открывает меню, а Tab перемещает по полям ввода и кнопкам, вы могли с легкостью ориентироваться практически в любой программе.

Но давайте поговорим о редакторах. Начиная с версии 5 (1981) MS-DOS поставлялась с текстовым редактором TUI, который показан выше. Этот редактор «работал», но он был очень неудобен для программирования: вам нужно было выйти из редактора, чтобы скомпилировать и запустить код, а когда вы снова запускали редактор, вам нужно было вернуться к тому месту, где вы были раньше.

«В моем доме» мы использовали нечто под названием SideKick Plus (1984), который на самом деле не был редактором кода: это была скорее система управления персональной информацией (PIM) со встроенным блокнотом. Но самое интересное в нем было то, что это была Terminate and Stay Resident (TSR) программа, то есть она работала в фоновом режиме, и вы могли вызвать ее в любой момент, нажав Ctrl+Alt.

image
Главный экран 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 и были чрезвычайно мощными.

Вот, посмотрите, что у нас было. Подсветка синтаксиса:

image
Borland Turbo C++ с «Hello World» для демонстрации подсветки синтаксиса.

Интеграция с компилятором и диагностика:

image
Borland Turbo C++ после компиляции программы выдает предупреждение о том, что я не вернул значение из main().

Интегрированное управление проектом и системой сборки:

image
Управление проектами и многооконные возможности в Borland Turbo C++. На рисунке вы видите два исходных файла C++, один из которых зависит от другого, и окно проекта, в котором перечислены все файлы, которые необходимо скомпилировать.

Отладчик с точками останова, трассировкой стека и т.п:

image
Сеанс отладки с программой, содержащей несколько функций, точку останова и текущий стек вызовов.

И даже полное справочное руководство:

image
Интегрированная в 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-`, как сказано в инструкции, вы столкнетесь с действительно странным интерфейсом для навигации по меню — что заставляет задуматься, зачем они вообще потрудились потратить целую строку экранного пространства, чтобы показать строку меню, которая ничего не делает.

image
Свежая установка Emacs в консоли, со стандартным экраном приветствия в фоновом режиме и «меню», открывающимся после нажатия M-`.

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

Для сравнения, при написании этого поста я запустил Turbo C++ в DOSBox, смог создать проект «hello world» и сориентироваться в среде за считанные минуты — и все это без предварительных знаний (все, что я знал, к настоящему моменту уже забыто). Среда интуитивно понятна и, как IDE, интегрирована с ней.

Современные текстовые IDE


Как бы то ни было. Давайте забудем о прошлом и посмотрим на то, что мы имеем сегодня в области TUI. Я не хочу рассматривать графические интерфейсы, потому что… ну, Visual Basic был вершиной графического программирования, а у нас его больше нет — и это тоже тема для другой статьи (ладно, у вас есть Gambas… но кто о нем знает?).

Ближайшим более современным эквивалентом среды Borland Turbo C++ является RHIDE. Как вы можете видеть на рисунке ниже, среда выглядит невероятно похожей — и вас бы простили, если бы вы сказали, что это Turbo C++. К сожалению, она предназначена только для DOS и, похоже, уже практически заброшена, а ее последний релиз вышел 7 лет назад.

image
RHIDE IDE показывает ту же программу «hello world», что и раньше, без ошибок и предупреждений после компиляции.

Далее у нас есть Free Pascal. Это наиболее близкий к старому вариант, но с современной кодовой базой, работающий на Unix-системах и использующий терминалы любого размера.

image
IDE Free Pascal с тривиальной программой «hello world» и перекрывающимися окнами для встроенной таблицы ASCII и калькулятора.

И, наконец, QB64. Он очень похож на Microsoft QuickBasic, но… не дайте ему обмануть вас: хотя он и выглядит как TUI, на самом деле это GUI-приложение, которое имитирует TUI. Вы не можете запустить QB64 в терминале.

image
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. Вот, смотрите:

image
Редактор 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)


  1. Breathe_the_pressure
    29.12.2023 09:38
    +34

    Трубо Паскакаль ещё был :)


    1. Zara6502
      29.12.2023 09:38
      +15

      И про это в статье написано под общим заголовком "Серия Borland Turbo"


      1. Chamie
        29.12.2023 09:38
        +10

        Так он же трубо!


    1. petropavel
      29.12.2023 09:38
      +20

      Break/watch ещё был хороший пункт. При выборе, выскакивала форма с вопросом "Какие часы вы хотите сломать?" и предлагались варианты на выбор


    1. aik
      29.12.2023 09:38
      +2

      Это то, которое предлагало "компильнёмся"?


    1. Kotofay
      29.12.2023 09:38
      +7

      И Turbo Basic тоже был!


    1. boojum
      29.12.2023 09:38
      +2

      При нажатии "Edit" начинал шуршать диском и писал что-то типа "Ваши файлы уже редактируются, нет повода для беспокойства.."


    1. olekl
      29.12.2023 09:38

      О да! "Ваши файлы редактируются, нет причин для беспокойства" емнип :)


    1. vasyaber
      29.12.2023 09:38

      смешно, помню: break/watch - какие часы ломаем....


  1. Veliant
    29.12.2023 09:38

    Интересовался как-то темой консольных редакторов и находил довольно интересный FTE Editor, но уже давным давно заброшен.


    1. aik
      29.12.2023 09:38

      Да, в своё время он был единственным, кто через ssh поддерживал подсветку синтаксиса и имел привычные меню, а не :wq!

      Вроде только кодировки не поддерживал.

      Потом, правда, и в vim подсветку синтаксиса притащили, и в mc... Они более мэйнстримные, потому FTE тихо куда-то пропал.

      Хотя относительно недавно я его добывал для работы в DOS'е.


  1. Zara6502
    29.12.2023 09:38
    +29

    если линукс, то всегда ставлю mc

    если винда, то FAR

    когда пишу в VS, то одновременно запущено 3-4 FAR - манипуляции с файлами, просмотр логов, запуск релизной версии программы и т.п.

    в FAR сильно быстрее и комфортнее работать за ПК, если конечно работа не сводится к паре кликов.

    Проводник запускаю по Win+E регулярно, от каждой программы свои плюшки.


    1. nerudo
      29.12.2023 09:38
      +7

      Если линукс, то стараюсь не лениться и ставить far2l

      Жаль, что не far3l


      1. Zara6502
        29.12.2023 09:38

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


      1. unclegluk
        29.12.2023 09:38

        Это здорово, но вот Мак ругается: “far2l” can’t be opened because Apple cannot check it for malicious software.

        Upd. Первое открытие по R-click - Open. Потом все работает.


    1. edogs
      29.12.2023 09:38
      +1

      Тоже плотно сидим на FAR, в основном из-за олдскульного вида, хотя казалось бы тот же total commander по функциям одно и то же, но нет жеж, не заходит:)


      1. mihmig
        29.12.2023 09:38
        +8

        пфф, молодёжь...
        У меня Far в цветовой гамме DOsNavigator-а (того, в который тетрис был встроен)!


        1. edogs
          29.12.2023 09:38
          +28

          Если хотите кряхтеть про "молодежь", то никак не с доснавигатором это надо делать:)
          Дефолтная схема в FAR используется та же что в Norton Commander (который вот реально у всех стоял), который появился аж на 5 лет раньше ньюфажного ДосНавигатора и почти полностью повторяет еще более ранную цветовую схему XTree.


          1. Zara6502
            29.12.2023 09:38
            +3

            я раньше FAR всегда перенастраивал в цвета DN, не люблю я синее, ярко слишком, но когда пошли окна, то забросил почему-то.


            1. edogs
              29.12.2023 09:38
              +17

              когда пошли окна, то забросил почему-то.

              Постарели Повзрослели просто:) Мы тоже раньше после установки/переустановки какого-нибудь софта (ИДЕ, редактора и т.д.) или просто на новом месте настраивали интерфейс, хоткеи, цвета, автосейзы, историю, фильтры и т.д..
              Сейчас предпочитаем "прогнуться под изменчивый мир", настраивать что-то лениво (разве что по мелочи что-то что считаем совсем критичным), пользуемся как есть, даже если слегонца неудобно.


              1. BAXMAH
                29.12.2023 09:38

                Как вариант - экспорт-импорт настроек, у меня так Far постепенно сохранил черно-зеленую цветовую гамму от 1.70beta5 до актуального Far3. Одно НО - далеко не везде так получается, приходится уступать дефолтному интерфейсу.


          1. mltk
            29.12.2023 09:38
            +9

            Нортон стоял у всех, а профи стоял vc.com - Volcov Commander, который влезал полностью в ограничения .com файла в 65 килобайт.


            1. Didimus
              29.12.2023 09:38

              К сожалению, не запускается сейчас.


              1. buratino
                29.12.2023 09:38

                вы просто не умеете его готовить...Виртуал бокс с полуосью с досом....впрочем под полуосью был FC. Впрочем, почему был? Вполне есть, так же как и под Win32/Win64 а также линукс


            1. edogs
              29.12.2023 09:38

              Volkov появился почти на 10 лет позже нортона и почти на 5 лет позже дос-навигатора. Его конечно использовали, но размер 64кб в момент его появления уже значения не имел, а функций в нем было меньше чем в нортоне и DN.


              1. 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 или для запуска какой то программы в пользовательском меню, типа какойто бухгалтерии.


                1. 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 все поголовно сносили винду и ставили юникс, сносили фотошоп и ставили гимп и т.д.. Да, на местах было, но отнюдь не массово мягко говоря и уж тем более о захвате мира речь не идет.


                  1. Chamie
                    29.12.2023 09:38

                    Окей, перепроверили по википедии, NC вышел в 86, VC вышел в 92. 6 лет разницы, не 10, это так принципиально?

                    А функционал вы именно этих первых версий сравниваете?


                  1. 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.

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

                    Если вы не видите суслика, это не означает что его вообще нет. :)))


                    1. 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. Насчет сусликов не знаем.


              1. geher
                29.12.2023 09:38
                +2

                Его конечно использовали, но размер 64кб в момент его появления уже значения не имел

                Имел, и очень большое. При запуске "тяжелых" приложений командира нортона и доснавигатора (со вторым было в этом плане немного проще, но все же) приходилось перед этим самым запуском частенько завершать, в то время как командир волков оставлял другому приложению очень много памяти, освобождая даже часть из своих < 64к.


            1. saboteur_kiev
              29.12.2023 09:38
              +1

              Нортон стоял у всех, а профи стоял vc.com

              Между выходом NC и VC прошло несколько лет.


              1. deathbel
                29.12.2023 09:38
                +1

                VC использовался в дискетах востановления, куда затягивать нортон даже максимально обрезаный было пределом кощунства, у NC была фишка com и lpt link (у первых тоталов тогда еще виндовс командеров тоже было) могло помочь поставить систему на ноут или пк если у тебя сдохли или нет дискет, чтобы перетащить дистриб.


        1. Zara6502
          29.12.2023 09:38
          +1

          я DN пользовался плотно, а про то что в нём есть тетрис узнал году в 2012 из какой-то статьи XD


          1. Rayven2024
            29.12.2023 09:38
            +4

            значит вы никогда его не пробовали нормально настроить....

            тетрис там вызывался командой из меню - пропустить её при настройке - это надо уметь... (скучаю по DN Necromancer - один из последних более-менее нормальных версий, жаль что он обрезал слишком длинные имена файлов.... а вот его фич не хватает - сходу в FAR'е нет возможности сделать сравнение файлов не только по имени-дате-времени, но и по содержимому, да и сочетания кнопок на сравнение панелей там нет....)


            1. Andrusha
              29.12.2023 09:38

              скучаю по DN Necromancer - один из последних более-менее нормальных версий

              А зачем по нему скучать? Последний билд буквально вчера вышел, а релиз - месяц назад.


            1. geher
              29.12.2023 09:38
              +7

              сходу в FAR'е нет возможности сделать сравнение файлов не только по имени-дате-времени, но и по содержимому

              Как нет? Штатно в поставке плагин Advanced compare. Можно добавить другие плагины, с еще более расширенным функционалом.

              да и сочетания кнопок на сравнение панелей там нет....)

              Решается макросом.


              1. veg2022
                29.12.2023 09:38

                Мне крайне не хватает возможности сортировки папок по количеству файлов в них. Можете дать совет?


                1. 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. Зачем они нужны сейчас лично мне вообще непонятно.


                  1. mayorovp
                    29.12.2023 09:38
                    +3

                    И вот это всё предлагается набирать каждый раз?


                    1. nronnie
                      29.12.2023 09:38

                      Функцию в профиль, или скрипт в *.ps1 файл. У меня всевозможных собственных функций/скриптов накоплено уже около полутора тысяч строк, организовано все через модули с lazy loading, чтобы все подряд не загружать при каждом запуске.


                  1. Merrynose
                    29.12.2023 09:38
                    +3

                    Двухпанельные ФМ нужны по той причине, что жизнь -- штука богатая и может подкинуть целый ряд кейсов, в которых использование FAR и тп будет быстрее и удобнее, чем использовать shell.


                  1. veg2022
                    29.12.2023 09:38
                    +1

                    Спасибо, конечно. Но скрипты не в тему, нечто такое и я делаю, выкручиваясь. Но это неудобно. Работать нужно именно с панелью, например удалить уже "опустошенные" папки, выделить самые полные... Обработать файлы в очередной раз, снова проанализировать результаты... Нужного плагина пока не нашел, и есть ли такой?


                    1. qw1
                      29.12.2023 09:38

                      Чтобы такое сделать, надо вносить изменения в ядро, чтобы у каждой папки был не только атрибут "суммарный размер вложенных файлов", но и атрибут "суммарное количество файлов". Слишком редкая задача, поэтому не сделано (я, например, с такой проблемой никогда не сталкивался).

                      Чисто теоретически, можно закостылить кастомной файловой системой, где каждый файл бы весил 1 байт, и тогда суммарный размер директории был бы равен количеству файлов.

                      Есть такой плагин ls-lR, который парсит вывод команд ls и dir

                      dir /a /s C:\my_directory > directory_snapshot.dir
                      

                      плагин заходит в dir-файл, как в архив (очень удобно "снепшотить" свои диски с архивами, прежде чем отключить и положить на полочку).

                      Так вот, можно "заснепшлотить" директорию, запустить простой скриптик, который бы regexp-ом поставил бы всем файлам размер 1 байт, и на правой панели зайти в такой "архив", отсортировать по числу файлов, а на левой панели зайти в реальный каталог и делать там свои дела. Обновление, конечно, не реал-тайм, но если подготовить скрипты, можно обновлять снепшот за пару секунд.


                    1. nronnie
                      29.12.2023 09:38

                      например удалить уже "опустошенные" папки

                      ls -Directory | ?{ -not (ls $_ -r -File) } | %{ rm $_ -r -fo }
                      

                      ну а вы ждите пока вам кто-нибудь нужный плагин к Far не напишет - больше, увы, ничего посоветовать не могу :)


                  1. geher
                    29.12.2023 09:38
                    +2

                    Все эти "двухпанельные" FM в Win были актуальны пока не было нормального shell. Зачем они нужны сейчас лично мне вообще непонятно.

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

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


                1. geher
                  29.12.2023 09:38

                  Если все файлы одного размера, то можно использовать сортировку по размеру и нажать F3.

                  Если же размеры файлов разные, то похоже, что только свой плагин писать, или искать готовый (но я такой не видел).


            1. vkni
              29.12.2023 09:38
              +2

              Увы, в оригинальном DN цветовая схема обладала каким-то магически-приятным серым, который в NDN превращается в какое-то убожество.


              1. qw1
                29.12.2023 09:38

                DN перепрограммировал палитру текстового режима прямым доступом к видеокарте. Палитру консоли Windows можно поменять в свойствах консольного окна (правая кнопка мыши на заголовке). Где в интернете я видел готовые reg-файлы с гаммой "под DN".


            1. Zara6502
              29.12.2023 09:38

              Ну понятие нормальности слишком субъективное, я им просто пользовался таким какой он есть, от него мне нужно было копирование, навигация и редактор, за 25 лет мои потребности не изменились, в FAR я точно так же копирую, бегаю по папкам и работаю с текстом. Поэтому какие-то дополнительные настройки умещаются в меню по F2, где тетриса нет.


            1. Mingun
              29.12.2023 09:38
              +1

              сходу в FAR'е нет возможности сделать сравнение файлов не только по имени-дате-времени, но и по содержимому

              В штатной поставке уже бог знает сколько времени идёт плагин Расширенное сравнение (F11 -> Расширенное сравнение), позволяющий сравнивать файлы на панелях по времени, размеру и содержимому (в том числе заходить во вложенные папки). В результате на каждой панели выделяются отличающиеся файлы/папки.

              Второй плагин (уже не из штатной поставки) — Визуальное сравнение (VisualCompare) (F11 -> Визуальное сравнение). Позволяет сравнивать два каталога, в том числе рекурсивно, поддерживает сравнение по содержимому файлов. Результаты сравнения выводятся в отдельном двухколоночном окне с результатами.


              1. geher
                29.12.2023 09:38

                Еще есть AdvCmpEx и Deep Compare, которые основаны на штатном Advanced compare, но немного расширяют его функциональность.


          1. nitro80
            29.12.2023 09:38
            +1

            Так он же там прям в меню встроен


            1. Zara6502
              29.12.2023 09:38
              -2

              ну видимо мне нечего было в этом меню делать.

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


        1. KyHTEP
          29.12.2023 09:38

          Как-то так? )



      1. ftc
        29.12.2023 09:38
        +11

        Киллер-фича FAR-а - интеграция с консолью (можно "не отходя от кассы" наколотить консольную команду, перенаправить её в файл, файл поглазеть штатным редактором, скопировать-поправить итп).
        И всё в пределах одного окна, без переключений.


        1. Zara6502
          29.12.2023 09:38
          +2

          там в принципе работа с файлами есть как таковая, а в проводнике она для домохозяек


          1. mayorovp
            29.12.2023 09:38
            +1

            Только вот комментарий выше сравнивал FAR не с проводником, а с Total Commander.


            1. Zara6502
              29.12.2023 09:38

              а для этого есть цитирование


        1. nronnie
          29.12.2023 09:38
          +1

          наколотить консольную команду, перенаправить её в файл, файл поглазеть штатным редактором, скопировать-поправить

          Только вот зачем для этого Far вообще непонятно - всё это запросто делается прямо в PowerShell:

          New-TemporaryFile | %{ Invoke-MyConsoleCommand | Out-File $_; & $env:EDITOR $_; rm $_ }
          


          1. ftc
            29.12.2023 09:38
            +4

            Делается, но при этом нет фичей "посмотреть глазками, какой файл тебе нужно в эту команду подставить, одним хоткеем добавить в команду его имя, скопировать что-то куда-то".
            Короче, для меня в FAR самое удобное - именно синергия возможности использовать консоль с визуальным способом работы с файлами.


            1. nronnie
              29.12.2023 09:38

              Это да, но в PowerShell действительно очень классный autocomplete (а с 7.какой-то версии еще и с поддержкой autocomplete-а всей команды целиком из history) - если, например, я в папке с проектом, то зачем мне его вообще "искать глазами", если я могу, например, просто набрать blablabla *csproj<tab>, а то и меньше.


          1. mayorovp
            29.12.2023 09:38
            +1

            А откуда у вас на винде переменная окружения EDITOR?


            1. nronnie
              29.12.2023 09:38

              Из HKCU:\Environment

              На самом деле она полезна - в частности её понимает, например, PSReadLine (кстати, $env:PAGER у меня тоже есть - нужен, например, для PowerShell-ного Get-Help). Git как бы тоже должен их понимать, но у него какие то проблемы с обратной косой чертой - я так ничего лучше и не нашел кроме как прописать все это в ~\.gitconfig


        1. DarkTiger
          29.12.2023 09:38
          +2

          Вот только из командной строки Far что-то скопировать, путь, например, хм, не очень удобно. Понятно, перенаправление наше все, но в mc проблем с этим нет от слова совсем - ctrl-o, выделил путь мышой, скопировал.
          В mc, правда, другая радость - если его в сессии ssh запустить, он делает странные вещи с сессией, непонятно, то ли ты на удаленной машине, то ли на своей, чего нет в Far. Понятно, что какой-то хоткей пакостит, но пока его не вычислил.
          Нет в мире идеала, короче говоря.


          1. PuerteMuerte
            29.12.2023 09:38
            +2

            Вот только из командной строки Far что-то скопировать, путь, например, хм, не очень удобно

            Почему? Там тоже работает выделение мышкой и копирование. А если ctrl+o нажать, то и выделение клавиатурой.


            1. qw1
              29.12.2023 09:38

              если ctrl+o нажать, то и выделение клавиатурой.

              Alt+Insert работает в любом режиме, потом выделяй хоть мышкой, хоть кнопками.


          1. edogs
            29.12.2023 09:38
            +3

            Вот только из командной строки Far что-то скопировать, путь, например, хм, не очень удобно.

            Ctrl+O выключает панели.
            При выключенных панелях Ctrl+C дает копировать то что в командной строке прямо сейчас.
            Ctrl+{ или } - вставляет в командную строку путь из левой/правой панели, после чего можно вырубить панели и Ctrl+C.
            Может быть можно удобнее, но нам хватает.


            1. chnav
              29.12.2023 09:38
              +2

              >> Ctrl+{ или } - вставляет в командную строку путь из левой/правой панели,

              Вот же ж... А я всегда переходил в начало директории (на две точки) и нажимал Ctrl-Enter, т.е. копировал то что под курсором. Оказывается всё гораздо проще :рукалицо:


              1. Mingun
                29.12.2023 09:38
                +1

                Ещё комбинации:

                • Ctrl+F вставляет путь (заключённый в кавычки, если в нём есть пробелы) к файлу под курсором на активной панели (работает даже при скрытых по Ctrl+O панелях);

                • Ctrl+Insert копирует имя файла под курсором на активной панели в буфер обмена;

                • Ctrl+Alt+Insert — копирует полный путь к файлу под курсором на активной панели в буфер обмена.


          1. saboteur_kiev
            29.12.2023 09:38
            +2

            far+conemu или другой альтернативный терминал, и отлично выделяется мышой и копируется.
            Плюс не совсем понятно зачем мыша, если есть Ctrl+[, Ctrl+]


          1. ftc
            29.12.2023 09:38
            +1

            У mc своих "приколов" хватает. Меня например больше всего бесит неудобный плагин для SSH/SFTP сессий. В FAR-e в NetBox все частоиспользуемые сессии сохранены и открываются буквально несколькими нажатиями клавиш. А в mc приходится каждый раз вспоминать "а как там точно этот сервер называется и какой туда логин".

            Ну и не хватает кучи хоткеев для подстановки чего-либо в командную строку (Ctrl+Space, Ctrl+Enter итп).


        1. sherbinko
          29.12.2023 09:38
          +5

          можно сразу в edit: перенаправить
          edit:< echo blabla


          1. rombell
            29.12.2023 09:38
            +2

            ну вот. Не прошло и 30 лет использования FAR, как я узнал эту хитрость!

            Спасибо, добрый человек


        1. NetBUG
          29.12.2023 09:38

          Собственно, ради чего я продолжаю пользоваться midnight commander)


        1. GRADUSnick
          29.12.2023 09:38

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

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

          Короче, захотелось эту игру пройти сначала.


          1. mayorovp
            29.12.2023 09:38
            +1

            Уточнение: Far лицензию за знание русского языка давала. Сейчас там для всех BSD лицензия.


            1. qw1
              29.12.2023 09:38

              Это если обновиться на FAR2 или FAR3. А если сидеть на версии 1.75, то бесплатно только со знанием русского )))


      1. Zara6502
        29.12.2023 09:38

        я долго пользовался ТС и FAR вместе, но по факту ТС совсем другая программа, поэтому ТС перестал использовать, да и жмякать на кнопку при запуске триального периода надоедает, я софт не ломаю.


      1. Laryx
        29.12.2023 09:38
        +2

        Только Тотал Коммандер (хотя, вобще говоря, Виндовс Коммандер). Фар - не выдержал испытания драг-н-дропом, и был благополучно давно забыт.


    1. ioncorpse
      29.12.2023 09:38

      Вот! А на работе так никто и не проникся, что VS с парой Far очень упрощает ряд задач.


      1. Zara6502
        29.12.2023 09:38
        +1

        хотя бы тем же меню по F2, у меня там конвертация картинок в JPEG например, пережатие видео и т.д. В один клик обычными ffmpeg и convert, а еще из PDF в JPG


    1. SergioT4
      29.12.2023 09:38
      +3

      Под винду ещё надо хотя бы cygwin ставить - иногда сильно помогает.

      Для FAR очень часто помогает "folder shortcuts" - настроил десять шорткатов, быстро туда-сюда летает, ещё его NetBox полезен - всякие (S)FTP и т.п. визуализировать.

      В редакторе FAR-а regexp часто использую. Интересно langserver кто-то уже подцепил к нему.

      Жалко что из коробки нету поддержки regexp для поиска файлов, плагины тащить приходится.


      1. Andy_U
        29.12.2023 09:38

        NetBox полезен

        Эх, вот бы он еще "понимал" SSH ключи в формате open-ssh, а не putty.


        1. saboteur_kiev
          29.12.2023 09:38

          у него же встроенный конвертер


          1. 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)?


            1. saboteur_kiev
              29.12.2023 09:38
              +1

              При подключении к удаленному серверу, указываю путь к обычному rsa ключу, он предлагает его конвертнуть, конвертит, после чего указываешь путь к сгенеренному ppk


              1. Andy_U
                29.12.2023 09:38

                A, вот зачем там в настройках путь к puttygen. Ну и не осталось у меня ни одного rsa ключа. Все на ed25519.


                1. mayorovp
                  29.12.2023 09:38

                  А в чём проблема с ключами ed25519?


                  1. Andy_U
                    29.12.2023 09:38

                    Его netbox конвертировать не предложил.


      1. qw1
        29.12.2023 09:38

        "folder shortcuts" - настроил десять шорткатов, быстро туда-сюда летает

        Можно больше. Если на одном шорткате несколько папок, всплывает менюшка.


    1. EvilShadow
      29.12.2023 09:38
      +1

      если линукс, то всегда ставлю mc

      vifm лучше. Но только в связке с vim, конечно. Если в mc активно используется mcedit, то vifm не имеет смысл.


  1. NeoCode
    29.12.2023 09:38
    +3

    Да, TUI очарователен в своей олдскульности) И хорошо что у него осталась небольшая ниша в виде софта для ssh/терминалов. А фактически, из современных TUI IDE с классическим (не vim/emacs) интерфейсом - только FreePascal? Ничего универсального нет?


    1. strvv
      29.12.2023 09:38
      +1

      я на ваксах (VaxVMS 4.5) писал в середине 90х свой менеджер для программирования, сходу как-то под 60 кб кода накропал, не отрываясь, еще без комментариев, только вечерний дома набросок в тетради, друзья называли приложение turbozelya, тогда еще tmux и screen не знал, а программировать и отлаживать не выходя в dcl было проще.

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

      сейчас проще с всевозможными *curses и прочими библиотеками, а тогда это чистый хардкор...


  1. fndrey357
    29.12.2023 09:38
    +7

    ChiWriter был такой веселый штук.

    Это было под DOS до офиса...

    В те времена он конкурировал с Лексиконом, между прочим Советским...


    1. Javian
      29.12.2023 09:38
      +3

      Самое самое ...что я видел это Фотон


      1. Gummilion
        29.12.2023 09:38
        +10

        Фотон - это же вроде просто русифицированный Multi-Edit?


        1. maximw
          29.12.2023 09:38
          +10

          Да. Вообще, не упомянуть Multi-Edit в статье про текстовые IDE это какое-то лютейшее упущение. По-мне, он должен был бы быть на первом месте.


          1. rombell
            29.12.2023 09:38

            я тоже удивился. Пользовался ME и MEW до конца 0х, потом всё-таки пришлось пересесть на гуёвую IDE. Но обе до сих пор стоят, куча макросов нарулена, жалко бросить.


        1. Javian
          29.12.2023 09:38
          +3

          Это импортозамещение :)
          Это импортозамещение :)

          "До того, как это стало мейнстримом"


          1. strvv
            29.12.2023 09:38
            +1

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

            та же мсвс 3.0 это красношапка 7.2..7.3 с поддержкой дальше, т.к. редхат позже повел две ветки - fedora и rhel (энтерпрайз, не хухры-мухры)...


      1. DenSyo
        29.12.2023 09:38
        +6

        Foton был "форком" Multi-Edit - обе версии были самыми распространёнными редакторами из-за малого размера и шустрого интерфейса.


        1. a_nick
          29.12.2023 09:38
          +10

          Muti-Edit, на мой взгляд, вообще был шедевром. Всегда предпочитал его, даже несмотря на наличие вышедших уже Turbo- Borland- Quick- и прочих IDE'шек.

          Подсветка синтаксиса для любых языков, а писать тогда приходилось на всем - и Pascal и C/C++ и QBasic и Assembler.

          Плюс возможность компиляции/сборки не выходя из среды + подключение внешних отладчиков. Шедевр, одним словом.


          1. DenSyo
            29.12.2023 09:38
            +1

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


          1. FlyingDutchman2
            29.12.2023 09:38
            +1

            Muti-Edit, на мой взгляд, вообще был шедевром. Всегда предпочитал его

            Я до сих пор им пользуюсь. Еще в 90-х годах я написал много макросов на его встроенном языке (несколько тысяч строк кода) и до сих пор их использую. Правда, последня версия Multi-Edit датируется 2008-м годом.


      1. Rayven2024
        29.12.2023 09:38
        +8

        Помню и Лексикон и Фотон. Но мне больше нравился "слово-дело" в зеленоватых тонах... там еще вроде бы настройки шрифтов и тп сохранялись в конце редактируемого файла.... а в Лексиконе в тех местах, где использовались....


        1. geher
          29.12.2023 09:38

          Зато в "Лексиконе" шрифт при печати точнее всего воспроизаодил шрифт печатной машинки.


          1. Chamie
            29.12.2023 09:38
            +6

            «Слово и Дело» умудрялся в текстовом режиме отображать полужирный, подчёркнутый и курсив. Лексикон так умел?


            1. MiyuHogosha
              29.12.2023 09:38

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


              1. Chamie
                29.12.2023 09:38

                Нет, изначально там было именно в текстовом режиме, через правку таблицы знакогенератора:

                Скриншот

                Это уже в совсем поздних версиях он перешёл на графику. Версии, кажется, с седьмой.


                1. MiyuHogosha
                  29.12.2023 09:38

                  Насколько я помню, менять таблицу на ходу так что это отражалось только на части символов в то время было возможно только в определенном режиме когда это была графика - после вывода тескта в видеопамяти хранится изображение. В текстовом режиме в видеопамяти хранился только текст и цвет символов, смена таблицы знакогенератора изменит весь экран. Формально это графика, можно было бы и рисовать, но редактор этого не делал. По этой причина на некоторых типах адаптеров это возможно было только в чб редиме - их видеопамяти не хватало на разрешение (80*ширина символа)x(25*высота символа) в цвете.


                  1. Chamie
                    29.12.2023 09:38

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


                1. axe_chita
                  29.12.2023 09:38
                  +1

                  Как минимум с шестой версии W&D уже умел работать с графикой и редактировать шрифты.

                  Про отсутствие поддержки графики могу сказать только то, что во второй версии W&D этого ещё не было.


                  1. Chamie
                    29.12.2023 09:38

                    А редактор шрифтов там и в той самой тексто-режимной версии был, я им ещё приловчился системные шрифты MS DOS и даже растровые шрифты Windows править.


              1. Kotofay
                29.12.2023 09:38
                -2

                Консольная графика в DOS? Это что за зверь такой?

                W&D именно что в текстовом режиме работал.

                А как просто там было таблицы рисовать -- закачаешься.


                1. PuerteMuerte
                  29.12.2023 09:38
                  +1

                  W&D именно что в текстовом режиме работал

                  Ага, в текстовом


                  1. Chamie
                    29.12.2023 09:38

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


                  1. Kotofay
                    29.12.2023 09:38

                    Вы не видите отличий в верхнем меню что ли?


        1. ipswitch
          29.12.2023 09:38
          +1

          "Слово и дело" передают плиииивет! Из-под Windows!

          http://winwd.narod.ru/wd.html

           Режим редактирования текста
          Режим редактирования текста
           Палитра редактора зависит только от Вашего вкуса!
          Палитра редактора зависит только от Вашего вкуса!


    1. deathbel
      29.12.2023 09:38

      Из текстовых редакторов самым топовым был "слово и дело" с резиновыми таблицами шрифтами, графическим режимом


  1. BenGunn
    29.12.2023 09:38
    +11

    Турбо Паскаль… как же ты был хорош! На винде в работе постоянно использую far из за возможности по F2 юзать пользовательское меню к которому понаписал скриптов. А на маке постоянно использую mc и nvim(не фанат, просто есть необходимость иметь в терминале функциональный редактор кода).


  1. Starl1ght
    29.12.2023 09:38
    +2

    Не совсем понимаю, зачем авторы этих чудо статей обращают внимание на занимаемое дисковое пространство, когда хороший ССД 7гб\с на чтение и запись стоит в районе 5 центов за гигабайт.


    1. ris58h
      29.12.2023 09:38
      +5

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


      1. MiyuHogosha
        29.12.2023 09:38
        +4

        А уж какие замечательные режимы фейла у Electron! Программа (проект наUnity) упала , сделав что-то нехорошее с GPU. Все на электроне, и Дискорд, и IDE упали и показывали черные окошки. Убивать приходилось долго и упорно, все подпроцессы стали "зомбями". При этом несохраненные измения и кое-что еще потерялось. При этом всему остальному ПО, даже браузерами хоть бы хны. Ловил много раз. Пару раз нечто подобное вызывал Chrome с WebGL.


  1. Anatol2007
    29.12.2023 09:38
    +2

    Ох, прям пробрало от ностальгии) Был у меня случай как то в 90х, Win95 потеряла какую то dll и отказывалась запускаться вместо со сжатым диском со всеми файлами, взять было неоткуда. В итоге на лето пришлось пересесть с C++ на тот самый Borland Pascal, а потом и вовсе на Asm (только вот не помню какой был IDE). в Pascal писал простенькую графическую оконную библиотечку с окнами и мышкой, в астме тоже самое, но побоялся лезть в графику, успел только в 80х25 сваять. Читаю статью и пускаю скупую мужскую слезу теперь, но кажется теперь у меня +1 хобби будет)


  1. zamsky
    29.12.2023 09:38
    +16

    Пфф... Smalltalk из 1980 года передает привет


  1. DenSyo
    29.12.2023 09:38
    +12

    Исходный код библиотеки Turbo Vision по рукам ходил в то время - образцом объектного программирования и создания интерфейсов пользователя был.


    1. Willy64
      29.12.2023 09:38
      +5

      Он же в комплекте с BP шёл. Очень удобно было вместо документации смотреть прямо в исходник.


      1. DenSyo
        29.12.2023 09:38

        Ну, не знаю как у Вас, у нас "комплекты" формировались тем, что на Фидо дали. Исходники IDE на Turbo Vision в комплекте всегда были, да, они же и в документации рассматривались, как пример использования библиотеки. А исходники самой Turbo Vision были допом.


      1. DenSyo
        29.12.2023 09:38

        Исходники библиотеки были далеко не у всех, по ним никогда не встречал документации, хотя книг по использованию Turbo Vision было множество. На сколько помню, скомпилировать то, что ходило по рукам было проблемой, я даже не пытался, я их просто читал. С тех пор люблю читать грамотно написанный код больше, чем документацию к нему. Когда они ко мне попали, уже хорошо освоил Turbo Vision в примерах использования, был понятен замысел, назначение всех свойств и методов - исходный код всего этого механизма дал очень много.


        1. zaiats_2k
          29.12.2023 09:38

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


      1. geher
        29.12.2023 09:38

        Насколько я помню, исходники Turbovision появились в комплекте впервые именно в полной поставке BP 7.0 (не путать с TP 7.0, который поставлялся как отдельно, так и как часть BP). Причем при установке, если не путаю, была возможность эти исходники не ставить. Кроме того, существовали урезанные поставки BP 7.0 (естественно, совершенно не официальные), из которых было выброшено все "лишнее", включая означенные исходники (да, сборки "от Васяна" практиковались уже тогда).


  1. 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


    1. RoboForm Автор
      29.12.2023 09:38

      Спасибо, поправил


  1. Cheater
    29.12.2023 09:38
    -5

    У него есть окна, но они не прорисованы. У него не было цветов (а теперь почти нет), потому что зачем? В нем не было поддержки мыши. У нее есть строка меню, но это просто прикол? Если вы нажмете M-`, как сказано в инструкции, вы столкнетесь с действительно странным интерфейсом для навигации по меню — что заставляет задуматься, зачем они вообще потрудились потратить целую строку экранного пространства, чтобы показать строку меню, которая ничего не делает.

    Что за феерический бред.

     

     

    У него есть окна, но они не прорисованы.

    Wat

     

     

    У него не было цветов (а теперь почти нет), потому что зачем?

    "Теперь цветов почти нет" на моей машине (и это только именованные цвета, а так про правильной настройке там 24 bit true color как и во всех уважающих себя современных консольных приложениях):

     

     

    В нем не было поддержки мыши.

    Полной интеграции с GPM в емаксе сто лет в обед, не понимаю о чём речь.

       

    У нее есть строка меню, но это просто прикол?

    Вызвал, вроде работает, в чём проблема? Хотя давно уже графическим меню не пользуюсь, оно не нужно когда есть хоткеи и M-x. Но автор, конечно, волен упражняться с фичами для новичков и критиковать редактор на их основе.


    1. Alexey2005
      29.12.2023 09:38
      +10

      Суть проблемы в том, что в какой-нибудь Turbo Pascal IDE всё нужное было сразу из коробки: оно было юзабельно прямо с дефолтными настройками. А в современных текстовых редакторах и тем более IDE вы вообще ничего не сможете сделать, не потратив предварительно несколько часов на настройку и решение проблем.

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


      1. mayorovp
        29.12.2023 09:38
        +3

        Ну почему же, та же Visual Studio тоже адекватно работает из коробки.

        Кстати, наиболее "весёлую" проблему с запуском я когда-то наблюдал во Free Pascal. Эта IDE настолько хорошо умела в кросс-компиляцию, что просто не имела опции компилировать под ту платформу, на которой была запущена она сама. То есть каждый раз запуская IDE нужно было залезать в меню и выбирать платформу. А учитывая, что сетевой диск был общий для рабочих станций под винду и под DOS...


      1. Starl1ght
        29.12.2023 09:38
        +2

        А в современных текстовых редакторах и тем более IDE вы вообще ничего не сможете сделать, не потратив предварительно несколько часов на настройку и решение проблем.

        У нас в проде 2 С++ проекта, которые запускаются несколько десятков миллионов раз в месяц. Оба компилируются нажатием кнопочки Build на свежей студии без какой либо конфигурации чего либо, разве что при установки студии, само собой, надо поддержку С++ не забыть.

        Аналогично было с IDEA когда я писал на джаве.


        1. edogs
          29.12.2023 09:38
          +1

          Писали/дописывали под андроид, утомились ставить (предварительно угадав) нужные пакеты, а потом их обновлять еще через раз при запуске.


      1. voldemar_d
        29.12.2023 09:38

        MS Visual Studio сразу собирает C++ без каких-либо донастроек.

        Только при установке надо выбрать всё правильно.


        1. strvv
          29.12.2023 09:38

          (корпоративная политика вкл) сейчас - нет, поставили недавно студию по моей просьбе, а поддержку с/с++ не включали - только с#... (корпоративная политика выкл)

          спасло только mingw64. поставленое просто распаковкой без прописывания путей.


          1. mayorovp
            29.12.2023 09:38

            Потому что Visual C# и Visual C++ - это немного разные продукты, пусть и ставятся они соседними галочками в одном установщике. Но если галочку не забыть поставить, то всё работает без проблем.

            А вот с mingw64 нынче одна только установка превращается в приключение...


          1. voldemar_d
            29.12.2023 09:38
            +1

            Ваша корпоративная политика постановила забивать гвозди шуруповёртом? ;)


  1. Vaitek
    29.12.2023 09:38

    Что у нас есть ещё текстовое для Python кроме vim и emacs ???? (ipython не предлагать)?


    1. Jury_78
      29.12.2023 09:38

      Spyder может....


    1. garwall
      29.12.2023 09:38

      kaa


    1. MountainGoat
      29.12.2023 09:38
      +1

      С ноги входит kakoune - вимоподобный редактор с поддержкой протокола LSP - можно иметь vim с IntelliSense и даже ИИ. Имеет скрепочку, и её даже можно дообучать!


  1. hooperer
    29.12.2023 09:38
    +4

    """...Начиная с версии 5 (1981) MS-DOS ..."""

    есть ощущение что имелся ввиду 1991 год, или версия пониже (1.1 к примеру)


    1. RoboForm Автор
      29.12.2023 09:38
      +1

      Да, вы правы, Editor поставлялся с MS-DOS 5.0, а она вышла в 1991. Наверное автор опечатался.


  1. 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) такой подход сохранился кстати.


    1. PuerteMuerte
      29.12.2023 09:38
      +1

      У редактора QBasic 4.5 была классная фича, которую я больше нигде не видел

      В Visual Studio это перешло, во все последующие версии. В BP7 это, пожалуй, не особо легко было реализовать, т.к. процедура/функция там не являлась всегда подпрограммой высшего уровня, как в Бейсике.


  1. Frevv
    29.12.2023 09:38
    +2

    Как хорошо, что в 2003 нас учили на нормальных IDE. Белый фон, цветной текст, интерфейс Windows


    1. Ioanna
      29.12.2023 09:38
      +3

      Нас в школе в 2001-2003 и в вузе на первых двух курсах (2003-2005) учили программировать именно на Turbo Pascal и Turbo С++.


  1. shornikov
    29.12.2023 09:38
    +1

    Меня настигли флешбэки. Спасибо!


  1. alecv
    29.12.2023 09:38
    +3

    Современные средства рефакторинга - очень мощная и полезная вещь. Как то раз пришлось переводить старинную С программу с кучей папок и файлов аж из K&R стиля в современный. Старые IDE такого не умели или умели не очень. Даже тогдашние GUI топы типа MS Visual C++/Borland C++. Первый нормальный был, наверное, Eclipse. А VSCode вообще отлично.


    1. mayorovp
      29.12.2023 09:38

      Если бы этот Eclipse ещё запускался не по часу, и умел отлаживать без плясок...


      1. alecv
        29.12.2023 09:38

        Вроде это был Kepler. Нормально запускался даже на тогдашнем Pentium IV. А компилятор/отладчик были gcc/gdb виндовые, не помню какие. Вроде MinGW старый, какая-то готовая сборка. Настоящий адок - это СLion. Можно кофе сходить попить, пока запускается.


  1. JordanCpp
    29.12.2023 09:38
    +1

    Ностальгия и олдскульность из статьи аж хлещет:)


  1. JordanCpp
    29.12.2023 09:38

    На мой взгляд более объективно было бы сравнивать современные IDE и период 20 лет назад. Что то с 1998-2000 ых.


    1. MiyuHogosha
      29.12.2023 09:38
      +3

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

      А все почему? Элитарность. Пользователи emacs гордятся тем, что умеют им пользоваться (из зала доносится фыркание пользователей vim).


      1. JordanCpp
        29.12.2023 09:38
        +1

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

        Просто подсветки уже не достаточно, хочется некие функции рефакторинга.


  1. Portnov
    29.12.2023 09:38
    -1

    Т.е. я так понял товарищ хочет IDE от FreePascal, но для других языков (я так понял C или пюсов). Действительно, несколько даже странно, что их нет, с учётом всего разнообразия софта, который есть :) Или может есть, но на первой странице гугла не всплывает.


  1. eugrus
    29.12.2023 09:38
    -1

    Консоль для пайпинга. GUI для интерактивных приложений. Интерактивные, а тем более полноэкранные интерактивные приложения для консоли – костыли, которые были нужны в силу отживших технических ограничений.

    Что касается современных технических ограничений, как упомянутая проблема VSCode с FreeBSD: даже для Windows есть отличный драйвер SSHFS, так что можно монтировать каталоги на уровне системы и редактировать файлы с FreeBSD-хоста произвольным текстовым редактором.


    1. sukhe
      29.12.2023 09:38
      +1

      Там проблема в том, что ремоут дебаггер на FreeBSD не работает. То есть, не отладишь запущенную удалённо программу.


  1. Mirn
    29.12.2023 09:38
    +5

    Я до сих пор пользуюсь связкой FAR manager + ConEmu

    помимо всех плюшек что выше в каментах перечислили (интеграция с консолью, и тд)
    для меня важны ещё и эти:

    1. Поддержка уникода как на ввод так и на отображение кандзи, китайских и тд

    2. Возможность перетаскивать в панель и из панели файлы например в проводник винды

    3. Порт под люниксом работает ТАК ЖЕ как и под виндой и даже отлично работает на одноплатниках типа малинки / оранджа

    4. Двух-панельность

    5. Поддержка символических хард и софт линков в винде (да да они есть и они похожи на люниксовые)

    6. Возможность просмотра корневой ФС винды а не дисков (и это тоже есть!), всех файлов - ивентов, мьютексов и тд

    7. Встроенный архиватор

    8. Подсветка синтаксиса в редакторе текста чего угодно: не только классических ЯП а и HDL типа верилога, скриптов разводки плат спектры и тд

    9. показ содержимого, например лог файла, реалтайм в режиме просмотра - если сторонняя программа в него пишет то он покажет обновления. Конечно же с поддержкой множества вкладок просмотра и редактирования.

    10. Поддержка не только разных кодировок но и разных форматов конца строк CR/LF LF CR и тд (почему то многие люникс программы и скрипты не умеют в СR/LF - что крайне удивительно для меня, тот же пайтон например) Ну и ещё он при редактировани очень аккуратно обрабатывает и кодировки и концы строк сохраняя исходное.


    1. chnav
      29.12.2023 09:38
      +1

      Я и половины не знаю из вышеперечисленного (( В частности про мьютексы в FAR, подсветку синтаксиса и др. Максимум использую встроенные плагины, идущие с фаром в комплекте. Ещё были бы интересны плагины для просмотра машинного кода по типу HIEW, чтобы для x86 и ARM.


    1. BareDreamer
      29.12.2023 09:38
      +1

      Поясните про пункт 6: просмотр корневой ФС. Это встроенная возможность или плагин?


      1. qw1
        29.12.2023 09:38

        Похоже на плагин, который показывает это дерево
        https://learn.microsoft.com/ru-ru/sysinternals/downloads/winobj
        Исходники WinObj есть, наверное кто-то переделал в плагин.


  1. mikegordan
    29.12.2023 09:38
    +7

    30 лет прошло, а люди всё сидят на своих Вимах, Емаксах и всё никак их не отпустят.

    p.s жду слив кармы.


    1. garwall
      29.12.2023 09:38
      +2

      мы растем и они растут вместе с нами ))


    1. ipswitch
      29.12.2023 09:38
      +1

      о, коллега, они не просто сидят.

      они...педали жмут


  1. ciuafm
    29.12.2023 09:38
    +2

    С TUI IDE познакомился на PC XT в 1988 - это был Turbo Basic. После унылого БК0010-01 интерпретатора а-ля Синклер компилятор с Бейсика - это была бомба. Точно не помню, но вроде бы и дебаггер там был.


  1. vvbob
    29.12.2023 09:38
    +3

    Первые программы писал на Спектруме, было прикольно и по своему удобно. Потом пересел в школе на Turbo Pascal, современные разработчики не поймут, насколько это было в те времена круто! Это как научиться ездить и получить права на Жигулях, а потом сесть за руль какого-либо современного дорогого кроссовера, ощущения будто ты в какой-то лакшери ракете сидишь, все удобно, все работает с огромной скоростью, куча памяти (да сейчас смешно звучит, а тогда 640 Кб реально хватало), жесткий диск, блин.. это восторг был.


  1. bear11
    29.12.2023 09:38

    Читаю я, читаю, и удивляюсь! Ну почему никто, никто не упомянул xwpe и wpe!? Они же именно для этого были сделаны!

    https://pkgs.org/search/?q=xwpe

    xwpe - c поддержкой X, wpe - чисто консольный.

    Window Programming Environment.

    Очень рекомендую попробовать.


  1. YuriPanchul
    29.12.2023 09:38
    +2

    Лучшим редактором всех времен и народов для меня был досовский Multi-Edit, но joe, который я использую сейчас - тоже норм (я подсел на него как следствия использования TurboC в 1988-1991). Но для молодежи наверное приемлемым оптимумом сейчас является VSCode.

    vi и emacs - несколько раз пробовал перейти, через месяц с облегчением сваливался обратно на joe. Sublime - ок чтобы писать тексты, но плохо работает с прямоугольными блоками.


    1. dimas
      29.12.2023 09:38

      vim стоит начать с vimtutor. Либо уже через час-два начнешь в нём нормально работать, либо стоит бросить :)


      1. YuriPanchul
        29.12.2023 09:38
        +3

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


        1. checkpoint
          29.12.2023 09:38

          Юрий, могу предположить, что основная фича к которой ты привык в joe (как и в multi-edit-е) это блочно-прямоугольное копирование текста. В vi/vim такого нет и быть не может потому, что эти редакторы по сути строковые. Блочное копирование текста конечно удобная фича, но она создает проблемы с табуляциями. Поэтому пользователи joe и прочих VSCode-ов люто ненавидят табуляции, так как произвольное копирование табуляций приводит к нарушению форматирования текста. Для пользователей же vi/vim и emacs табы это благодетель. :-)


          1. Cheater
            29.12.2023 09:38
            +1

            В vi/vim такого нет и быть не может

            ??? В Vi такого нет, но в Vim Ctrl+v выделяет прямоугольный блок текста, его можно вырезать, вставлять. Это такой же выделенный текст, просто выделение не непрерывное, и с некими соглашениями как такие объекты вырезать и вставлять.


            1. checkpoint
              29.12.2023 09:38

              В моём vi (FreeBSD 13.2) такой фичи нет, но это и не важно, так как такой способ копирования создает больше проблем, чем упрощает работу.


              1. mpa4b
                29.12.2023 09:38

                Ну может в настоящем vi в вашей фрибзде и нет, но в viM прекрасно есть. Не надо вводить людей в заблуждение написав без разбору что мол "vi/vim".


              1. deathbel
                29.12.2023 09:38
                +1

                Зачем во фряхе vi когда там ee есть из коробки? Vi это для совсем диких систем где воообще ничего из коробки нет.


                1. checkpoint
                  29.12.2023 09:38

                  Что есть во фре из коробки, простите ?


          1. YuriPanchul
            29.12.2023 09:38
            +2

            Моя лютая ненависть к табуляциям не только из-за этого. А например потому что они превращают в кашу текст на гитхабе, так как всем разработчикам и читателям невозможно договориться об одинаковых установках табуляций. Интересный случай: в британской компании Imagination Technologies разработчики спорили, делать ли в коде отступы по 2 пробела или 4 пробела, и менеджмент решил что раз так, то всех перевести на 3 пробела. Это не интернет-байка, я в этой команде работал!


            1. mpa4b
              29.12.2023 09:38
              +3

              Блин, ну на поверхности же решение. Табуляции -- для индента (вложенные блоки), а всё что правее текущего индента -- пробелы. И тогда от размера табуляций зависит только сдвиг индента, в кашу ничего никогда и нигде не превращается.

              <tab>assign a = (b & c) |
              <tab>           (d & e) ;

              Вот типа такого


              1. nronnie
                29.12.2023 09:38
                +2

                А что за нужда вообще для отступов tab использовать вместо пробелов?


                1. checkpoint
                  29.12.2023 09:38

                  Меньше кнопок давить. Экономия дискового пространства.


                  1. qw1
                    29.12.2023 09:38
                    +1

                    Меньше кнопок давить

                    Нет разницы. В любой современной IDE жмёшь тот же TAB, и получаешь нужное число пробелов. Жмёшь BackSpace и откатываешься на 1 уровень отступа.


                    1. daggert
                      29.12.2023 09:38

                      Зачем в этом всем тогда пробелы? Жмешь таб - у тебя табуляция вставляется. Зачем ее заменять на пробелы? Какая-то лишняя сущность.


                      1. qw1
                        29.12.2023 09:38

                        А чему у вас равен размер таба? ))


                      1. daggert
                        29.12.2023 09:38

                        Одному табу


                      1. qw1
                        29.12.2023 09:38

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


                      1. daggert
                        29.12.2023 09:38

                        Зачем вам разный размер таба? Я не троллю.


                1. GRADUSnick
                  29.12.2023 09:38

                  одно нажатие мизинцем против двух или четырёх?

                  Я найду на что потратить это время, если честно.


                  1. nronnie
                    29.12.2023 09:38
                    +1

                    Вы отступы руками отбиваете? Снимаю шляпу перед вашим трудолюбием :)


              1. YuriPanchul
                29.12.2023 09:38

                Это очень мило, но когда в команде 200 человек, которые делают checkin в разных временных зонах, причем приходят новые, а старые забывают - все такого рода рекомендации не работают и код превращается в кашу. Править эту кашу - вносить дополнительные изменения в revision control, которые нужно review. Не надо, спасибо.


              1. YuriPanchul
                29.12.2023 09:38
                +1

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


                1. mayorovp
                  29.12.2023 09:38
                  +2

                  Зато будут фокусы с тихим переформатированием всего кода под заданные отступы.

                  Пришёл один программист - переделал все отступы на 4 пробела, пришёл второй - переделал все отступы на 2 пробела. А потом конфликт при слиянии.

                  Увы, агрессивное форматирование современных редакторов, помноженное на нежелание программистов их настраивать, не лечится простыми костылями вроде запрета табов.


                  1. YuriPanchul
                    29.12.2023 09:38
                    +1

                    Ну прежде всего в моем текущем проекте на работе строк кода миллионы и "тихое переформатирование" тихим не будет - сразу будет вопрос при интеграции (которая сделана сложно) "кто это пробует столько менять".

                    Поэтому традиция такова: у каждого есть ownership некоторых модулей, в своем модуле делай как хочешь, а на чужой территории стараться подстраиваться под чужой стиль и предварительно спросить.


                    1. mayorovp
                      29.12.2023 09:38

                      Если всё так - то и с табами проблем быть не должно.


                      1. YuriPanchul
                        29.12.2023 09:38
                        +1

                        Нет, в таком случае с табами проблема, так как настройки табов в редакторе одного инженера могут быть другие чем настройки табов в редакторе другого инженера, и при этом может стоять опция "заменяй N пробелов на таб" то есть "сделай кашу для другого". Избегание табов это решает.

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

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


                1. Chamie
                  29.12.2023 09:38

                  А навязать всем членам команды один редактор и одинаковые установки - это нереально.

                  Как насчёт добавить в проект файл .editorconfig?


                1. checkpoint
                  29.12.2023 09:38
                  +2

                  если кто-то из членов команды забудет в своем редакторе при разрешении табов отменить установку "превращать пробелы в табы" (вторая строка сломается).

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

                  В редакторе vi можно спокойно открыть бинарный (исполняемый) файл и отредактировать его без потери исполняемости.


                  1. qw1
                    29.12.2023 09:38

                    Меня бесят разработчики, не соблюдающие правила пунктуации и индентацию.
                    И как хорошо, когда IDE заботливо превращает их
                    int r=f(x,y,z)+c;
                    в нормальный
                    int r = f(x, y, z) + c;
                    при печати последней ;
                    или правильно выравнивает весь вложенный блок сразу при печати закрывающего }


                    1. checkpoint
                      29.12.2023 09:38

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


                      1. qw1
                        29.12.2023 09:38

                        Да ну, глупости. IDE, которая делает авто-форматирование по правилам коде-стиля, экономит кучу времени на мелочи типа "тут пробел добавить, тут подвинуть". Меня вот бесит неряшливый код, а коллегам важнее сэкономить 10 секунд своего времени, и вообще себя не утруждают полировкой. Пусть хоть IDE поправит, что может.

                        А тут я ещё распробовал AI-auto-completetion, это вообще имба. Угадывает процентов на 20, что нужно, и остаётся только давить хоткей "complete" в нужный момент, или писать своё, если IDE не угадала. Это вообще делает ленивым, но как круто экономит время, особенно на рутинных блоках, где нужно перелить одноимённые поля из одной DTO в другую.


                      1. checkpoint
                        29.12.2023 09:38

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


                      1. qw1
                        29.12.2023 09:38
                        +1

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


                      1. checkpoint
                        29.12.2023 09:38

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


                1. mpa4b
                  29.12.2023 09:38

                  Ну так запрет табов (выдача пачки пробелов по нажатию на Tab) тоже надо в редакторах настраивать. Так что чисто логически разницы в подходах нет -- и там и там надо редакторы настраивать.


      1. bear11
        29.12.2023 09:38
        +3

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


        1. Nagdiel
          29.12.2023 09:38

          Просто не надо для переключения раскладки использовать системный переключатель. В vim это делается так:

          " Настраиваем переключение раскладок клавиатуры по <C-^>
          set keymap=russian-jcukenwin
          " Раскладка по умолчанию - английская
          set imsearch=0
          set iminsert=0

          По желанию можно привязать альтернативную комбинацию:

          inoremap <C-L> <C-^>


          1. bear11
            29.12.2023 09:38
            +6

            ... и держать в мозгу "я в vim - мне сontrol ^" - я не в vim - мне control-alt. Спасибо, не надо.


            1. nronnie
              29.12.2023 09:38
              -1

              Есть альтернативные решения и про них тут неоднократно в статьях писали, можно поискать.

              А вообще, надеюсь ...

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


              1. geher
                29.12.2023 09:38

                двух греков, что изобрели и притащили сюда когда-то кириллицу,

                Есть версия, что не притащили, а доработали (добавив символы в уже существующую и популярную письменность). А вот за что следует хвалить всех богов, так за то, что продвигаемая ими же (двумя греками) глаголица не прижилась. Иначе было бы почти как в Японии с их аж тремя наборами знаков (почти, поскольку там правила выбора набора знаков достаточно хитрые, и всегда пользоваться одним не получится, не поймут, не в смысле написанное не поймут, а не поймут, почто нарушаешь).


    1. tenzink
      29.12.2023 09:38
      -1

      Не знаю почему, но мне vim идеально заходит, только когда живу под linux. Предполагаю, что всё дело в убожестве виндовой консоли (что cmd, что power shell), другими инструментами (tmux и т.п.) и тому как всё вместе это удобно стыкуется воедино в линуксе


      1. nronnie
        29.12.2023 09:38

        что power shell

        Вы не умеете его готовить. После него bash воспринимается как какой-то полуночный кошмар. Vim отлично живет и работает в Windows Terminal (про "conhost" не знаю, потому что уже даже забыл как оно выглядит)


        1. tenzink
          29.12.2023 09:38

          Скажите, туда аналог z (из zsh), быстрые переходы к последним директориям, продвинутый autocomplete и навигацию по истории команд завезли? В power shell не специалист, действительно интересно. Как язык меня ни bash, ни ps не интересуют от слова совсем. Для чего-то нетривиального есть python


          1. 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" или же своих собственных репозиториев.


            1. tenzink
              29.12.2023 09:38

              z (zsh) - имеется ввиду вот это https://github.com/agkozak/zsh-z. Для навигации в файловой системе очень удобно. Про историю команд постоянно пользуюсь, что можно ввести начало команды, и стрелки вверх вниз будут перебирать только те команды из истории, которые начинаются с этого префикса

              Если ps умеет делать autocomplete используя fuzzy logic типа такого, чтож, респект. При случае стоит попробовать. В свой время я поставил крест на PS за вот это чудо: `curl - is an alias of the Invoke-WebRequest cmdlet`


              1. 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.
                


                1. tenzink
                  29.12.2023 09:38

                  А в чем с этим проблема?

                  Тогда было проще запустить cmd.exe и не сильно думать, почему curl не работает в ps как от него ожидается. Если от этого избавились, то можно только порадоваться. Сейчас под рукой нет windows. Если придётся ещё попрограммировать под windows, попробую ps. Ожидания, правда невысокие


                  1. nronnie
                    29.12.2023 09:38

                    Выполняемая программа (exe-шник) в pwsh имеет приоритет над псевдонимом. Если установлен curl (в win его изначально нет), и он в PATH, то вызовется он, вот и все. А вот в bash как раз запросто можно накосясить переназначив curl в ~/.profile на что-то другое.


                  1. mayorovp
                    29.12.2023 09:38

                    На linux вы тоже можете попробовать поставить powershell, так кстати алиасов с самого начала не было.


                    1. nronnie
                      29.12.2023 09:38

                      Я пробовал - в целом работает, но, на Линуксе он как-то чужеродно смотрится, наверное, просто, привычка.


  1. Dave_by
    29.12.2023 09:38
    +5

    По мне так образцом идеального IDE остаётся Delphi. Настолько классно объединить редактирование кода и интерфейса - это нечто. До сих пор не понимаю почему он канул в лету. Может кто-то объяснит?


    1. geher
      29.12.2023 09:38

      Еще живо, выпускаются новые версии. Популярность не сказать, что высокая, но пока не слились.


      1. Dave_by
        29.12.2023 09:38
        +1

        Ну да, кое-как трепыхается. Но в начале нулевых он был прям идеалом enterprise разработки. Если сейчас про мобилы говорят "для всего есть своё приложение", то тогда про Delphi говорили "для всего есть свой компонент". Этот самый "hello world" можно было сделать не написав ни единой строчки кода, да ещё и со шрифтами и цветом поиграть.


        1. qw1
          29.12.2023 09:38

          Hidden text

          https://cdn.discordapp.com/attachments/977945442581119046/1190728834023174305/delphi-chess-component.mp4


        1. strvv
          29.12.2023 09:38

          даже во второй половине 90х, когда появилась.
          фирма Relex в Воронеже тогда, в 1996 году разрабатывала редактор типа delphi, с компонентами и прочими блекджеками и актрисами для своего Linter (реляционная СУБД) - делать виндовые приложения напрямую с логикой СУБД. правда с 97 года, как-то было не до них, но вроде ещё работают.


    1. eugrus
      29.12.2023 09:38
      +1

      Как Вам Lazarus?


      1. Dave_by
        29.12.2023 09:38

        В первый раз слышу (точнее читаю). Думаю дело Delphi живёт и побеждает. Жду его второго пришествия.


      1. deathbel
        29.12.2023 09:38

        А как вам Rad studio?


    1. PuerteMuerte
      29.12.2023 09:38
      +5

      Может кто-то объяснит?

      По двум причинам:

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

      2. Одновременно с этим установили минимальную цену в 700 баксов на приобретение лицензии, при этом сделав неработоспособными бесплатные версии. Тем самым помножили на ноль приток новых разработчиков

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


    1. ipswitch
      29.12.2023 09:38

      Lazarus - Open-Source Delphi на базе Free Pascal

      https://www.lazarus-ide.org/

      Такой родной Look and Feel,,,
      Такой родной Look and Feel,,,


    1. GRADUSnick
      29.12.2023 09:38

      1с очень похож в своем подходе)


  1. SergeiMinaev
    29.12.2023 09:38

    «Настоящие» современные консольные IDE

    Итак, что же мы имеем на сегодняшний день для современных языков? На сегодняшний день, похоже, актуальными являются Neovim, Doom Emacs или даже Helix.

    Неовим - не IDE.


  1. checkpoint
    29.12.2023 09:38

    А кто нибудь помнить как в MS-DOS делалась руссификация, т.е. ввод кириллицы ? ;)


    1. Sly_tom_cat
      29.12.2023 09:38
      -2

      КОИ-8R - брр, чур меня чур, от одного названия содрогаюсь....


      1. checkpoint
        29.12.2023 09:38
        +4

        Не. KOI-8R был в Юниксах, в MS-DOS-е использовалась кодировка CP866. Вопрос был в том, как организовывалось переключение раскладок клавиатуры. :)


        1. Kotofay
          29.12.2023 09:38
          +3

          В ЕС-1840/41 как раз KOI-8R был прошит в знакогенератор.

          Но знаменитый keyrus всё исправлял на отлично. До сих пор использую его шрифты в поделках.


        1. Sly_tom_cat
          29.12.2023 09:38

          Хрен редьки не слаще.


        1. Willy64
          29.12.2023 09:38
          +1

          На этот случай в системе было родное решение (вроде бы keyb.com, никогда им не пользовался из-за непригодности) и множество сторонних программ. Вспоминается keyrus.com (резидент) и fnload.sys (как драйвер). После того, как в мои руки попал редактор шрифтов, который позволял редактировать шрифт прямо внутри исполняемого файла fnload.sys, началось увлечение шрифтами. Точно помню, что делал "проволочный" шрифт, все линии в один пиксель, и "broadway" с утолщенными вертикальными линиями в буквах, этот был четко виден при пониженной яркости. А ещё ведь тогда на мониторы вешали экраны из затемненного стекла для "защиты от излучения", так что бродвей реально помогал.

          Отличная функция fnload.sys - подсветка неиспользуемой области монитора (тогда все 100% были CRT) при включении русской раскладки. Мне сейчас такого заметного индикатора очень не хватает.

          Для переключения использовался правый Ctrl. Я другими кнопками не пользовался, но выбор был, как и сейчас, Shift, Ctrl, Alt, комбинации.


          1. strvv
            29.12.2023 09:38

            dec vt220 шрифт прикольный, исходно wire, но сдублирован сдвигом вправо. очень красивый консольный шрифт.


        1. strvv
          29.12.2023 09:38

          rk, keyrus, куча руссификаторов была...


    1. geher
      29.12.2023 09:38
      +1

      Было как минимум два способа. Штатный - подгрузкой родных драйверов из поставки системы (display.sys, country.sys; keyb.com и все такое), и альтернативный, запуском какого-нибудь keyrus.


      1. 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м.


        1. Willy64
          29.12.2023 09:38

          А еще была утилита freegame, которая по Ctrl-Alt-Del прибивала программу, загруженную через аргумент командной строки. Обычно это была игра :), но при работе тоже пригождалось.


    1. saboteur_kiev
      29.12.2023 09:38
      +1

      keyrus.com
      Но вообще зависит от. у меня на совковом ноутбуке была хардварная кнопочка переключения на русский, правда была своя собственная кодировка.


      1. PuerteMuerte
        29.12.2023 09:38

        Но вообще зависит от

        ...видеоадаптера. На единственном серийно выпускавшемся совковом ноутбуке, Электроника МС1504, видеоадаптер был CGA, знакогенератор там зашит в ПЗУ и чудесным свойством программного переключения шрифтов не обладает. Keyrus для работы требует либо EGA, либо навороченные.


    1. OlegZH
      29.12.2023 09:38

      В те стародавние времена использовалась такая штука как таблица знакогенератора. Например, у меня в автозагрузке стояла TETTA.COM, которая «висела» на Ctrl-Shift (если не забыл). Смысл в том, чтобы подменить таблицу знакогенератора, иначе, русских букв, будут вылезать всякие псевдографические крякозябры.

      Помнится, что в Norton Utilities (если кто помнит этот пакет) тоже подменялась кодовая таблица, в результате чего начертание символов становилось приятнее.


      1. checkpoint
        29.12.2023 09:38
        +1

        Подменялась не только таблица знакогенератора но и ввод с клавиатуры. Всякого рода руссификаторы (keyrus.com) сажались на прерывание с клавиатуры (int 9h), системных вызовов (int 21h) и подменяли коды символов когда это требовалось.


        1. 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

          Где же сейчас с этим со всем можно поиграться?


          1. 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


      1. geher
        29.12.2023 09:38
        +3

        Помнится, что в Norton Utilities (если кто помнит этот пакет) тоже подменялась кодовая таблица, в результате чего начертание символов становилось приятнее.

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


  1. Merrynose
    29.12.2023 09:38
    +1

    Как только вы узнали, что клавиша Alt открывает меню, а Tab перемещает по полям ввода и кнопкам, вы могли с легкостью ориентироваться практически в любой программе.

    В любой программе, созданной с использованием библиотеки Turbo Vision или ее имитирующих. А так там был знатный зоопарк: сравним интерфейс того же Turbo Pascal, Super Calc и какого-нибудь Лексикон -- вообще ничего общего.


    1. OlegZH
      29.12.2023 09:38

      У оригинальной библиотеки Turbo Vision был существенный недостаток — низкая скорость работы. Когда при помощи Turbo Vision делали Dos Navigator, то (в RIT Research Labs) сделали столько ассемблерных вставок, что этот самый Dos Navigator просто летал.


  1. Sly_tom_cat
    29.12.2023 09:38

    В линейке Borland Turbo **** замечательным было то, что там можно было в это IDE и свое что-то засунуть т.к. были исходники (на сколько они там легально могли использоваться тогда никого сильно не волновало).
    Мы на пару с одногруппником сделали а-ля Turbo Lisp в качестве дипломной работы (я интерпретатор, а он в IDE его засунул). Сила этого "засунул" была в том, что скобочка ответная той, на которой стоял курсор тоже мигала (кто пробовал lisp - поймет на сколько это круто :) ).
    Еще прикрутили а-ля компилятор - просто текст с вырезанными форматированием (не значимые пробелы, табуляции и переносы строк) цеплялся к бинарику интерпретатора. Перегонять lisp в какой-либо псевдо-код особого смысла нет т.к. там автомат синтаксического разбора примитивный как "палка и веревочная петля".
    Его потом в учебном процессе еще несколько лет использовали. Позже студенты ошибку в интерпретаторе нашли, так я ездил в свою альмаматер, что бы ее поправить.


    1. OlegZH
      29.12.2023 09:38

      Хорошие студенты!


  1. TitovVN1974
    29.12.2023 09:38
    +1

    Compaq Visual Fortran шел с MSVS 6.0, библиотеками IMSL, Compaq Array Visualizer -на OpenGL и работающим в том числе при отладке, c диалогами, кнопками etc. Все отлично работало "из коробки" ...


  1. breninsul
    29.12.2023 09:38
    +1

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

    Но магии нет, с переходом в GUI IDE ничего не потеряли.

    Не совсем понятен и аргумент про ssh.

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


    1. nronnie
      29.12.2023 09:38
      +2

      Не совсем понятен и аргумент про ssh.

      Ну, вот, например, пакет "Remote Development" для VS Code это не только ssh. С ним можно писать и, самое главное отлаживать код прямо внутри, например, WSL2 и даже docker-контейнеров. И все это сидя из-под своей основной, привычной операционки никуда не переключаясь и никаких тех же исходников туда-сюда не копируя.


  1. AlexKMK
    29.12.2023 09:38
    +2

    У бурландов была прекрасная опция отладки - анимация. Нажимаешь и он сам за тебя жмакает F8 а ты смотришь как процессор движется по программе.


  1. Panzerschrek
    29.12.2023 09:38

    Сравнивать нормальные ранние IDE, предназначенные для написания кода на строго определённом языке с общими текстовыми редакторами (vim/emacs) несколько некорректно.
    Сравнивать нужно с чем-то вроде Visual Studio, NetBeans, Code::Blocks, QtCreator и т. д. Все они сразу после установки дают возможность написать код (с подсветкой синтаксиса), собрать его и отладить (если надо). Более того, в них есть то, чего не было в древних IDE - умное автодополнение кода, рефакторинг, интеграция с системой контроля версий, (иногда) редакторы GUI, и много чего ещё.


    1. MiyuHogosha
      29.12.2023 09:38
      +2

      БылиIDEс автодополнением, автор просто их не знает. А контроля версий наПК не существовало до середины 90х


  1. SSukharev
    29.12.2023 09:38
    +1

    Спасибо за статью, понастальгироовал по прошлому)


  1. MiyuHogosha
    29.12.2023 09:38

    Вот уж какую IDE (и заодно компиляторы) мы потеряли, так жто TopSpeed. Она была многоязыковая!Паскаль, Си, пролог и т.д


  1. Jeshua
    29.12.2023 09:38
    +1

    Внезапно заметил - смотрю на синий интерфейс, и глаза отдыхают. Не наполняются слезами от воспоминаний, а реально отдыхают, при переключении на текст статьи или на любое окно Винды я щурюсь и приближаюсь к экрану. Для эксперимента открыл ФАР. Теперь я знаю, как делать гимнастику для глаз ))


    1. chnav
      29.12.2023 09:38

      Для полного расслабления ещё установить растровый шрифт 10x18. Он легкочитаемый, максимально приближен к досовскому полноэкранному 8x16, всё как в статье.

      Не помню с какой версии появился шрифт 10x18, кажется с Windows XP. До этого дополнительно устанавливал растровый фонт, в наборе были 8x16, 9x18 и др. С появлением 10x18 "из коробки" в этом отпала необходимость.


      1. Jeshua
        29.12.2023 09:38

        Это какой например? И куда его ставить? На браузер это же не повлияет?


        1. chnav
          29.12.2023 09:38
          +1

          Я имел в виду настройки консольного приложения, в данном случае FAR-а.


    1. Chamie
      29.12.2023 09:38

      Эхх, а у меня — наоборот, от синего глаза вытекают. Одним из плюсов ВолковКомандера для меня был как раз дефолтный чёрный цвет.


      1. deathbel
        29.12.2023 09:38

        У волкова дефолтом был голубобирюзовый он был по приянеее чем нортоновский синий. Чисто черный это скорее к нафигатору


        1. Chamie
          29.12.2023 09:38

          Хм, а мне казалось, он чёрно-серый. Мб путаю.


    1. Willy64
      29.12.2023 09:38

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


  1. axe_chita
    29.12.2023 09:38
    -1

    Вообще Edit.com, из DOS 5 и выше, не был текстовым редактором. Это была программа запускавшая на исполнение Qbasic с ключом /EDITOR


  1. sergpank
    29.12.2023 09:38

    С удовольствием съехал с этой досовской мерзости в конце нулевых, как только вышло что-то поудобнее и никогда на него больше не вернусь. Даже Eclipse гораздо удобнее в разработке на С++ чем все эти TuboС и прочие вимемаксы когда речь заходит о проектах с сотнями файлов с сотнями строк кода каждый, а не о студентческой лабораторной работе.


  1. w0lf
    29.12.2023 09:38

    Стоило упомянуть в статье Turbo Pascal 3.0 под CP/M. Во-первых он имеет специфичный, отличный от DOS внешний вид, но включает в себя много функций DOS версии. Во-вторых он актуален и сейчас для ретро-программирования под CP/M. Я в частности использую для всяких поделок типа https://github.com/ivang78/flapcpm


  1. nameisBegemot
    29.12.2023 09:38
    +1

    Потеряли консоль. Зато библиотеки приобрели. Пробовал однажды все это турбо С++. Что значит нет библиотеки iostream? Что значит нет cout?


    1. PuerteMuerte
      29.12.2023 09:38

      Потеряли консоль. Зато библиотеки приобрели.

      Библиотеки приобрели намного раньше, чем потеряли консоль

      Пробовал однажды все это турбо С++. Что значит нет библиотеки iostream? Что значит нет cout?

      Смотря в каком году пробовали


      1. nameisBegemot
        29.12.2023 09:38
        -1

        Я скачивал турбо срр тридцати летней давности. Ище в версии единица, древнее что-то. Было просто это интересно.

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


  1. ovn83
    29.12.2023 09:38

    На западе вычислительная техника распространилась раньше и у программистов популярен был Паскаль, с заточкой на dos и Винду с Делфи, а ранее, более простой и массовый Бэйсик. В России массово вычислительная техника стала приходить в нулевые с освоением Си и ++


    1. Willy64
      29.12.2023 09:38

      Всё же на 10 лет раньше. Это бытовой техникой компьютер стал в нулевые, а рабочим инструментом значительно раньше. Поэтому и пользовались рабочими компьютерами для подготовки текстов, печати и игр (как без них). Сети в 90-х в массе были только локальные, так что и сетевые побоища до интернета были в-основном на рабочих машинах.


  1. unclegluk
    29.12.2023 09:38

    Первый IDE после языков-игрушек Фокала, Бейсика и Лого был TurboC. Эх, сейчас бы ту самую IDE, но у меня уже давно Мак, сейчас на М1. Вряд-ли что выйдет.


  1. Didimus
    29.12.2023 09:38

    А нынче приходится под маком крудошлепать, так ни одного нормального инструмента для правки текста не нашёл. Нотпад++ нету, подсветки синтаксиса json-схем в родные редакторы не завезли


    1. Chamie
      29.12.2023 09:38

      VSCode не зашло?


      1. Didimus
        29.12.2023 09:38

        Спасибо, попробуем. Пока использую Idea


  1. olimp_i_um
    29.12.2023 09:38
    +1

    Это я такой старый? В университете учился программировать на turbo pascal а потом уже в Delphi.


    1. strvv
      29.12.2023 09:38

      нет, у некоторых университетов на территории бывшего СССР до сих пор остались готовые программные комплекты dosbox+turbopascal+... в учебных программах.

      недавно у супруги нашёл cd c сборником всевозможных турбопаскалей, наиболее интересных библиотек, датированный 2001 годом. а прочитать негде...


    1. rombell
      29.12.2023 09:38

      В школе учился программировать на Fortran на перфокартах. Правда, в год поступления в универ ЕС-ки списали, так что продолжил на СМ-2 и М-220.


  1. ipswitch
    29.12.2023 09:38

    Апчхи! DEBUG.COM под DOS имел встренный ассемблер!

    При усердии можно было наассемблировать себе исполняемый файл прямо из него)

    https://av-assembler.ru/asm/afd/start-debug.htm


  1. ntu12170
    29.12.2023 09:38

    демонстрировал начало интегрированного опыта

    Ох, не понимаю я такой русский язык...

    А статья любопытная, спасибо!


  1. Roffild
    29.12.2023 09:38

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

    Но почему игнорят связку: SCP или SFTP для доступа к файлу + нормальный редактор (VisualCode и т.д.) на своем компе ???


  1. orahorn
    29.12.2023 09:38
    +1

    Удивительно, что автор умолчал про всё ещё развивающийся редактор для программистов jed и библиотеку TUI slang, которую и файловый менеджер Midnight Commander использует. Также мы не услышали про TUI из командной строки - утилиту whiptail и библиотеку newt. Ну и классическая и массовая в мире UNIX библиотека curses вообще никак не прозвучала. Жаль, что получилось вроде много красивого текста и статья, но суть , живая суть TUI упущена.


  1. kraken2018
    29.12.2023 09:38

    Эх, сколько в студенчестве интерфейсов было написано на TurboVision... Тестирования, расчетные программы, чьи-то кандидатские, системы анализа данных. TP/BP+TurboVision=офигенно просто, быстро и, по тем красиво. И все-таки насколько простой и прозрачный был ObjectPascal. Прям удовольствие было на нем писать. И компиляция моментальная (в отличии от TC/BC), и код качественный.

    А первые какие-то версии TP я использовать начал как бы не 88-89 годах, после Искровского бейсика было прям супер


  1. Pardych
    29.12.2023 09:38

    Дык а чего концептуально нового вы ждете от текстового редактора с большим количеством свистоперделок? С течением времени их все больше, они все тяжелее и интегрируют в себя все больше разного барахла. Если писать на c++, то наверное прям всю пользу какой-нить тяжелой idea и не увидишь, даже если это поставляется под названием clion. Слышал много всякого про то что с джава/котлин инструментарием в ней же это несравнимо. Но под jvm или kmp c градлом как бы лучше ничего и нет.

    Все дело ж еще может быть именно в том что c++ такой. К примеру недавно пришлось на нем написать немного, писался кусок в vscode из-за того что идея у меня community и я не мог все делать в одной среде и таки это действительно не слишком прям сильно отличающийся от старого опыт писания с чистого листа. С рефакторингом, думаю, он бы был уже значительно лучше. И вряд ли что-то кардинально сдвинется хоть когда-то. Но я бы проснулся в холодном поту если бы мне пришлось пользоваться чем-то типа старых терминальных редакторов на моих jvm-проектах нынешнего масштаба (то есть по дефолту я такое только в страшном сне себе могу представить).

    А так да, спасибо, поностальгировал на синие экранчики. Писали в институте и игры и вирусы на турбопаскале и сложные, неполигональные рендер-движки на турбо цпп.


  1. denizkino_mesto
    29.12.2023 09:38
    +2

    Мне нравился VC - Volkov Commander, Delphi 7 расширенное издание, Win2k - Windows2000


  1. SwetlanaF
    29.12.2023 09:38

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


  1. FrankMorozoff
    29.12.2023 09:38

    В конце 80ых и начале 90ых мы работали в основном на компиляторах Borland. Очень жаль, что эта прекрасная фирма была раздавлена Microsoft-ом. Наше небольшое подразделение работало на Турбоассемблер-е в основном с применением MultiEditредактора. Точнее: набор текста программ в редакторе с компиляцией через внутренние настройки (прописывали в редакторе вызов компилятора Борланд). И абсолютно никакой редактор не мог сравниться с упомянутым. В те времена.


    1. daggert
      29.12.2023 09:38
      +1

      Эта фирма была раздавлена жадностью. Когда были времена борланда делфи 7 и с++ - надо было выпускать бесплатные версии для энтузиастов, тем самым подсаживать программистов на себя. Но они пропустили момент.


      1. qw1
        29.12.2023 09:38
        +1

        Закончилась эпоха проприетарных компиляторов.
        Программисты выбирают open-source языки, даже Microsoft сдалась и открыла c#

        Можно было бы открыть компилятор Delphi/BCPP, и повоевать на поле коммерческих IDE. Но бесплатные IDE откусили себе существенный кусок рынка. Возможно, проект уровня Delphi перестал окупаться.


        1. daggert
          29.12.2023 09:38

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


          1. OlegZH
            29.12.2023 09:38

            Когда Delphi только появилось, то если верить Орлику (был такой автор книг по Delphi), то в Delphi реализована возможность разработки собственных редакторов полей и собственных мастеров. То есть — имелась возможность наращивать среду собственными силами. Что-нибудь их этого где-нибудь пригодилось? И как с этим вопросом обстоит дело в современных средах разработки?


            1. daggert
              29.12.2023 09:38

              Интересный вопрос кстати. Я видел нафаршированную BCB в которую свои компоненты написали и юзали. Но это было однажды.


            1. qw1
              29.12.2023 09:38
              -1

              имелась возможность наращивать среду собственными силами. Что-нибудь их этого где-нибудь пригодилось? И как с этим вопросом обстоит дело в современных средах разработки?

              Для Microsoft Visual Studio есть адд-он JetBrain ReSharper. Он полностью перелопачивает редактор, добавляет свою раскраску ошибок и навигацию по коду, переопределяет все хоткеи, добавляет кучу инструментов по рефакторингу, и даже заменяет build-движок, чтобы rebuild перестраивал только реально изменившиеся проекты. Причём окно билд-прогресса довольно интересно выглядит.

              Для C# это довольно привычная функциональность. А для C++ я нигде подобного не видел.
              Пишешь std::cout << и тут всплывает подсказка "Не поключен iostream" Можно игнорировать и писать дальше, или жмёшь хоткей и в начале файла появляется соответствующий include, и ты пишешь дальше, не отвлекаясь.


            1. mayorovp
              29.12.2023 09:38

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

              А в современных средах разработки с этим всё тоже нормально, в конце концов Visual Studio перебежчики из Delphi делали.

              Кстати, лично мне больше нравится другая возможность - таблица полей объекта, она же PropertyGrid, сама является совершенно обычным контролом и её можно бросить на форму. Это очень пригождается когда надо по-быстрому сделать редактор конфигурации.


          1. qw1
            29.12.2023 09:38

            Да вроде ни у кого не получилось.
            Watcom C++ закрылся. IBM свернул свою C++ IDE Visual Age.
            Microsoft мог себе позволить делать Visual Studio в убыток, зарабатывая в целом на платформе.


            1. daggert
              29.12.2023 09:38

              Майки прежде всего дали ВС 2005 бесплатно. Это хоть и стало работать в убыток, но позволило понизить порог входа - я например так и влетел в эти дела второй раз (первый был с пиратским борландом).


              1. qw1
                29.12.2023 09:38

                О том я и говорю. Для Microsoft направление компиляторов не приносило главного дохода, и они могли раздавать бесплатно. А Borland бы на что жил?


                1. daggert
                  29.12.2023 09:38

                  Это вопрос курицы и яйца. На момент перелома у борланда была база пользователей, в т.ч. в энтерпрайзе. Им надо было расширять сферу влияния беря под крыло тех кто и так пользовался их средой, но ломанной, для всяких школоподелок. Они это осознали только в 15м году чтоли, создав комьюнити версию. Сделав это пару лет ранее - продержались-бы, имхо.


      1. OlegZH
        29.12.2023 09:38

        Следует напомнить, что это ещё был и момент расцвета WEB-разработки, когда настольные приложения немного отошли на второй план.


        1. daggert
          29.12.2023 09:38
          +1

          А это убило многих мастодонтов… все думали что рынок вечен


  1. ksokol
    29.12.2023 09:38

    Интересно, а кто-нибудь еще начинал не с классических ЯП, а с dBase II/III? :)


  1. kisskin
    29.12.2023 09:38

    Почему же были? Вот, до сих пор использую:

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

    А в остальном со всем справляется, и с БД и с интернетом.


    1. daggert
      29.12.2023 09:38
      +1

      Еще с юникодом проблема и с hidpi