LINUX.ORG.RU

Текстовый редатор unDE

 


6

2

Здравствуйте!

Пишу так как с момента последнего релиза unDE прошло полгода, а я обещал новый релиз через полгода-год. Вот, скриншот-отчёт, так сказать.

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

Подсветка синтаксиса осуществляется согласно syntax-файлам vim'а. Это позволяет поддерживать нам широкую базу синтаксисов.. Широкую да не очень.. Регулярные выражения vim'а сильно отличаются от регулярных выражений D, поэтому заточить его под напичканный какими-то хитрющими выражениями синтакс-файл Perl'а мне не очень удалось (просто я не очень старался). В Bash-е из-за того что я не осилил многострочность регулярных выражений имя функции будет подсвечено только если фигурная скобка указана на той же строке, что и имя функции. А так Java, C, C++, PHP, JavaScript, HTML вполне себе подсвечиваются.

Но подсветка синтаксиса - это так результат предпоследней недели работы.

На самом же деле основной возможностью-убийцей редактора является несомненно его система отмен. В редакторе 4 вида отмен:

1) Файловая система отмен - ту что мы видим в большинстве редакторов.

2) Глобальная система отмен - это когда вы только что из-за одной переменной начали тотальный рефакторинг кода во всех файлах и вам надо отменить все недавние изменения во всех файлах.

3) Проектная система отмена - что-то среднее между 1 и 2. Отмены ограничиваются одним проектом.

4) Локальная система отмен - это когда вы точно помните что вот в этой функции был нужный код. Выделяете функцию - нажимаете (Ctrl+Z, в будущем Ctrl+Shift+Z) и вуаля - вы видите предыдущую версию фрагмента файла, а остальная часть файла остаётся нетронутой.

Редактор вдохновлён Vim'ом, но основным режимом всё же является не командный режим, а режим вставки. А так многие горячие клавиши перекликаются с Vim'ом, например: Ctrl+V - визуальный режим. Есть желание сделать командный режим по клавише Caps Lock, чтобы не зажимать Ctrl, но пока не доходят руки.

Справа вверху находится миникарта. Это замена полосы прокрутки. А что отмечают на картах? Места боевой славы, конечно! Поэтому зелёным на карте отмечены недавние правки, жёлтым - дневной давности, оранжевым - недельной, ну а серым - месячной.

Локальные метки (те что задаются Ctrl+M <маленькая_латинская_буква>) также отмечены на миникарте (на скриншоте 2).

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

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

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

Ctrl+C - копировать из кармана.

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

Основная фишка - т.н. «псевдо-директории» - фиолетовые элементы. Когда в директории больше 10 файлов над ней появляется уровень псевдо-директорий, страницы директории по 10 элементов. Если элементов больше 100 - то 2 уровня псевдо-директорий и т.д.

И что ещё важно - при нажатии на любую директорию (псевдо или нет) в ней автоматически выбирается последний редактированный в ней файл как бы глубоко он не располагался. Если надо открыть саму директорию - надо кликнуть просто второй раз.

И это надо сказать удобно. И теперь я думаю как бы мне переделать мой ZUI-файловый менеджер объединив в нём преимущества ZUI-интерфейса и преимущества такой панели табов.

Так проект прошёл важную веху - наконец-то он разрабатывается сам в себе (а не в vim'е запущенном в себе).

Спасибо за внимание. Больше букв нету. Исходники в репозитории проекта. Сайт: http://unde.su

>>> Просмотр (1360x768, 65 Kb)

★★★★★

Проверено: JB ()
Последнее исправление: cetjs2 (всего исправлений: 2)
Ответ на: комментарий от unDEFER

То есть я сделал глобальную замену. Затем добавил новую строку. Затем выполнил глобальную отмену и она удалит строку и отменит замену? Так?

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

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

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

А, то есть глобальная отмена - это просто отмена для каждого файла?

Не понимаю вашего недопонимания.

Я думал что есть общий список действий, и они то и отменяются.

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

В этом случае были бы конфликты, о которых я писал.

Конфликты возникают если пытаться отменять файлы по тем же правилам что и глобальные отмены. Иначе конфликтов не возникает.

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

Редактор вдохновлён Vim'ом, но основным режимом всё же является не командный режим, а режим вставки. А так многие горячие клавиши перекликаются с Vim'ом, например: Ctrl+V - визуальный режим. Есть желание сделать командный режим по клавише Caps Lock, чтобы не зажимать Ctrl, но пока не доходят руки.



Это консольный редактор? Простите, а зачем он нужен, когда есть vim?

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

Нет, это не консольный редактор и вообще unDE - это не редактор. Редактор - лишь его малая часть.

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

Ну, это просто несовершенство русского языка. «текстовый редактор unDE» надо читать не как «текстовый редактор под названием (кто? что?) unDE», а «текстовый редактор (кого? чего) unDE».

А вообще у проекта есть русское никому не известное название - «Подкова». «Текстовый редактор Подковы» - понятнее?

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

unDE — это не-DE, которая в будущем должна стать полноценной заменой всех программ в ОС.



Прямо-таки всех программ?

А всё же есть краткий синопсис что это вообще такое физически?

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

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

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

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

Так зародился проект unDE.

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

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

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

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

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

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

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

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

Так и видео же есть! В предыдущих двух релизах были ссылки.

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

Литературу как делать для людей он не читал,

А вот это мимо. Читал достаточно.

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

Я согласен что мои интерфейсы не идеальны. Так я тестирую, привношу что-то новое. Думаю мал по-малу дойдёт до удобного состояния.

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

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

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

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

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

Вы сломали? УМВР!

А графомания это когда много за короткий срок пишут. А вы посмотрите сколько лет существует проект!

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

Это не важно, потому что смена раскладки в unDE всё равно по своему перехватывается независимо от X'сов.

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

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

У меня на капс смена раскладки и так у почти всех моих знакомых. =\

Я не ваш знакомый, но и у меня на Caps висит смена раскладки.

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

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

По теме. Проект очень заинтересовал. А на сайте нашел для себя много действительно интересной информации. Скоро прочитаю всё :)

Спасибо за труды. И удачи вам в творчестве!

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

В течении ещё полугода. Идём по плану.

Ясно. Будем ждать.

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

У менч вин это мета в i3 и была метой в асом. Очен нраица.

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

Тупиковый подход

Подсвечивает, но не всё гладко, надо дорабатывать..

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

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

Шаг вперёд, два назад

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

Невозможно не плюсануть.

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

То есть неосилили и сразу подпёрли костылём?

Camel ★★★★★
()
Ответ на: Шаг вперёд, два назад от Camel

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

unDEFER ★★★★★
() автор топика
Ответ на: Was that so hard? от Camel

Где скриншоты, инструменты, где это всё?

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

Примечательная штука. Но есть и проблемы:


  • В первую очередь, SourceForge. Пользоваться ЭТИМ в 2017 году мало кто согласится, сам сайт отвращает контрибуторов вместо того, чтобы их привлекать.
  • Сайт-книжка, где нельзя найти ссылку на исходники за 10 секунд это очень плохо.
  • Графический дизайн оставляет желать лучшего. Особенно всё очень плохо с цветами: кислотные и программистские.
  • Миникарта — хорошо. Но большая миникарта — лучше. В саблайме или VS Code они позволяют перемещаться по коду небрежными, размашистыми движениями мыши без прицеливания.
  • Нужен режим «дзен», когда нет ничего кроме текста. Как в Ghostwriter или VS Code, например.
  • Практически любое приложение обязано иметь две легко переключаемые темы: одна — светлая, другая — тёмная



Я ещё хотел дать полезных ссылок, но почти все их потерял/забыл. Пока дам https://material.io/guidelines/ и http://practicaltypography.com/. По поводу цветов, ну возьми какую-нибудь популярную цветовую тему вроде Base16 Ocean, их делали люди с глазами чувствительнее, чем у тебя. По поводу пустого пространства: оно тебе не враг, а друг. Не нужно пытаться впихнуть как можно плотнее, пойми негативное пространство и позволь дизайну дышать.

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

Спасибо за конструктив.. Всё взять на заметку, боюсь не унесу, но что-нибудь обязательно почерпну.

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

С проектом не знаком, но на представленном скрине говнокод какой-то - плохой знак...

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