Page 1 of 4
RUN(rewritten in UASM and improved)
Posted: Thu Aug 31, 2017 2:52 pm
by 0CodErr
More complex
UASM +
KolibriOS.lib example.
This rewritten app a bit more handy then original
http://board.kolibrios.org/viewtopic.php?f=9&t=2122
At now you can insert path from
OpenDialog into
EditBox more than one times.
For example:
let you want to open
/sys/settings/system.ini in
/sys/develop/t_edit
- press Insert key (or button "...")
select /sys/develop/t_edit
press Space key
press Ctrl + Insert key (or button "...")
select /sys/settings/system.ini
now in EditBox: /sys/develop/t_edit /sys/settings/system.ini
press Enter (or button "run")
Spoiler:
-
Run.gif (59.32 KiB)
Viewed 12689 times
The app has the following keyboard shortcuts:
- Insert — just set path from OpenDialog to EditBox text(like in original version)
- Ctrl + Insert — insert path from OpenDialog into EditBox at the current cursor position
- Shift + Insert — always insert without quotes (cause some(actually many) programs do not understand quotation marks)
- Ctrl + Shift + Insert — always insert without quotes path from OpenDialog into EditBox at the current cursor position
UASM can be downloaded here
http://www.terraspace.co.uk/uasm.html
KolibriOS.lib can be found in
Delphi7 examples topic
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 8:54 pm
by 0CodErr
Since revision #6953 this application uses in nightly builds.
But i don't know how to say to users about available hotkeys.
Maybe someone has a suggestions?
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 9:13 pm
by Leency
Есть идея! Внизу под текстовым полем пустая область, куда можно написать: "Press F1 to get info about hotkeys" (или как-то так, англ у меня интермидиет не флюент).
При нажатии F1 вывести справку через @notify
http://prntscr.com/ghwwv3
Кстати, у тебя в раннере не работает кописапст, в прошлом работало (хоть и криво - все затирало).
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 9:23 pm
by 0CodErr
в прошлом работало (хоть и криво - все затирало).
А это не ко мне вопрос, а к тому, кто добавил такую возможность в EditBox. Моя программа сама copy\paste не делает и никогда не делала.
Внизу под текстовым полем пустая область,
Но ведь туда выводится результат запуска программы.
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 9:27 pm
by Leency
Когда ты только открыл там пусто. Добавь сообщение, юзер увидит. Он что даун чтобы не понять что делать. С момента открытия программы до запуска первой программы есть время.
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 9:37 pm
by 0CodErr
Leency wrote:Когда ты только открыл там пусто.
Логично, в принципе.
Ну ОК, добавлю тогда туда.
Вопрос теперь в том, как бы лучше вывести инфо о hotkey-ях, чтобы покороче, но при этом было понятно. Или оставить как в первом сообщении?
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 10:09 pm
by Leency
Не понимаю различия всех этих хоткеев и не знаю кто будет это использовать.
Эта куча горячих клавиш напоминает мне Машину Голдберга (
https://ru.wikipedia.org/wiki/%D0%9C%D0 ... 0%B3%D0%B0) больше чем реально полезный инструмент.
Re: RUN(rewritten in UASM and improved)
Posted: Wed Sep 06, 2017 10:17 pm
by 0CodErr
Leency wrote:Понятия не имею
А это потому что ты сам не пользуешься KolibriOS.
Я примеры приводил уже. Чтобы не писать вручную путь, передаваемый в качестве параметра.
В KolibriOS почти все программы не понимают кавычки. Они должны делать UnQuote для параметров. Поэтому я добавил ещё и "Shift + Insert — always insert without quotes".
Так как я пользуюсь этим очень часто, то мне естественно лень писать постоянно параметры-пути вручную.
А я неоднократно говорил уже, что даже сами разработчики не используют KolibriOS.
Вообще, меня очень удивило, как можно не понять для чего это
Re: RUN(rewritten in UASM and improved)
Posted: Thu Sep 07, 2017 1:17 am
by 0CodErr
Leency wrote:не работает кописапст, в прошлом работало (хоть и криво - все затирало).
0CodErr wrote:А это не ко мне вопрос, а к тому, кто добавил такую возможность в EditBox. Моя программа сама copy\paste не делает и никогда не делала.
А тут вообще интересная ситуация. Всё же
copy\paste работает, но после вставки
RUN начинает вести себя так, как будто зажат
Ctrl. C чего бы?
То что, товарищ, добавивший
copy\paste, сделал это криво, сомнений не вызывает.
А вот насчёт
Ctrl, непонятно, где проблема?
Leency, вот код, который работает криво
http://websvn.kolibrios.org/filedetails ... m#line-362
http://websvn.kolibrios.org/filedetails ... m#line-395
Это работает в любом
EditBox-е. Ты этого не замечал, так как ты не пользуешься этой
OS.
Re: RUN(rewritten in UASM and improved)
Posted: Thu Sep 07, 2017 3:04 am
by Leency
Да замечал я это, если ты думаешь, что реально написать 100500 программ для Колибри и не заметить, то нет.
Ошибся, у тебя тоже работает копипаст. Вопрос снят.
Re: RUN(rewritten in UASM and improved)
Posted: Sat Sep 09, 2017 9:38 pm
by 0CodErr
Leency wrote:Внизу под текстовым полем пустая область, куда можно написать: "Press F1 to get info about hotkeys"
Leency wrote:Когда ты только открыл там пусто.
А может просто рядом с "Type name of program" добавить " or press F1 to show help"?
Как покороче написать сами подсказки, чтобы при этом понятно было?
Re: RUN(rewritten in UASM and improved)
Posted: Sun Sep 10, 2017 12:16 am
by Leency
Лучше внизу)
Re: RUN(rewritten in UASM and improved)
Posted: Tue Sep 12, 2017 4:33 pm
by 0CodErr
Заметил, что если ввести в поле ввода слеш "/", то после нажатия "Run" пишет "Program run successfully", при этом в Process Manager никаких новых процессов не появляется.
Если же ввести в поле ввода два слеша "//", или три слеша "///", или точку со слешем "./", или вообще ничего не вводить, то всё как положено "File not found".
Re: RUN(rewritten in UASM and improved)
Posted: Mon Sep 18, 2017 10:43 pm
by 0CodErr
Можно ли как-то проще детектировать нажатие
Insert, чем сейчас?
Вот это место в коде программы
RUNCode: Select all
.If Key.Scan == KEY_SCAN_ENTER
Invoke OnButtonRun
; need check Code cause numpad0.Scan = Insert.Scan
.ElseIf (Key.Scan == KEY_SCAN_INSERT) && \
(Key.Code != KEY_CODE_0)
Invoke OnButtonBrowse
.Else
Invoke EditBoxKey, Offset Edit1
.EndIf
Дело в том, что нужно обрабатывать не только
Insert, но и
Ctrl+
Insert, который даёт другой
Key.Code.
Поэтому проверять
Key.Code вместо
Key.Scan — шило на мыло получается.
Re: RUN(rewritten in UASM and improved)
Posted: Sat Sep 23, 2017 9:58 pm
by 0CodErr
Сейчас программа имеет две версии: русскую и английскую.
Раньше программа была переведена также и на итальянский.
Товарищ
fedesco, который переводил на итальянский, забыл перевести одну строку.
Я её перевёл онлайн-переводчиком.
Также добавил испанский перевод тоже с помощью онлайн-переводчика.
Думаю, что кто-нибудь переведёт более правильно.
Кажется, что было бы удобно, если для разных языков это будет собираться на
SVN.
Для того, чтобы определять тот или иной язык сборки, надо как-то объявить определённое имя.
В
UASM есть такой ключ:
В
tup-файлах какие-то проблемы, чтобы сделать
define, например, судя по
http://websvn.kolibrios.org/filedetails ... upfile.lua
Хорошо, тогда, можно делать так
и подключать этот файл с помощью ключа
Code: Select all
-Fi<file_name> Force <file_name> to be included
Для других языков:
Code: Select all
echo lang_it = 1 > lang.inc
echo lang_ru = 1 > lang.inc
echo lang_sp = 1 > lang.inc
Сейчас у меня для каждого языка свой
make_[??].bat
А в
RUN.asm так:
Code: Select all
IfDef lang_it
...
ElseIfDef lang_sp
...
ElseIfDef lang_ru
...
ElseIfDef lang_en
...
Else
.Err Language
EndIf
Можно будет залить на
SVN исходный код как только появится возможность собрать программу на сервере.