Neon - текстовый редактор.

...
  • попробуй подцепить kf шрифты
    Технологии меняют мир, а я - меняю технологии.
  • pavelyakov wrote:попробуй подцепить kf шрифты
    Я б сделал бы, но пока знаний не хватает. :mrgreen:
    The Glass is Always Half Full! :mrgreen:
  • Пишешь на С? Компилятор какой?
    upd: KTCC, увидел уже :)
    Чем больше сыра, тем больше в нём дыр. Чем больше дыр, тем меньше в нём собственно сыра. Значит, чем больше сыра, тем меньше сыра!
  • Текстовый редактор я пока не осилил полностью. Он работает, но очень хреново.
    Пока времени нет им заниматься. Очень с ним намучился, даже не знаю, буду ли продолжать им заниматься дальше. Но, как будет время выложу.

    Что сделано:
    * Вывод и редактирование текста (пока только Клавой);
    * Поддержка кодировок (UTF-16LE (основная), UTF-8 (не полностью), cp866, cp1251);
    * Подсветка синтаксиса (C, C++, C--, Oberon07, FASM и др.);
    * Открытие текстового файла через командную строку. Как сделать через opendial - пока не знаю.
    The Glass is Always Half Full! :mrgreen:
  • Ммм C--...
    Выкладывай :)
    Как сделать через opendial - пока не знаю.
    Очень просто

    Code: Select all

    RunApp("/sys/lod", "*cpp,txt* /path/to/your/app");
    См. http://board.kolibrios.org/viewtopic.ph ... 86&p=53443
    Из хаоса в космос
  • Leency wrote:
    Как сделать через opendial - пока не знаю.
    Очень просто

    Code: Select all

    RunApp("/sys/lod", "*cpp,txt* /path/to/your/app");
    См. http://board.kolibrios.org/viewtopic.ph ... 86&p=53443
    Спс. :D Попробую прикрутить, как будет свободное время.
    The Glass is Always Half Full! :mrgreen:
  • Neon - Alpha 1 (NON-STABLE!)

    Neon - простой текстовый редактор с подсветкой синтаксиса.

    ВНИМАНИЕ! Программа очень сильно грузит ЦПУ(на больших файлах). Плохо работает с большим текстом. Использовать осторожно!

    Что сделано:
    * dom и двойная буферизация.
    * покадровый вывод текста.
    * открытие, вывод, редактирование (только клавишами) и сохранение текста;
    * подсветка синтаксиса (Bash, Fasm, C, C++, C--, Forth, Java, JavaScript, Oberon07, PHP, Python, Ruby, SQL);
    * открытия файла через командную строку;
    * открытие файла через OpenDialog;
    * кодировка в UTF-16LE, UTF-8 (чтение), CP866, CP1251.
    * оповещение через @notify.
    * поддержка файла .ini.
    * добавлен toolbar.

    Горячие клавиши:
    CTRL + O - открыть файл.
    CTRL + S - сохранить файл.

    CTRL + X - вырезать текст.
    CTRL + C - копировать текст.
    CTRL + V - вставить текст.

    CTRL + A - выделить весь текст.

    SHIFT + ARROW - выделить символ.

    BACKSPACE - удалить символ слева.
    DELETE - удалить символ справа.
    TAB - вставить таб.

    ARROWS (UP, DOWN, LEFT, RIGHT) - перемещение курсора (вверх, вниз, влево, вправо).
    Attachments
    Neon.png
    Neon.png (14.59 KiB)
    Viewed 6895 times
    Downloaded 260 times
    Last edited by JohnXenox on Tue Apr 28, 2020 4:16 pm, edited 1 time in total.
    The Glass is Always Half Full! :mrgreen:
  • Круто. Права у меня при перемещении курсора еще печатаются символы. Хоткеи не работают. Шрифт разрежен на 1 пиксель.
    Из хаоса в космос
  • Leency wrote:Круто. Права у меня при перемещении курсора еще печатаются символы. Хоткеи не работают. Шрифт разрежен на 1 пиксель.
    Поторопился немного. Уже поправил. Перезалил в посте выше. А шрифт раздвинул на пиксель, чтобы с курсором не сливался.

    Исправил баг с функцией движения курсора клавишами стрелками.
    Добавил ввод русских символов.
    Добавил запуск командных строк клавишами:
    CTRL + 1, CTRL + 2, CTRL + 3, CTRL + 4, CTRL + 5.
    The Glass is Always Half Full! :mrgreen:
  • Респект автору за проделанную работу. Подстветка просто супер!

    Теперь о багах и недоработках:
    - не удаляется выделенный через ctrl+a текст, например выделяю все и нажимаю del/bksp но удаляется только последний символ
    - нет скролл бара
    - нет выделения мышью
    - курсор не мигает
    The best way to predict the future is to create it.
  • rgimad wrote:Теперь о багах и недоработках:
    - не удаляется выделенный через ctrl+a текст, например выделяю все и нажимаю del/bksp но удаляется только последний символ
    - нет скролл бара
    - нет выделения мышью
    - курсор не мигает
    Принял.
    The Glass is Always Half Full! :mrgreen:
  • Есть 2 вопроса:
    -Как сохранить файл через opendialog? Способ желательно попроще.
    -Какой функцией можно убить родительское окно?
    The Glass is Always Half Full! :mrgreen:
  • 1. Попроще - никак. Не попроще
    Spoiler:

    Code: Select all

    struct od_filter
     {
     	dword size; //size = len(#ext) + sizeof(dword)
     	char ext[25];
     };
    
    proc_info pr_inf;
    char opendir_path[3072];
    char openfile_path[4096];
    char filename_area[1024];
    
    opendialog o_dialog = {
    	0,
    	#pr_inf, 
    	#communication_area_name, 
    	0, 
    	#opendir_path, 
    	#default_dir, 
    	#open_dialog_path,
    	#draw_window, 
    	0, 
    	#openfile_path, 
    	#filename_area, 
    	#filter2, 
    
    	420, 
    	200, 
    
    	320, 
    	120
    };
    
    ДЛЯ СОХРАНИЯ
    
    struct od_filter
     {
     	dword size; //size = len(#ext) + sizeof(dword)
     	char ext[25];
     };
    
    proc_info pr_inf;
    char opendir_path[3072];
    char openfile_path[4096];
    char filename_area[1024];
    
    opendialog o_dialog = {
    	0,
    	#pr_inf, 
    	#communication_area_name, 
    	0, 
    	#opendir_path, 
    	#default_dir, 
    	#open_dialog_path,
    	#draw_window, 
    	0, 
    	#openfile_path, 
    	#filename_area, 
    	#filter2, 
    
    	420, 
    	200, 
    
    	320, 
    	120
    };
    
    
    2.

    Code: Select all

    inline fastcall int KillProcess( ECX) // ECX = process id from ProcInfo structure
    {
    	$mov eax,18;
    	$mov ebx,18;
    	$int 0x40
    }
    Из хаоса в космос
  • JohnXenox wrote:Есть 2 вопроса:
    -Как сохранить файл через opendialog? Способ желательно попроще.
    Посмотри C Layer, там вроде есть обертка
    to infinity and beyond
  • Who is online

    Users browsing this forum: No registered users and 3 guests