LINUX.ORG.RU

Вышел текстовый консольный редактор JOE 4.5

 , , ,


1

2

JOE, он же «текстовый редактор Joe» - это полнооконный текстовый редактор с почти 30-ти летней историей, поддерживающий системы команд своих самых популярных конкурентов, включая GNU Emacs, Pico и WordStar.

JOE поддерживает подсветку синтаксиса большинства сколько-нибудь популярных языков программирования (>250-ти штук), автодополнение (с выбором возможных вариантов, если их несколько), горизонтальную и вертикальную многооконность, запись макросов, закладки, умеет показывать номера строк в специальной колонке слева от текста по Ctrl+t n.

Joe - это фонетическая транскрипция имени автора программы, Joseph Allen.

Какие возможности принесла нам версия 4.5?

А вот какие:

  • У JOE появились темы оформления окна редактора, которые разработчики назвали цветовыми схемами, поскольку темы в общем-то цветами и управляют.

    Было: http://joe-editor.sourceforge.net/before.gif

    Стало: http://joe-editor.sourceforge.net/after.gif

    Установить тему оформления можно нажатием Ctrl+t s или при запуске редактора - ключом командной строки -color

  • Теперь редактором поддерживается глубина цвета в 24-ти бита, (конечно, не на всех терминалах такое в принципе возможно). Нововведение не работает сразу, но включается опционально - после установки переменной окружения COLORTERM в truecolor или 24bit.
  • В официальный архив с исходниками JOE теперь входит несколько цветовых тем:
    • gruvbox от нашего соотечественника Павла Перцева;
    • ir_black - любезно предоставлена Todd Werth;
    • molokai (очевидно, молочная?) - спасибо, Tomas Restrepo!
    • solarized (и это совершенно точно - «солнечная» тема) - давайте поблагодарим за неё Ethan Schoonover!
    • wombat - наша признательность Lars H. Nielsen за отличную работу!
    • xoria - all glory to Дмитрию Ю. Зотикову!
    • zenburn - так держать, Jani Nurminen!
  • Режим подсвечивания строки, на которой находится курсор (они же редактируемая строка в неактивном окне), теперь может быть включен/выключен нажатием Ctrl+t u или же подсветка может быть включена по умолчанию, если вы запустите JOE с опцией -hiline;
  • Режим показа номеров строк в редакторе JOE, в отличие от некоторых других редакторов, существовал всегда, но вот теперь наконец размер вертикального поля слева от текста, в коем и демонстрируются номера строк, рассчитывается динамически на основе данных о длине файла (видимо, это следует читать: «на основе данных о количестве строк в файле»);
  • Были обновлены все файлы синтаксиса для различных языков (программирования и разметки) - для того, чтобы по возможности контексты редактирования comment_todo, string и comment корректно определялись автоматически;
  • Появилась новая макрокоманда, благодаря чему символ, запускающий макрос на выполнение, отныне можно использовать на любом макрошаге и в любом макровызове (при запуске другого макроса внутри данного);

    Если в макрошаге задана команда type, то в ответ на выполнение макрошага будет выдан (выведен на экран) тот самый символ, с помощью которого запустили макрос.

    Например, приведённый ниже макрос выведет три X-а: type,type,type X А вот до версии 4.5 вы бы получили три NUL-а.

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


Всех благ и с Новым JOE!

>>> Заметки о выпуске

★★★★★

Проверено: Shaman007 ()
Последнее исправление: Shaman007 (всего исправлений: 7)

Ответ на: комментарий от anonymous

Да, ещё у пользователей VI не хватает времени на развитие ЧЮ, поскольку их редактор постоянно пищит и портит, что конечно заставляет тратить уйму времени на борьбу с редактором, удовлетворяющим потребностям ЧСВ, но не дающим выполнить работу в срок. Пользователям VI даже регистрироваться на LOR некогда, так сильно они увлечены борьбой со своим пищащим редактором для истинных горцев.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Не приходилось. Возможно, я просто слишком новый для этого.

А вообще почему вы работаете на Австралию и США? Это же страны НАТО, наши потенциальные враги... Хорошо конечно, что у них нет денег на 10-ти гигабитные каналы (у моей организации почти все каналы между офисами - 10 гигабит и очень редко - 1 гигабит), но вы поосторожнее что ли: русские идут.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от DRVTiny

После появления Unix стандартным редактором в нем был построковый редактор ed - перед пользователем было только приглашение в виде двоеточия и можно было вводить команды, например, чтобы посмотреть кусок текста, или заменить одну строку на другую. Надо сказать, что эти классические команды так и остались без изменений и более того использовать ed может иметь смысл и сейчас. :-) Где-то в 1976 - 1977 годах Билл Джой (Bill Joy) начал разрабатывать редактор ex который являлся последователем ed, но имел расширенный набор команд. Позже Билл разработал визуальный интерфейс для ex который он назвал vi (сокращение от visual). Разработка велась через модем в 300 бод, который позже был обновлен до 1200 бод. Таким образом вся работа с Vi была изначально рассчитана на самые медленные соединения.

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

anonymous
()
Ответ на: комментарий от hobbit

мне всегда нравилось управление в турбо паскале

А мне нравилось в TP7, c человеческими (Ctrl|Shift)-(Del|Ins).

от persistent blocks, например, потом пришлось долго и мучительно отвыкать

В mcedit, например, до сих пор так. Вот честно, не могу придумать чем persistent blocks лучше обычного (для второй половины 90-х и далее) поведения. Скорее, это просто вопрос привычки. Можешь привести пример, когда это удобнее?

ShizuShidou
()
Ответ на: комментарий от DRVTiny

VI сам доказывает собственную никчёмность тем, что исходно они предлагали какие-то забубёные сочетания клавиш даже тупо для перемещения клавиш курсора и backspace'а и с пеной у рта доказывали, что это охрнеть как удобно

Я даже хотел что-то ответить про раскладку ADM-3A, на котором vi изначально и писался, но ты уже успел скатить тред в танцпол.

ShizuShidou
()
Ответ на: комментарий от ShizuShidou

Например, между тем моментом, в который я выделил блок, и тем, в который я хочу отправить его в буфер, я могу полистать текст и ещё раз убедиться, правильно ли я его выделил, при этом выделение не пропадёт. Более того, ЕМНИП, там можно было после раздумий скорректировать конец выделения, не меняя начало.

Хотя не отрицаю, что привычка имеет значение.

hobbit ★★★★★
()
Ответ на: комментарий от lucentcode

Если про Emacs в курсе, про Pico в старой книжке про Юниксы когда-то что-то читал, то про WordStar даже не слышал. Вывод, из конкурентов у него только Emacs, Vim да Nano. Остальные консольные редакторы - баловство для старых маргиналов, не более.

А вот теперь, внезапно:

Джордж Мартин пишет книги в WordStar 4.0 для MS-DOS

У него там много интересного:

«Программа делает всё то, что требуется от текстового процессора, и не делает ничего другого,- сказал он. – Мне не нужна никакая помощь. Я ненавижу эти современные системы, когда ты вводишь строчную букву, а они исправляют её на заглавную. Мне не нужна заглавная! Если б я хотел ввести заглавную букву, я бы её ввёл. Я умею использовать Shift!».

hobbit ★★★★★
()

Ну раз уж тут у вас срачъ vi vs emacs, то закину мысль: проблему удобства работы нужно начинать решать не с редактора, а с клавиатуры. Современные массовые клавиатуры изначально неэргономичны (в изначальном значении слова «эргономика», до того, как его засрали маркетологи). Тот же vi — доведённая до совершенства попытка приспособить редактор к неудобной клавиатуре.

anonymous
()
Ответ на: комментарий от hobbit

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

ShizuShidou
()
Ответ на: комментарий от anonymous

Мы не в музее. Относительно 70-х годов и модемов всё понятно, я в курсе всех этих перипетий. Но мы с вами пользуемся ОС Linux, которая появилась всего лишь тогда, когда мне было 7 лет, а процентов 30-ти людей, которых вы видите на улицах - вообще ещё в проекте не было. Так вот, тогда уже 3 года как был joe, Macintosh уже лет 5 как что-то сказал электронным голосом, а в моду аккурат входили всякие экзотические электронные перья и трекболы.

При этом приверженность vi если и объяснялась модемными соединениями, которые уже тогда были 9600 и быстрее повсеместно - во всяком случае, отсутствие поддержки в нём поддержки нормальных клавиатур уже тогда должна была бы вызывать лёгкое недоумение.

Если же не увлекаться экскурсами в историю вычислительной техники, то я вижу, что у vim и joe по сути просто немного разные идеологии редактирования, но в целом эти редакторы нацелены на одну и ту же нишу. Причём здесь какой-то особый интеллект сторонников vim? Кому-то он удобен, кому-то неудобен - дело вкуса. Это не какие-то фундаментальные научные знания, это просто методология редактирования текста, не нужно из этого делать религию.

Собственно, всё, что я хотел донести - это то, что для «непосвящённых» порог вхождения для редактирования в joe намного ниже, чем для vim. Почему вдруг это плохо и как-то кого-то характеризует? Если vim не дружит с эргономикой (кстати, тоже наука) и фактически эту эргономику переизобретает, пытаясь изменить пользователя, а не подстроиться под привычные паттерны редактирования - это хорошо или плохо?

DRVTiny ★★★★★
() автор топика

цветовые схемы это классно, особенно то, что можно держать несколько секций, и для 256 и для 16 цветов

ananas ★★★★★
()
Ответ на: комментарий от hobbit

Мне не нужна никакая помощь. Я ненавижу эти современные системы, когда ты вводишь строчную букву, а они исправляют её на заглавную. Мне не нужна заглавная! Если б я хотел ввести заглавную букву, я бы её ввёл.

О, да! Я похожий rage испытал в своё время с «умным» автокомплитом в баше, когда пытался написать что-то вроде unrar x long/path/file.jpg. С тех пор всякий «умный“ автокомплит у меня везде отключён.

anonymous
()
Ответ на: комментарий от DRVTiny

При этом приверженность vi если и объяснялась модемными соединениями

Приверженность vi объясняется возможностью не снимать пальцы с основного ряда клавиатуры в процессе редактирования текста.

Не осилил слепую десятипальцевую печать - так и скажи, вместо того, чтобы гнать на vim и emacs.

anonymous
()
Ответ на: комментарий от DRVTiny

для «непосвящённых» порог вхождения для редактирования в joe намного ниже, чем для vim

Непосвящённым и возможностей nano вполне достаточно. И им уж точно не нужно «выполнить работу в срок». Какого, простите, фига они вообще полезли что-то редактировать в терминальном окне? А человек, который этим занимается постоянно, так или иначе выберет рабочий инструмент согласно своим вкусам и привычкам. Порог вхождения тут вообще никаким боком.

нормальных клавиатур
vim не дружит с эргономикой

Учитывая как изговнякали стрелки на большинстве нынешних ноутбучных клавиатур, hjkl скоро снова войдёт в моду, причем, повсеместно. Ну или емаксовские C-f, C-b, C-n, C-p — запоминать легче, но тянуться дальше.

ShizuShidou
()
Ответ на: комментарий от anonymous

Десятипальцевый метод (коим действительно не владею, каюсь) здесь вообще ни при чём. Речь по-моему всё время шла во-первых о vi, а не о emacs, а во-вторых - о разделении режимов «команды» и «ввода». В классическом vi для перемещения курсора нужно было сначала жмакнуть по Esc, а потом нажать что-то вроде «j». И это довольно странный подход, особенно если учесть тот факт, что Esc на современных клавиатурах не сильно ближе клавиш со стрелками.

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

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Приверженность vi объясняется возможностью не снимать пальцы с основного ряда клавиатуры в процессе редактирования текста.

Не осилил слепую десятипальцевую печать - так и скажи, вместо того, чтобы гнать на vim и emacs.

Гм, я вот осилил и слепую печать, и vim, и emacs. По результатам могу сказать, что если на клавиатуре нормально расположены модификаторы (ctrl, alt, shift), то vi теряет все свои преимущества перед емаксом. Нормально — это под большими пальцами. Чуть хуже, если симметрично под мизинцами, там где на массовых ублюдочных клавиатурах CapsLock и Enter.

А joe изредка запускаю как jmacs, когда полноценного емакса под рукой нет, а минимальной подсветки синтаксиса хочется.

anonymous
()
Ответ на: комментарий от DRVTiny

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

Преимущества не в экономии и не в скорости, это правда. А вот ощущение удобства и свободы при слепой десятипальцевой печати непередаваемы, поверь мне. Пока сам не попробуешь — не поймёшь.

anonymous
()
Ответ на: комментарий от DRVTiny

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

AFAIK сейчас мало кто использует именно vi - в основном vim. Там для перехода в режим перемещения курсора достаточно нажатия на Esc без дополнительных телодвижений. Обычно вместо этого делают мапинг типа «jj», «df» или им подобных сочетаний - тянуться до ESC каждый раз действительно неудобно.

для меня неочевидны преимущества особо быстрого набора десятипальцевым методом

Считается, что при программировании больше нужно перемещаться по тексту (коду), чем набирать его - тут-то и проявляется преимущество командного режима Vim. Как бонус - много консольных приложений используют сочетания клавиш из vi или emacs (не говоря уже о возможности привычные сочетания клавиш со всякими wm типа i3). Таким образом, можно один раз понять и освоить клавиатурные сокращения (vim или emacs, кому что удобно), и затем пользоваться ими почти во всех приложениях.

Ну и фразы вида

VI сам доказывает собственную никчёмность
VI без идиотского режима команд
Переключение в режим команд с залипанием в нём - весьма дерьмовая идея изначально

совсем не красят автора. Мне может в Joe тоже много чего не нравится - но это ведь не повод поливать его грязью, не так ли?

Кстати, если бы идея командного режима была бы настолько идиотской - вряд ли бы в emacs стали делать vi-режим.

По результатам могу сказать, что если на клавиатуре нормально расположены модификаторы (ctrl, alt, shift), то vi теряет все свои преимущества перед емаксом. Нормально — это под большими пальцами

Из-за этого сейчас перешел на spacemacs - гибкость и мощность emacs плюс практически полноценный vi-режим. Все основные команды и модификаторы повешены на пробел - как раз под большим пальцем.

anonymous
()
Ответ на: комментарий от anonymous

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

Что мне всегда казалось неконсистентным в vim, так это невозможность перемещаться в командной строке (которая :) теми же командами, что и в основном редакторе. Как, например, перемещаться в ней по словам? Да ещё не отрывая пальцы от центрального ряда?

В емаксе в командной строке (которая M-x) можно использовать ровно те же комбинации клавиш, что и в самом редакторе.

anonymous
()
Ответ на: комментарий от Odalist

Это у сорсфоржа какие-то проблемы. Вчера всё работало.

anonymous
()
Ответ на: комментарий от Odalist

Это был своеобразный юмор :) Как и в случае с фонетической транскрипцией имени «Йозеф».

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Что мне всегда казалось неконсистентным в vim, так это невозможность перемещаться в командной строке (которая :) теми же командами, что и в основном редакторе

Согласен, сам с этим несколько лет мучался. Потом перешел на spacemacs, и теперь мне хорошо :)

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

anonymous
()
Ответ на: комментарий от DRVTiny

у моей организации

херасе, тут аж владельцы организаций!

русские идут.

в или на? :-D

anonymous
()
Ответ на: комментарий от DRVTiny

А у меня вот так под изрядно доставшим XShell 5. Ибо нет truecolor'а

Не плохо так.

Odalist ★★★★★
()

Постави. Запустил. Традиционный, для традиционных редакторов, вопрос - «а - а - а, как отсюда выйти?..»

anonymous
()
Ответ на: комментарий от anonymous

Не осилил слепую десятипальцевую печать

а зачем ее осиливать? вы - машинистка? а стенографическую запись вы освоили?

ananas ★★★★★
()
Ответ на: комментарий от ananas

Не осилил слепую десятипальцевую печать

а зачем ее осиливать?

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

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

anonymous
()
Ответ на: комментарий от anonymous

Прямо так контрастно внизу:

Joe's Own Editor 4.5 (utf-8) ** Type Ctrl-K Q to exit or Ctrl-K H for help **

Ctrl-K H кстати не в пример адекватнее Emacs'овского, поскольку тут хотя бы реально нужные сочетания вначале, а не просто тупая мешанина размером с 3 Талмуда.

DRVTiny ★★★★★
() автор топика
Ответ на: комментарий от anonymous

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

или «ходить» - это была не очепятка, а десятипальцевый ввод - это просто тренировка пальцев для более комфортной хотьбы?

ananas ★★★★★
()
Ответ на: комментарий от ananas

несколько десятков слов - это сколько? а в символах? и сколько времени, в результате, на ввод одного символа?

Неважно. Дело не в скорости, а в удобстве.

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

Ничем, конечно. Это хорошо, что ты обдумываешь. А то в интернетах сейчас полно тех, кто тупо впечатывает. Одним пальцем или десятью — не важно.

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

«ходить» - это была не очепятка

Какая ещё «очепятка»? Это метафора была. Ходить намного удобнее, чем ползать.

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

anonymous
()

Один из главных откровенных косяков JOE - отсутствие поддержки функции comment/uncomment block. Патч для её поддержки был ещё в 2007-м году, но его не приняли в основной код из-за каких-то принципиальных соображений, связанных с якобы проблемным undo после этого. Сейчас соотв. обсуждение на sourceforge недоступно.

DRVTiny ★★★★★
() автор топика
Последнее исправление: DRVTiny (всего исправлений: 1)
Ответ на: комментарий от anonymous

У меня есть опыт — я им поделился. Считаешь, что тебе не нужно, ну так проходи мимо

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

ananas ★★★★★
()
Последнее исправление: ananas (всего исправлений: 1)
Ответ на: комментарий от DRVTiny

это вроде как макросами должно решаться

ananas ★★★★★
()
Ответ на: комментарий от ananas

особенно, если это как достижение преподносят

Где ты такое увидел? Никаких особых «достижений» слепая печать не требует. Я же написал, что за неделю можно освоить для комфортной работы, какое уж тут достижение.

Я преподношу слепую десятипальцевую печать как удобный способ работы на компе.

желаю понять - зачем. пока так и не понял.

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

anonymous
()
Ответ на: комментарий от anonymous

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

ananas ★★★★★
()
Ответ на: комментарий от ananas

Это такое неделимое словосочетание «слепая десятипальцевая печать», название метода. Я только о нём говорю, иногда сокращаю.

Печатать вслепую одним пальцем или десятью, но пялясь на клавиатуру — это не о том.

anonymous
()
Ответ на: комментарий от ananas

а если не станет?

И что ты от меня хочешь? Чтобы я тебе в таком случае выплатил материальную компенсацию за потраченное время и приложенные усилия?

anonymous
()
Ответ на: комментарий от DRVTiny

есть Vim EASY )

а сочетания перемещения курсора по hjkl в нем до сих пор есть.

и были они сделаны потому что vi появился раньше клавиатуры со стрелками)

по теме - одно время использовал, редактор стоящий. но к Vim|Elvis привык)

Slackware_user ★★★★★
()
Ответ на: комментарий от hobbit

И как я мог такое пропустить? Я тоже не люблю редакторы, которые лучше меня знают что я хотел написать:)

lucentcode ★★★★★
()
Ответ на: комментарий от anonymous

И что ты от меня хочешь? Чтобы я тебе в таком случае выплатил материальную компенсацию за потраченное время и приложенные усилия?

да

ananas ★★★★★
()
Ответ на: комментарий от Slackware_user

vi появился раньше клавиатуры со стрелками

vi писался как раз на терминале, где была клавиатура со стрелками. Только стрелки там были нарисованы на кнопках H, J, K и L. ;)

anonymous
()
Ответ на: комментарий от ananas

И что ты от меня хочешь? Чтобы я тебе в таком случае выплатил материальную компенсацию за потраченное время и приложенные усилия?

да

Извини, я тэг «сарказм» забыл поставить.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.