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

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

Автор: Oleg_II
Дата сообщения: 04.04.2006 19:14
Тогда еще вопрос про плагины
Влияют ли они как-то на быстроту и ресурсы?
Автор: vito333
Дата сообщения: 05.04.2006 00:09
пара миллисекунд при запуске, ресурсов практически никаких, ты же сам видишь размер плагинов, да и функционал очень прост, так что проблем никаких.
Автор: ShIvADeSt
Дата сообщения: 05.04.2006 04:00
vito333

Цитата:
а мне кажется можно проще - выделил текст серийника, нажал на пункт плагина - вылез мессаджбокс - типа нажмёшь ОК - через 2(3,4...) сек. серийник вставится. Всё. При этом можно не месаджбокс, а, скажем, диаложек, где заодно тычешь на один из радиобаттонов, выбрав количество эдитбоксов-приёмников, а затем ОК.

Сделал как мне казалось правильнее, а именно перехват оконной процедуры марка (извини vito333, но мессажд боксы не по мне, проще нажать горячку в любом окне и сразу чтобы вставился текст).
Итак новый плагин (версия альфа, но рабочаю на 100% ибо базируется на моей проге).
http://shivadest.nm.ru/ShKeyFill.dll
Принцип работы след. в марке открываем документ с серийником типа
FM9FY-TMF7Q-XXXXX-V9T29-TBBBG
выделяем его (в смысле сам серийник) и нажимаем пункт меню Плагины-) Вставить серийный номер (Paste serial)
после этого переходим в нужное нам приложение, например офис, ставим курсор на первое поле куда нам надо ввести серийний и нажимаем Ctrl+F10 (это горячка для вызова моей процедуры вставки). Главное чтобы в офисе был активным англ язык. иначе вставится аналогичный текст на русском, то есть вместо Q будет Й и так далее (это не фиксится, ибо надо делать тогда еще инжекцию либы чтобы она переключала раскладку. а меня ломает это делать). При этом все поля для серийника заполняются соотв цифрами и буквами.
В дальнейшем добавлю диалог для выбора автоматической эмуляции ТАБа и Ентера (так как большинство серийников таб не требуется, то это на будущее).

Автор: vito333
Дата сообщения: 05.04.2006 09:48
ShIvADeSt
круто. Только пора плагины ридмишками снабжать (либо дополнить sdk функцией с информацией о плагине)
Автор: OdesitVadim
Дата сообщения: 05.04.2006 12:16
ShIvADeSt
В твоем плагине, который "запускает файл"(ShExec.dll) есть неприятная бага - он не всегда запускает файл. Причина была выявлена после изучения исходников. Там есть проверка типа

Код:
if pos('Document',......)<>0 then exit;
Автор: Harrier
Дата сообщения: 05.04.2006 17:18
vito333


Цитата:
[!] 02.04.06 косметические изменения.


А значок Mark менять не собираешься?
Автор: vito333
Дата сообщения: 05.04.2006 17:44
Harrier
да вроде неплохой значек
Автор: sabio
Дата сообщения: 05.04.2006 17:53
Заметил одну небольшую странность (или это фича такая?)
Копирование в буфер по Ctrl+C/Ctrl+Insert осуществляется несколько не так, как копирование через Edit > Copy.
Увидеть разницу можно, если вставлять текст в какой-нть rich-text редактор, например, новое письмо в Outlook
Да, разница видна только если копировать сразу несколько строк.
В первом случае текст вставляется как отдельные параграфы (с большими межстрочными интервалами). Во втором - без форматирования.
Как я понимаю, проблема здесь в том, что работа с хоткеями ведется в самом Richedit? А нельзя ли в таком случае их перехватывать и использовать тот же обработчик, что и в меню?
Автор: Harrier
Дата сообщения: 05.04.2006 18:29
vito333

Там "ручка" не очень смотрится. Если бы сделать значок крсивый... лист бумаги и ручка. Цветной, ровный и аккуратный. Как например, "Adobe Photoshop CS2". )
Автор: vito333
Дата сообщения: 06.04.2006 00:09
на другом форуме человек написал, что открыл Марком 700 мб текстовый файл и редактировал его.
Что же это за файлы такие.

Harrier
сделай, или предложи, посмотрим. То, что было до этого - мне как-то не очень понравилось. Я вообще тяготею к пиктограммному стилю - просто, понятно, наглядно.
sabio
да, ты прав, обработка по разному происходит. Исправлю, как руки дотянутся.
Автор: ShIvADeSt
Дата сообщения: 06.04.2006 01:12
OdesitVadim

Цитата:
В твоем плагине, который "запускает файл"(ShExec.dll) есть неприятная бага - он не всегда запускает файл. Причина была выявлена после изучения исходников. Там есть проверка типа
Код:
if pos('Document',......)<>0 then exit;
Так вот, если открыть документ с рабочего стола или "Мои документы", то такая проверка сразу рубит. Непорядок на ровном месте

Щас пофиксим, чуть подругому сделаю проверку

Цитата:
круто. Только пора плагины ридмишками снабжать (либо дополнить sdk функцией с информацией о плагине)

Чукча плагинописатель, а не ридмиписатель Ну не люблю я ридмихи делать. Тем более, что там в ридми писать, за исключением последнего плагина? Лучше сделай Функцию инфо о плагине и Сетап сделай, чтобы диалоги только в сетапе высвечивались.
А то не дело, если каждый раз когда надо будет ключ вставить будет вылазить окно с поведением (а оно будет, надо только прикрутить).
Плагин ShExec пофиксен, теперь открывает как надо. Качать там же.

Добавлено:
sabio

Цитата:
Заметил одну небольшую странность (или это фича такая?)
Копирование в буфер по Ctrl+C/Ctrl+Insert осуществляется несколько не так, как копирование через Edit > Copy.
Увидеть разницу можно, если вставлять текст в какой-нть rich-text редактор, например, новое письмо в Outlook
Да, разница видна только если копировать сразу несколько строк.

Я давно уже говорил про это vito333, там надо перехватывать сочетания клавиш, а он хочет без этого обойтись, хотя везде где я видел, только путем перехватывания говорят, по другому никак, ибо вставка отрабатывает раньше, чем возращается событие WM_KEYUP, поэтому нужно сбрасывать клавиши уже в кей дауне.
Автор: vito333
Дата сообщения: 06.04.2006 10:46

Цитата:
Лучше сделай Функцию инфо о плагине и Сетап сделай

вопрос как и когда вызывать эти функции. Может на каждый плагин делать подменю в меню "Плагины"?

Добавлено:
да, придётся ловить Ctrl-C и Ctrl-V
Автор: OdesitVadim
Дата сообщения: 06.04.2006 11:57
vito333
По поводу плагинов. Мне кажеться, что нужно сделать в них функцию, которая бы "распределяла" их по меню. Тоесть, что бы можно было бы поместить плагины туда, куда мне хочеться, куда им как раз место.
А по поводу настройки. Может заюзать правую кнопку в меню? Типа если в меню нажать правую кнопку на пункте меню, то вызывается настройка плагина. Ну а там и абают прицепить можно...
Автор: vito333
Дата сообщения: 06.04.2006 12:10

Цитата:
которая бы "распределяла" их по меню

принципиально то возможно, но пока даже не возьмусь за такое.
Автор: alex99a
Дата сообщения: 06.04.2006 14:56
vito333
Как насчет видимости табов? Не умерла идея?
Автор: sabio
Дата сообщения: 06.04.2006 15:03

Цитата:
Может заюзать правую кнопку в меню?

Неинтуитивно. (пока я знаю только одну прогу, где в меню удачно работает правый клик - в Firefox на букмарках - и, кстати, этого правого клика мне очень не хватает в Opera )

Да и зачем изобретать велосипед? Сделайте как в том же Winamp-е, например: в настройках список найденных плагинов и внизу кнопка Configure, активная если выделенный плагин поддерживает какие-то дополнительные настройки.
Ну или же как в Миранде - каждый плагин может "зарегистрировать" произвольное число дополнительных "панелей настройки".
(я - за вариант а-ля Winamp )

Добавлено:
Кстати, насчет иконки. Мне теперешняя тоже вполне нравится. Только ее бы еще в 32х32 прорисовать - чтобы .txt файлы на десктопе не были такими "квадратными".
Автор: Harrier
Дата сообщения: 06.04.2006 17:29
vito333


Цитата:
сделай, или предложи, посмотрим.


Сделал бы, если бы умел. Не занимаюсь такими вещами, как и программированием. Хотя пробовал. Но, не понравилось. Не моё. )
Автор: sabio
Дата сообщения: 06.04.2006 17:41
vito333
А как насчет сделать в Mark (опциональную) поддержку wiki syntax?
*bold*
/italics/
_underline_
[link]

Т.е. сами эти маркеры не надо убирать. И файл пусть остается plain text. Но если открывать его в Mark, то чтобы тот учитывал и показывал это форматирование. Мне кажется, было бы здорово.
Как вариант, эту настройку можно сделать per file и хранить ее в отдельном NTFS потоке вместе с кодировкой.

Еще одна интересная и важная фича - локальные ссылки.
Типа, если я напишу в тексте "[item 2]", то Mark распознает это как ссылку на файл "item 2.txt" в той же папке, что и текущий файл. И по клику на этой ссылке откроет его.
Для работы с папками пути должны быть типа "[folder\item 3]".
Причем, желательно, чтобы переход можно было осуществлять не только кликом, а еще и хоткеем (Ctrl+Enter?).
При этом файл стоит открывать в том же самом окне (автоматически сохраняя содержимое замещаемого файла), и иметь возможность по хоткею вернуться обратно к исходному файлу.
Конечно, это все должно работать только в txt-файлах, а, например, в ini секции должны оставаться обычными секциями.

Все это позволило бы организовать эдакую "сеть" текстовых файлов с гиперссылками друг на друга и использовать Mark для комфортной работы с этой сетью.

Пример реализации такой фичи можно посмотреть в WikidPad.
Я бы им и пользовался, но он не идет ни в какое сравнение с "энергопотреблением" Mark-а (написан на Python)
Еще один вариант реализации мне попадался как-то очень давно в крохотной проге, написанной на ассемблере - AsmMindWeb (7168 байт). Что дает основания полагать, что реализовать поддержку такой возможности будет довольно просто.
Автор: vito333
Дата сообщения: 06.04.2006 22:37
alex99a
быстро не обещаю. Это что-то сродни подсветке синтаксиса, только проще, но сейчас есть несколько более насущных задач.


Добавлено:
sabio
согласен, настраивать плагины лучше в панели настроек, которой пока нету, но которую я давно хочу и собираюсь сделать.

Добавлено:
настройки, настройки. После предпросмотра, видимо, надо всё таки уже делать диалог настроек, никуда не денешься. И настройки в ИНИ-файле.
Всё остальное пока обсудим и выберем, как лучше сделать.

Добавлено:
Harrier
мне тоже программирование в целом не очень нравится, очень минусов всяких много. Но Марк, да на winapi - это как гимнастика для ума
Автор: zep
Дата сообщения: 06.04.2006 23:10
vito333
А к идее о вертикальном выделении возвращаться не собираешься? Смотрю плотно Марком занялся - с работы уволили? (шутка!)
Автор: vito333
Дата сообщения: 06.04.2006 23:14
sabio
очень много нюансов возникает, делать всё это в такой сырой программе ещё рано, нет условий для этого.
Для нотпада марк ещё туда сюда, но для крутых наворотов - пока не годится.

а asmmindweb если есть - скинь посмотреть.

Добавлено:
zep
на форуме трындеть - не кодить, времени намного меньше надо
о верт. блоках пока забыл
Автор: Harrier
Дата сообщения: 07.04.2006 10:20

Цитата:
мне тоже программирование в целом не очень нравится, очень минусов всяких много. Но Марк, да на winapi - это как гимнастика для ума


Это хорошо!
Я пробовал программировать на C/C++... Не в обиду программерам, но...
Автор: sabio
Дата сообщения: 07.04.2006 12:14
vito333
AsmMindWeb
Правда, там только фишка с "локальными линками" сделана, без wiki syntax.
Но последний, мне кажется, будет весьма удачным дополнением.
Автор: vito333
Дата сообщения: 09.04.2006 05:39
[x] 09.04.06 Ctrl-C/Ctrl-X копировали в буфер форматированный текст.
[!] 09.04.06 снова отключена возможность автопереключения редактором шрифта. Эта особенность ричедита многими воспринимается как баг.
Теперь иероглифы не будут показываться.


Добавлено:
[+] 09.04.06 выбор нескольких файлов для загрузки в диалоге "Открыть".
Автор: ShIvADeSt
Дата сообщения: 10.04.2006 01:22
vito333
Ссылка на марк дохлая, фиг скачаешь его.
Автор: sabio
Дата сообщения: 10.04.2006 08:32
vito333
Кстати, если все-таки соберешься когда-нть сделать поддержку "локальных ссылок", то хорошо бы учесть еще и эти моменты:
- Mark должен автоматически заменять в имени файла недопустимые символы (в смысле введенный текст должен оставаться без изменений: "task: ABC", а вот имя соотв. файла должно быть откорректировано: "task_ ABC").
- Очевидно, что переход по ссылке на несуществующий файл должен создавать новый вместе с необходимыми директориями. Но было бы также здорово, если бы файл автоматически удалялся, если из него удалили все содержимое. То же самое касается директорий: удалили из папки последний файл - грохнули и саму папку.
- Хорошо бы ссылки на существующие и несуществующие файлы отображались разными цветами.
- Было бы здорово, если бы где-нть (в заголовке?) отображалось несколько последних имен из цепочки истории открытых файлов (т.н. breadcrumbs).
- Также было бы удобно, если бы Mark реализовывал autocompletion для таких ссылок (на основании уже существующих на диске файлов и каталогов).
Автор: kraeved
Дата сообщения: 10.04.2006 09:47
http://vito.rbcmail.ru/*
всё утро ошибка 403

vito333,
рассматривался ли вариант размещения проекта на sourceforge.net?
всё-таки и баг/фича-трекеры, а главное — зеркалирование
Автор: vito333
Дата сообщения: 10.04.2006 11:02
да, чего-то с hotbox опять, я тоже ни скачать не могу, ни посмотреть ftp, ни перезалить чего.

kraeved
никакие соурсфорджи не рассматриваются
да и не интересны подобные извращения никому


sabio
а вообще, насколько необходима подобная система?
Автор: ArtLonger
Дата сообщения: 10.04.2006 11:42
vito333
Дрянь стал сервис. После того, как в один прекрасный день ни одно отправленное с хотбокса письмо никуда не дошло, я переполз на народ.ру - и пока не жалею.
Автор: OdesitVadim
Дата сообщения: 10.04.2006 12:08
Решил влиться в ряди плагинописателей. Плагин на выходных наваял. Пока выложил на http://rapidshare.de/files/17633519/VCalc.zip.html , но если плагин понравиться то будем ставить на отдельный хост.
Плагин называется VCalc
Для чего:
Данный плагин предназначен для вычисления арифметических выражений в редакторе Mark.
Как использовать:
Выделяете в марке арифметическое выражение и выбираете пункт меню Разное -> Плагины -> Вычислить...
Если арифменическое выражение корректно, то вы увидите его значение, в противном случае будет выведено сообщение об ошибке. В любом случае, окошко, которе появиться разрешает скопировать результат в буфер обмена (кнопка "копировать" или "Enter") или просто закрыть (кнопка "Ок" или "Esc")
Возможности:
Суммирование, вычитание, умножение и деление - класически.
Скобки и "правильно вычисление" с соблюдением старшинства операций.
Вложенность скобок ограничевается размером стека и здравым смыслом .
Игнорирование лишних пробелов, табов и переводов строк.
Порядок чисел ограничевается стандартным Extended (3.6E–4951 .. 1.1E4932, 19–20 значущих цифр).
Разделитель целой и дробной части может быть как точка, так и запятая. Можно даже смешивать в произвольном порядке в одном выражении. Развелитель в результате на данный момент - точка.
Надо - исправим.
Большой список функций (пока не очень). Регистр - не важен. всё равно когда парсю,
привожу к верхнему. Поэтому можно хоть лесенкой
ABS модуль
SQR квадрат
SQRT корень квадратный
SIN синус
COS косинус
TAN тангенс
ASIN арксинус
ACOS арккосинус
ATAN арктангенс
LN логарифм натуральный
EXP експонента (е в степени)
LG логарифм десятичный
в тригонометрических функций аргументы в радианах!
Две стандартные константы:
PI -число пи (PI=3.14159265358979)
E - основание натурального логарифма (e=2.71828182845905)

Вопросы:
Надо ли делать русские название функций (типа син, кос, а мож и полные названия?)
Делать дублирующие названия (asin и arcsin будут означать одно и тоже)?

Принимается Ваши предложения и критика. Но только конструктивная.
p.s. vito333 если сделаеш какой-либо способ с плагина дать команду марку открыть файл (можно например с помощью посылки сообщений) и "открыть в этом окне" а также возможность вешать плагины на определённый горячие кнопки, то думаю, что и wiki синтаксис разберём

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

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


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