On-line: Haz, Мирослав, гостей 0. Всего: 2 [подробнее..]
АвторСообщение
alkresin
moderator


Пост N: 1174
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 04.04.19 14:37. Заголовок: Hbedit - текстовый редактор


Довел, наконец, свой текстовый редактор до того состояния, когда можно показать его общественности. Я начал писать его сначала как замену Memoedit(), но потом увлекся) и решил сделать что-то помощнее, как нормальный редактор для повседневного использования. Мне приходится в течение дня работать и под виндами, и под Линуксом - использую Far и mc, соответственно. Иногда Vim - но к некоторым вещам в нем так и не привык. Но хочется иметь что-то одно для всех платформ - не слишком навороченный, но чтоб было все что надо.
Сегодня выложил на github: https://github.com/alkresin/hbedit.
F9 (или мышкой по соответствующей надписи) - главное меню.
В ближайших планах:
- Lower/Upper для utf8
- новые режимы подсветки ( директивы препроцессора и пр. )
- скобки - подсветка парных и переход на парные
- undo
- решить проблемы с табуляцие
- сохранение истории открытых файлов, поиска
- написать help (hbedit.help)

Если есть идеи для реализации - буду рад услышать.

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


SergKis
постоянный участник




Пост N: 2454
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.04.19 11:56. Заголовок: SergKis пишет В прим..


SergKis пишет
 цитата:
В примере ini выше секции заполняю руками


Секции [Window], [Browse] заполняются программой - это координаты куда разместили окно и browse под него, т.к. проектов много, то и окна работы с проектом и окна об ошибках можно располагать удобно

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1216
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 23.04.19 12:40. Заголовок: SergKis пишет: запо..


SergKis пишет:

 цитата:
заполнение руками строк в файле проекта руками через запрос Get-ами или в ini.


Ничего не понял). Т.е., вообще ничего - и, в частности, что за пункты все-таки.
В любом случае, делать специальный файл проекта нового формата я не предполагаю. У нас есть .hbp и он прекрасно справляется со своими задачами. Он содержит, в частности, список файлов проекта - а это именно то, что нужно редактору: можно и общий список функций составить, и глобальный поиск по проекту сделать. Если для файлов нужны алиасы (пояснения), то их можно поместить в .hbp как комментарии - над строкой с именем файла. Чтобы не спутать их с другими комментариями, можно, например, маркировать их как ##. Библиотеки, объектники, опции сборки - это все редактору не нужно - он просто запустит hbmk2 и тот сделает свою работу.

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2455
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 23.04.19 15:03. Заголовок: alkresin пишет Ничег..


alkresin пишет
 цитата:
Ничего не понял). Т.е., вообще ничего - и, в частности, что за пункты все-таки.


Расшифровка пунктов ini проекта Скрытый текст


Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1217
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 24.04.19 09:28. Заголовок: Обновлен hbedit. Доб..


Обновлен hbedit.
Добавлены пара плагинов для Golang (запуск на выполнение и форматирование).
В ini, секция [LANG_...], теперь можно указывать спец.плагин для этого типа файлов - он будет запускаться при открытии файлов этого типа и играет для него ту же роль, что и стартовый плагин в [START].
В ini добавден [LANG_HBP]
Кое-что подправлено с подсветкой.

Спасибо: 0 
Профиль
Vlad04
постоянный участник


Пост N: 826
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 24.04.19 11:21. Заголовок: Как сделать: 1) Чтоб..


Как сделать:
1) Чтобы при открытии , окно было распахнуто

2) По умолчанию стоял какой-то ранее выбранный синтаксис, к примеру, prg

Кодовая страница вроде ставится

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2456
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.04.19 11:52. Заголовок: alkresin Для удален..


alkresin
Для удаления выделенного текста, еще используется Ctrl+X, этого нет в hbedit

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2457
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.04.19 12:08. Заголовок: PS 1. Open file окно..


PS
1. Open file окно, при пустом поле и нажатии enter открывать окно списка файлов
2. На окнах поиск, поиск-замена, переход на запись, сохранять последние данные в Selected режиме.
3. На, вышеуказанных, окнах добавить F<n> клавишу для вызова истории набранных данных ранее, не только кликая мышой

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1218
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 24.04.19 13:08. Заголовок: Vlad04 пишет: 1) Чт..


Vlad04 пишет:

 цитата:
1) Чтобы при открытии , окно было распахнуто


В смысле, на весь экран? Могу добавить в hbedit.ini такую опцию, если надо.

 цитата:
2) По умолчанию стоял какой-то ранее выбранный синтаксис, к примеру, prg


Так при открытии файла .prg автоматом устанавливается соответствующий синтаксис...

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1219
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 24.04.19 13:15. Заголовок: SergKis пишет: Для ..


SergKis пишет:

 цитата:
Для удаления выделенного текста, еще используется Ctrl+X, этого нет в hbedit


Ok.

 цитата:
1. Open file окно, при пустом поле и нажатии enter открывать окно списка файлов
3. На, вышеуказанных, окнах добавить F<n> клавишу для вызова истории набранных данных ранее, не только кликая мышой



Открыть список файлов или историю можно и без мышки двумя способами:
1) перейти на соседнюю кнопку (стрелка вниз или Tab) и нажать пробел
2) нажать Ctrl + стрелка вниз.


 цитата:
2. На окнах поиск, поиск-замена, переход на запись, сохранять последние данные в Selected режиме.


В смысле, выделять найденную строку? В поиск/замена она выделяется. А при переходе по номеру строки что выделять?

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2458
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.04.19 13:33. Заголовок: alkresin пишет В смы..


alkresin пишет
 цитата:
В смысле, выделять найденную строку? В поиск/замена она выделяется. А при переходе по номеру строки что выделять?


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

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2459
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.04.19 13:36. Заголовок: PS как Far делает..


PS
как Far делает

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1220
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 24.04.19 15:37. Заголовок: Теперь понятно, буду..


Теперь понятно, буду иметь ввиду.

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1221
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 25.04.19 08:53. Заголовок: Обновлен hbedit. Доб..


Обновлен hbedit.
Добавлен новый плагин для hbp - предварительная версия. Он прописан в ini в секции [LANG_HBP], поэтому запускается автоматически при открытии .hbp файла. Он подменяет панель статуса на простенькое меню, в котором пока две опции: список файлов проекта (можно выбрать любой для редактирования) и сборка проекта - в дальнейшем после сборки планируется открыть дпполнительное окно со списком ошибок.
Добавлен Ctrl-X для cut selected.
В секцию [START] ini-файла добавлена опция maximize: если On, то редактор при старте раскрывается на весь экран.

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2460
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.19 11:20. Заголовок: alkresin пишет Добав..


alkresin пишет
 цитата:
Добавлен новый плагин для hbp - предварительная версия


Может этот плагин учесть кодировку части (всех) prg в utf8, а сборка не уникодная в указанной CodePage ?
Или его переписывать надо, под себя ?

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2461
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.19 11:27. Заголовок: PS В секции можно о..


PS
В секции [START] можно определить загружаемый файл и если это hbp, возможность сразу выдать список по Ctr+F ?

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2462
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.19 11:31. Заголовок: PPS Возможно ли, доб..


PPS
Возможно ли, добавить в hbp, через спец. коментарий, добавляемые другие файлы в список Ctrl+F ?
Это ini, cfg, текстовые шаблоны, ..., относящиеся к работе с проектом.

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2463
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.19 11:39. Заголовок: PPS Возможность имет..


PPS
Возможность иметь в hbp добавить спец. коментарий, как SEPARATOR, для визуального разделения в меню файлов по Ctrl+F

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2464
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.19 12:53. Заголовок: SergKis пишет В секц..


SergKis пишет
 цитата:
В секции [START] можно определить загружаемый файл и если это hbp, возможность сразу выдать список по Ctr+F ?


В реальности загружать файл hbp не надо, надо только список, желательно, с комментарием, добавленным к prg и датой последней модификации.
Попробовал у себя создать схему своей работы
- файлы в utf8
- сборка не уникодная
- список файлов проекта
выходит, если делаю ext=.hbp.hbi , т.е hbi - файл проекта для меню, hbp для сборки в др. месте (подкаталоги)
cmd делаю с перемещением utf8 prg -> Codepage, т.е. программа делает перекодировку, если prg utf8 или перезапись если нет и только потом работа hbmr2 или другого вызываемого cmd
Т.е. хочу сказать, желательно иметь (что бы не писать свои исполнители для перекодировки) в hbedit ключи "тихого" пакетного исполнения для перезаписи с кодировкой

Спасибо: 0 
Профиль
alkresin
moderator


Пост N: 1222
Зарегистрирован: 06.07.06
ссылка на сообщение  Отправлено: 25.04.19 16:40. Заголовок: SergKis пишет: Може..


SergKis пишет:

 цитата:
Может этот плагин учесть кодировку части (всех) prg в utf8, а сборка не уникодная в указанной CodePage ?


Честно говоря, даже думать на эту тему не хочется). Если надо, добавьте это туда для себя.

 цитата:
В секции [START] можно определить загружаемый файл и если это hbp, возможность сразу выдать список по Ctr+F ?


Файл - да, можно. Учитывая, что ini может быть из текущего каталога, в этом есть определенная логика. Можно и список файлов там (в ini) указать.
Но вот выводить автоматом список файлов при старте мне не нравится. Может, я просто отредактировать этот hbp хочу, или мне надо начать с поиска...

 цитата:
Возможно ли, добавить в hbp, через спец. коментарий, добавляемые другие файлы в список Ctrl+F ?
... Возможность иметь в hbp добавить спец. коментарий, как SEPARATOR


Думаю, да.

 цитата:
В реальности загружать файл hbp не надо, надо только список


В реальности hbedit - это текстовый редактор и он должен уметь отредактировать hbp.

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 2465
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.04.19 18:00. Заголовок: alkresin пишет Но во..


alkresin пишет
 цитата:
Но вот выводить автоматом список файлов при старте мне не нравится. Может, я просто отредактировать этот hbp хочу, или мне надо начать с поиска...


Возможно в [START] это, действительно, не очень нужно (хотя запуск без параметров со стартовым списком файлов удобен), а вот в параметрах запуска - вполне. В Far на F2 меню несколько пунктов с разными файлами (меню) проектов создать для запуска нужного в работе, то же удобно.

 цитата:
В реальности hbedit - это текстовый редактор и он должен уметь отредактировать hbp.


Но у него хорошие возможности быть больше чем редактором (редакторов достаточно).
На своей схеме работы показал, что файл hbp и реальный файл проекта (по списку файлов) это разные вещи.
Т.е. для меню использовал копию hbp -> hbi
Врляд ли стоит забивать мусором реальный hbp, (У Андрея, в простом примере только 20 строк файлов).
У меня средний проект (модуль) содержит 3.5 экрана browse x 27 строк на экране и это только prg.
Таких модулей в задаче 10, причем используют либу, создаваемую главным модулем.
Модуль - это список типа hbp.

 цитата:
Честно говоря, даже думать на эту тему не хочется). Если надо, добавьте это туда для себя.


В hbedit уже все есть для перекодировки, нет только параметров запуска. Вариант простой
- на входе utf8 -> перекодируем в Codepage указанный, имена файлов на входе, выходе
- на входе CodePage -> перекодируем в Utf8, т.е. перекодировки CodPage1 -> CodePage2 через Utf8
- можно добавить параметр -dt , по которому переписывать с кодировкой, если время, дата файлов не равны,
после перезаписи устанавливать время,дату выходного равную входному
С такими командами в cmd можно городить любые сборки, для языковых программ.

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 507
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет