AutoHotKey scriptica za debug copy/paste

Započeo Bit Frosty, Oktobar 02, 2023, 23:41:58 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Vjerovano nije mjesto za ovo ali eto neka bude ovde, ko hoce od modova neka premesti ako misli da ima bolje mjesto.

Ukoliko ste ikada trebali da debug da li se nesto poziva verovano ste naleteli na to da kucate neki ime ili kopirate uslov ili ime funkcije koju debug.
Uglavnom ova skriptica dodaje mogucnost lakog printanja u konzoli sa automatskim inkrementiranjem. Recimo ako treba da debug OnPlayerConnect funkciju i zelite da posaljete vise debugova da vidite dokle vam stize kod onda vam ovo moze pomoci.

CTRL+SHIFT+C je za copy stringa
CTRL+SHIFT+V je za past string

Recimo ukoliko kopirate OnPlayerConnect, prvi paste ce biti printf("[Debug] OnPlayerConnect - 1"); a sledeci printf("[Debug] OnPlayerConnect - 2"); i tako dalje.
U sustini olaksava debagovanje na glup nacin (to jest onaj kad vam ne preostaje nista drugo), a opet nije da smeta kao skracenica koja uvek moze biti u pozadini.

Inace potreban je AutoHotKey v2 a ne v1.

[pawn]
global debugText:=""
global count:=1
while(true)
{
   #HotIf GetKeyState("Ctrl")
   Shift & C::
   {
      A_Clipboard:=""
      Send "^c"
      if !ClipWait(2)
      {
         MsgBox "The attempt to copy text onto the clipboard failed."
         return
      }
      if(StrCompare(debugText, A_Clipboard) != 0)
      {
         global count:=1         
      }
      global debugText:=A_Clipboard     
   }
   
   Shift & V::
   {
      count:=count
      clipboardText:=debugText
      if(StrCompare(debugText, "") == 0)
      {
            return
      }
      tmpText:="printf(`"[Debug] " . clipboardText . " - " count "`");"
      global count+=1
      A_Clipboard:=tmpText
      if !ClipWait(2)
      {
         MsgBox "The attempt to copy text onto the clipboard failed."
         return
      }
      Send "^v"   
   }
   Sleep 30
}
[/pawn]