Ru-Board.club
← Вернуться в раздел «Программы»

» Mark - небольшой удобный редактор

Автор: Harrier
Дата сообщения: 23.03.2006 17:10
vito333

Ну, в общем я всё написал. В прошлый раз ты сказал, что возьмёшь на карандаш.
Просто чтобы текст не набирался в оду длинную строку, а чтобы переносился на другую строку. Хотелось бы ещё выравнивание текста. Т.е. небольшое редактирование, не что-то сложное, а чтобы просто было удобнее.
Автор: vito333
Дата сообщения: 23.03.2006 17:46
Harrier
то есть при отключенном переносе строки текст всё равно должен переноситься?
Автор: Harrier
Дата сообщения: 23.03.2006 17:56
vito333

Сорри, не заметил этой опции. Тогда вопрос снимается.
Единственное, что может добавить выравнивание текста по ширене, иногда полезно.
Автор: vito333
Дата сообщения: 24.03.2006 00:29
ну даёшь - не заметил!

Добавлено:
а в статусбаре вообще правой кнопкой пользуешься?
Автор: Harrier
Дата сообщения: 24.03.2006 07:55
vito333


Цитата:
а в статусбаре вообще правой кнопкой пользуешься?


Как-то не привык. Но может попробую. )
Автор: vito333
Дата сообщения: 24.03.2006 14:07
[+] 24.03.06 обновлённое меню кодировок в статусбаре. Теперь конвертация производится на лету, причём всего текста.
Конвертация из/в Unicode-кодировки пока "хромает".
[!] 23.03.06 возможны некоторые малозаметные отличия в обработке Марком файлов меньше и больше 250 кб.
[!] 23.03.06 изменены некоторые настройки окна редактирования. Теперь нормально отображается, например корейский или китайский язык, и не только, но, возможно, вылезут какие-то старые системные мелкие глюки шрифтов. Тестируем.
(Если что - верну обратно. А наткнулся случайно - Mark "споткнулся" на файлах азиатских языков 7zip-а.)
Автор: ShIvADeSt
Дата сообщения: 27.03.2006 00:00
vito333

Цитата:
[+] 24.03.06 обновлённое меню кодировок в статусбаре. Теперь конвертация производится на лету, причём всего текста.

Кодировки как получаешь? из ветки реестра грузишь или еще как? А то есть идея по упорядочению этого громадного списка, чуть не офигел когда увидел этот попап. Идея след, во многих кодировках есть одинаковая подпоследовательность, например МАС или ОЕМ, вот и сделать пункты под этими именами, а туда уже загнать сами кодировки, а те которые встречаются в ед. варианте просто в основном меню оставить.
Плиз, отредактируй тулбар как я просил, все таки более удобно будет .
Автор: alex99a
Дата сообщения: 27.03.2006 09:35
Автору - респект! Редактор хорош!

Пожелания:
- добавить возможность показа спец. символов типа \t (показывать как »), \n
- настройка величины tab (думаю, хватит интервала от 2 до 8)

Если эти пожелания реализуешь, будет замечательно! Прошу не просто так - работаю с текстовыми базами, в которых разделителями являются символы tab (\t). Редакторы, которые показывают табы, тяжелые и не понимают "влет" кодировку DOS. А твой - отлично всё понимает! Еще бы табы настраивались и показывались! Как, можно это сделать?

О! Еще одно пожелание организовалось: поставить признак "использовать вместо стандартного блокнота", тогда IE, например, будет подключать Mark при просмотре html-кода
Автор: vito333
Дата сообщения: 27.03.2006 10:46
ShIvADeSt

Цитата:
Кодировки как получаешь?

EnumSystemCodePages()

Цитата:
Идея след, во многих кодировках есть одинаковая подпоследовательность, например МАС или ОЕМ, вот и сделать пункты под этими именами, а туда уже загнать сами кодировки, а те которые встречаются в ед. варианте просто в основном меню оставить.

получается
MAC
ISO
ANSI
OEM
Unicode
Others
так пойдёт?

Цитата:
отредактируй тулбар как я просил, все таки более удобно будет

хорошо. Но вообще-то пора и настройку сделать, конечно.


Добавлено:

Цитата:
чуть не офигел когда увидел этот попап



Добавлено:
пойду посмотрю, как у других сделано

Добавлено:
alex99a

Цитата:
"использовать вместо стандартного блокнота",

я фиг знает, как это программно сделать
спецсимволы - позже может быть
tabы - это реально, посмотрю, подумаю
Автор: ShIvADeSt
Дата сообщения: 27.03.2006 11:18
vito333

Цитата:
MAC
ISO
ANSI
OEM
Unicode
Others

Ага так и хотелось бы.

Цитата:
"использовать вместо стандартного блокнота",     
я фиг знает, как это программно сделать

При запуске марка заменять собой notepad.exe в папке виндоус единственный способ ИМХО (или патчить ие, чтобы вместо блокнота марк грузил)

Цитата:
хорошо. Но вообще-то пора и настройку сделать, конечно.

Ну про это я и не заикаюсь, так как понимаю что на все времени нет (ты лучше с препросмотром разберись, если что в ПМ по коду на дельфи пиши, попробуем вместе разобраться)
Автор: vito333
Дата сообщения: 27.03.2006 11:36
эээ, у других не посмотрю, как кодировки подразделяются, после перестановки винды ещё не ставил других редакторов

Цитата:
При запуске марка заменять собой notepad.exe в папке виндоус

а защита системных файлов?

Цитата:
ты лучше с препросмотром разберись

распечатал пачку исходников (в основном дельфи), цедб ещё чего-то, буду смотреть.


Добавлено:
[+] 28.03.06 настройка размера табуляции.
Автор: ALeXkRU
Дата сообщения: 27.03.2006 16:56
vito333

Цитата:
"использовать вместо стандартного блокнота",

вот здесь это (Замена блокнота) проделывали с другим редактором... правда - наполовину вручную не знаю, удастся ли это автоматизировать
Автор: vito333
Дата сообщения: 27.03.2006 23:36
потому наверное там вручную половина работы и делается, что тоже не знают, как автоматизировать полностью
Автор: ALeXkRU
Дата сообщения: 28.03.2006 00:00
по крайней мере, можно позаимствовать идею, исходники лоадера там есть
Автор: piterplus
Дата сообщения: 28.03.2006 00:15
А я с самого начала переименовывал Марка в notepad и кидал его одновременно в корень windows и в system32. После два раза отвечаешь о том, что хочешь оставить нераспознанные копии файлов и все, - Марк прекрасно работает вместо notepada.
Автор: DimanS
Дата сообщения: 28.03.2006 00:37

Привет всем! Прога рулезз....

Но где же самая главная функция???

Нумерация строк,
в опциях не нашел, может плохо смотрел..
Автор: Alexander_B
Дата сообщения: 28.03.2006 00:56
DimanS
в шапке

Цитата:
Плагины
чтобы не засорять шапку
[more]
1) http://shivadest.nm.ru/ShExec.dll добавляет в меню плагины пункт выполнить, при нажатии на который запускается программа, ассоциированная с данным файлом. Например, если редактируете reg файл, то при нажатии появится окно с предложением экспортировать данные в реестр, при bat файле он запустится на выполнение
2) http://shivadest.nm.ru/ShList.dll делает из текста нумерованный список, то есть был текст:
Привет
Пока.
Станет:
1. Привет
2. Пока.
[/more]
Автор: ShIvADeSt
Дата сообщения: 28.03.2006 02:17
vito333
Короче не знаю в чем трабла, но сегодня минут 15 мучался пытался вставить в марк текст ОЕМ 866, постоянно какая то ерунда вставлялась, решил проблему бредом 2. После решил еще раз попробовать опять этот же текст вставить, сразу же распозналась кодировка и все правильно вставилось. Где то что то глючит.
При этом такая проблема всплывала уже раньше. но потом тихонько затаилась, и я думал что все ок, а вот сегодня опять с ней столкнулся.
Автор: DimanS
Дата сообщения: 28.03.2006 02:53

Цитата:
DimanS
в шапке

Цитата:
Плагины
чтобы не засорять шапку
Подробнее...


Я конечно жутко извиняюсь.

Но как сделать чтобы редактор увидел плагин?
Сложил их в одну папку, и так и сяк...что то он его не видит

Автор: ShIvADeSt
Дата сообщения: 28.03.2006 03:14
DimanS

Цитата:
Сложил их в одну папку, и так и сяк...что то он его не видит

Ридмиху читать не пробовал? Надо создать папку Plugins_ (с подчеркиванием) и туда кинуть плагины. Тогда они появятся в меню плагины. На прошлой странице вроде ответ давали.
Автор: DimanS
Дата сообщения: 28.03.2006 03:36

Цитата:
Ридмиху читать не пробовал? Надо создать папку Plugins_ (с подчеркиванием) и туда кинуть плагины. Тогда они появятся в меню плагины. На прошлой странице вроде ответ давали.

ок. пасиб.


Ээээ... господа...

Короче это... плагин здоровский, но я имел ввиду, другое.

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

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

Видимо мегафичи нет.
Но если автор обратит внимание на этот момент и добавит, было бы здорово!

Автор: ShIvADeSt
Дата сообщения: 28.03.2006 03:53
DimanS

Цитата:
Т.е. надо мне 127-ю строку к примеру найти, не считать же их в ручную, или коверкая текст плагином.

Там есть такое - разное перейти, и вводишь строку к которой надо перейти.
А отображение слева номеров строк пока нету.
Автор: vito333
Дата сообщения: 28.03.2006 10:35
ShIvADeSt

Цитата:
сегодня минут 15 мучался пытался вставить в марк текст ОЕМ 866, постоянно какая то ерунда вставлялась, решил проблему бредом 2. После решил еще раз попробовать опять этот же текст вставить, сразу же распозналась кодировка и все правильно вставилось. Где то что то глючит.

возможно это:
----------------------
[!] 23.03.06 изменены некоторые настройки окна редактирования. Теперь
нормально отображается, например корейский или китайский
язык, и не только, но, возможно, вылезут какие-то старые
системные мелкие глюки шрифтов. Тестируем.ъ
---------------------
возможно это. Если бы стабильно повторить ошибку ...
Автор: alex99a
Дата сообщения: 28.03.2006 12:34
Автору - спасибо за настройку табуляций! Тексты программ отображаются с нормальными отступами.
Редактор становится всё лучше и лучше - так держать!
Эх, теперь бы еще символы табуляции визуально отображать - и совсем будет хорошо...
Автор: vito333
Дата сообщения: 28.03.2006 13:04
ShIvADeSt
когда будет глюк, повтори те же действия на файле больше 250 кб, на них всё осталось по старому
Автор: ShIvADeSt
Дата сообщения: 29.03.2006 00:08
vito333

Цитата:
когда будет глюк, повтори те же действия на файле больше 250 кб, на них всё осталось по старому

Глюк только что повторился, при этом не помогает также выделенный текст из ОЕМ
сейчас вставляю 26 метровый кусок, при вставке из буфера марк забрал все ресурсы системы и 120 метров свопа и завис, при простом открытии этого же файла, съел 50 метров оперы и свопа и через полминуты отобразил файл. Короче опять мне не удается заставить марк вставить нормально текст, хотя вчера он после каких то махинаций правда когда уже не надо было вставил текст правильно.
Только что проверил на куске текста в 350 кбайт однофигственно неправильно вставляет. Видать есть случаи, когда не правильно распознает текст. При этом даже выставленная кодировка страницы как ОЕМ 866 не меняет правильности вставляемого текста (у бреда при установке 866 текст вставился сразу правильно) Может быть сделать, что если принудительно установлена кодировка (отличная от АНСИ, то принудительно грузить текст в ней?) Попробую послать тебе текст с которым у меня траблы.
Интересный еще один глюк вылез, у меня на части текстовых файлов не изменяется размер шрифта, то есть я пытаюсь его увеличть уменьшить, а он остается прежним, а на части все норм.
Например вот файлик http://shivadest.nm.ru/temp.txt
в частности создаю новый файл, набираю там текст пытаюсь изменить размер и обломс.
Продолжил дальше эксперименты, открыл другой файл кодировки ОЕМ в марке, открылся правильно, вставился тоже правильно, после этого вставляю тот текст который у меня глючил все вставилось правильно, после этого изменение размера шрифта заработало. Хотя и все же не на всех файлах почему то. Вернее работает только вновь создаваемых файлах, если я файл открываю то почти на всех не работает.
Автор: vito333
Дата сообщения: 29.03.2006 14:09
[!] 29.03.06 откатил назад несколько последних тестовых изменений ( и убрал их из этого списка).

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

может твои глюки со вставками тоже пропадут? надеюсь.
Автор: ShIvADeSt
Дата сообщения: 30.03.2006 00:29
vito333
сейчас вроде все норм, шрифт меняется везде, текст тоже пока что (тьфу тьфу ) распознается правильно, буду надеяться, что теперь все будет гут.

Цитата:
выставляю документированный флаг TM_PLAINTEXT

Старый прикол, помню ты раньше пробовал при помощи этого флага решить проблему с корявыми шрифтами при вставке, тогда тоже куча всяких багов всплыла.
Кстати какую версия рич едита используешь? Вроде 2.0. я просто прочитал насчет 3.0 там встроенная поддержка выравниваний по центру, справа, при этом не нужно ничего в коде править, так как они оба в одной библиотеке лежат, попробуешь может?
Короче опять эта беда приключилась причему в тот момент когда нужно срочно вставить текст. Виктор плиз сделай 3 пункта меню вставить как ОЕМ, АНСИ и Юникод, чтобы марк не сам определял что ему вставлять, а можно было принудительно указать в какой кодировке текст в буфере, ибо напрягает каждый раз бред юзать.
Автор: vito333
Дата сообщения: 30.03.2006 12:26
ShIvADeSt
я не заморачиваюсь насчёт версии
вот загрузка ричедита [more=<код загрузки>]
HMODULE LoadRTFlib (void)
{
    HMODULE hRichLib = 0;

    // load RichEdit library
    hRichLib = LoadLibrary(_T("Msftedit.dll")) ;
    if (hRichLib)
    {
        g_RicheditDLL_type = 0;
        return hRichLib;
    }
    hRichLib = LoadLibrary(_T("RichEd20.dll")) ;
    if (hRichLib)
    {
        g_RicheditDLL_type = 1;
        return hRichLib;
    }
    ERRMSG("Can't load RichEdit lib!");

return 0;
}
[/more]


Добавлено:
а насчёт корявой вставки - сформулируй как для тупых - когда, из какой кодировки в какую, и пр. и пр. и какой результат - мне проще будет разобраться(а то ты пишешь насчёт "Марк определяет" - а он ничего не определяет, просто запрашивает у системы текст буфера в юникоде)
и я займусь этим делом плотно.
Автор: ShIvADeSt
Дата сообщения: 31.03.2006 00:22
vito333

Цитата:
я не заморачиваюсь насчёт версии

Я не про то, версия 4.1 в первой либе, но 2.0 и 3.0 лежат в одной либе
2.0    Riched20.dll    
3.0    Riched20.dll
поэтому посмотри какую версия рича ты юзаешь когда создаешь CreateWindowEx, судя по моим наблюдения (так как у меня подгружается Msftedit.dll) как и у многих с ХР это 4.1, тогда надо использовать все ее возможности, в любом случае, у всех будет юзаться не ниже 3.0, а там ест встроенные функции http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/richedit/richeditcontrols/aboutricheditcontrols.asp тут все написано (если не читал вдруг )
Это оффтопик был немного, теперь по теме
вот http://shivadest.nm.ru/Bad%20Paste.zip текст и пример вставки, текст открываю в тотале в листере. нажимаю S чтобы прочитать нормально, после этого выделяю и вставляю, неважно какая кодовая страница что ОЕМ, что АНСИ, вставляется всегда один и тот же корявый текст, как на картинке, НО экспериментальным путем выяснил, что если не нажимать перед копированием S, то есть копировать корявый текст из листера, а потом выделить его в марке и выбрать Выделенный текст из ОЕМ, то тогда все красиво преобразуется в правильный текст. Хочу заметить, что происходит это не всегда (я имею в виду вставка корявого текста, а примерно 60 на 40, то есть очень часто вставляется кривой текст, но потом может несколько раз вставиться нормально).
Поэтому я предлагаю добавить пункты для вставки Вставить как- ОЕМ, АНСИ, Юникод. Три подпункта в пункте Вставить как. При нажатии на каждый пункт кодовая страница документа переводится в соот кодировку для сохранения и текст переводится в правильный.

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Какой нужен формат?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.