mirror of
https://github.com/Zeal-Operating-System/ZealOS.git
synced 2024-12-25 23:10:32 +00:00
255 lines
4.6 KiB
HolyC
Executable file
255 lines
4.6 KiB
HolyC
Executable file
//Place this file in /Home and change
|
||
//anything you want.
|
||
|
||
U0 TimeIns()
|
||
{
|
||
CDate cdt;
|
||
cdt = Now;
|
||
"$$IV,1$$----%D %T----$$IV,0$$\n", cdt, cdt;
|
||
}
|
||
|
||
Bool MyPutKey(I64 ch, I64 sc)
|
||
{//ch=ASCII; sc=scan_code
|
||
|
||
//See $LK,"Char",A="HI:Char"$ for definition of scan codes.
|
||
//See $LK,"Key Allocations",A="FI:::/Doc/KeyAlloc.DD"$ .
|
||
//See $LK,"Keyboard Devices",A="HI:Keyboard Devices/System"$.
|
||
|
||
//You can customize keys. This routine
|
||
//is called before the main editor
|
||
//key handler $LK,"DocPutKey",A="MN:DocPutKey"$().
|
||
//You can intercept any key.
|
||
|
||
//Return TRUE if you completely
|
||
//handled the key.
|
||
I64 i;
|
||
U8 *st1, *st2;
|
||
|
||
if (sc & SCF_ALT && !(sc & SCF_CTRL))
|
||
{
|
||
switch (ch)
|
||
{
|
||
case 0:
|
||
switch (sc.u8[0])
|
||
{
|
||
case SC_F1:
|
||
if (sc & SCF_SHIFT)
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /LTPURPLE");
|
||
else
|
||
"$$LTPURPLE$$";
|
||
}
|
||
else
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /PURPLE");
|
||
else
|
||
"$$PURPLE$$";
|
||
}
|
||
return TRUE;
|
||
|
||
case SC_F2:
|
||
if (sc & SCF_SHIFT)
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /LTRED");
|
||
else
|
||
"$$LTRED$$";
|
||
}
|
||
else
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /RED");
|
||
else
|
||
"$$RED$$";
|
||
}
|
||
return TRUE;
|
||
|
||
case SC_F3:
|
||
if (sc & SCF_SHIFT)
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /LTGREEN");
|
||
else
|
||
"$$LTGREEN$$";
|
||
}
|
||
else
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /GREEN");
|
||
else
|
||
"$$GREEN$$";
|
||
}
|
||
return TRUE;
|
||
|
||
case SC_F4:
|
||
if (sc & SCF_SHIFT)
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /Default Color");
|
||
else
|
||
"$$FG$$";
|
||
}
|
||
else
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /BLUE");
|
||
else
|
||
"$$BLUE$$";
|
||
}
|
||
return TRUE;
|
||
|
||
case SC_F7:
|
||
if (!(sc & SCF_SHIFT))
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /TimeIns");
|
||
else
|
||
TimeIns;
|
||
}
|
||
return TRUE;
|
||
|
||
case SC_DELETE:
|
||
if (sc & SCF_SHIFT)
|
||
{
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /Soft Reboot");
|
||
else
|
||
BootRAM;
|
||
}
|
||
return TRUE;
|
||
}
|
||
break;
|
||
case 'a':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /AutoComplete On");
|
||
else
|
||
AutoComplete(ON);
|
||
return TRUE;
|
||
|
||
case 'A':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /AutoComplete Off");
|
||
else
|
||
AutoComplete;
|
||
return TRUE;
|
||
|
||
case 'g':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /WinTileGrid");
|
||
else
|
||
WinTileGrid;
|
||
return TRUE;
|
||
|
||
case 'h':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /WinTileHorz");
|
||
else
|
||
WinTileHorz;
|
||
return TRUE;
|
||
|
||
case 'm':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /WinMax");
|
||
else
|
||
{
|
||
WinBorder;
|
||
WinMax;
|
||
}
|
||
return TRUE;
|
||
|
||
case 'v':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Cmd /WinTileVert");
|
||
else
|
||
WinTileVert;
|
||
return TRUE;
|
||
|
||
case 'l':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Edit/Put Link to Cur Pos on Clip");
|
||
else
|
||
{
|
||
ClipDel;
|
||
st1 = FileNameAbs(BIBLE_FILENAME);
|
||
st2 = FileNameAbs(DocPut->filename.name);
|
||
if (!StrCompare(st1, st2))
|
||
{
|
||
Free(st1);
|
||
st1 = BibleLine2Verse(DocPut->cur_entry->y + 1, ',');
|
||
DocPrint(sys_clip_doc, "$$LK,\"BF:%s\"$$", st1);
|
||
}
|
||
else
|
||
DocPrint(sys_clip_doc, "$$LK,\"FL:%s,%d\"$$", st2, DocPut->cur_entry->y + 1);
|
||
Free(st1);
|
||
Free(st2);
|
||
}
|
||
return TRUE;
|
||
|
||
case 'L':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Edit/Place Anchor, Put Link to Clip");
|
||
else
|
||
{
|
||
i = RandU32;
|
||
ClipDel;
|
||
DocPrint(sys_clip_doc, "$$LK,\"<TODO>\",A=\"FA:%s,ANC%d\"$$", DocPut->filename.name, i);
|
||
"$$AN,\"<TODO>\",A=\"ANC%d\"$$", i;
|
||
}
|
||
return TRUE;
|
||
|
||
//Ins your own ALT-key plug-ins
|
||
|
||
case '1':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /<2F>");
|
||
else
|
||
'<EFBFBD>';
|
||
return TRUE;
|
||
|
||
case '2':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /<2F>");
|
||
else
|
||
'<EFBFBD>';
|
||
return TRUE;
|
||
|
||
case '3':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /<2F>");
|
||
else
|
||
'<EFBFBD>';
|
||
return TRUE;
|
||
|
||
case '4':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /<2F>");
|
||
else
|
||
'<EFBFBD>';
|
||
return TRUE;
|
||
|
||
case '9':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /Indent 5");
|
||
else
|
||
"$$ID,5$$";
|
||
return TRUE;
|
||
|
||
case '0':
|
||
if (sc & SCF_KEY_DESC)
|
||
KeyDescSet("Dol /Unindent 5");
|
||
else
|
||
"$$ID,-5$$";
|
||
return TRUE;
|
||
}
|
||
}
|
||
return FALSE;
|
||
}
|
||
|
||
Bool MyPutS(U8 *)
|
||
{
|
||
return FALSE;
|
||
}
|
||
|
||
KeyDevAdd(&MyPutKey, &MyPutS, 0x20000000, TRUE);
|