Advertisement
mgis90

pobierz_lang.ahk

Mar 29th, 2016
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;pobierz_lang.ahk                           -- mgis90 2016-03-29
  2. ;-----------------------------------------------------------------------
  3. ;skrypt pomocniczy dla NapiProjekt
  4. ;dodaje funkcjonalność "Pobierz napisy angielskie" oraz "Pobierz napisy polskie"
  5. ;dzięki temu można wywoływać te akcje bezpośrednio z menu kontekstowego
  6. ;-----------------------------------------------------------------------
  7. ;testowano na wersji 1.0.6.9
  8. ;skrypt należy umieścić tuż obok "napisy.exe" oraz "napi-projekt.ini"
  9. ;skrypt należy wywołać z parametrem ścieżką do pliku wideo, tak samo jak NapiProjekt
  10. ;dodatkowy (drugi) parametr określa w jakim języku NP ma pobrać te napisy
  11. ;akcje menu kontekstowego należy stworzyć manualnie
  12. ;PARAMETRY
  13. ;1 - zostanie przekazany do NapiProjekt
  14. ;2 - może przyjąć następujące wartości:
  15. ;           [pominięty]                - nic nie zmieniaj
  16. ;           1 albo en albo ang      - ustaw angielski
  17. ;           [cokolwiek innego]      - ustaw polski
  18. ;(przedawnione) 0 albo pl albo pol      - ustaw polski (nie sprawdzane, tzn gdy nie wykryto ang)
  19. #NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
  20. #LTrim  ; Allows continuation sections to be indented. Positional. May be turned off via #LTrim Off
  21. #KeyHistory 0  ; Disable keyboard and mouse event history.
  22. #SingleInstance ignore
  23. #Warn
  24. ; Ensures a consistent starting directory. Tutaj znajdziemy napisy.exe
  25. ; oraz w tym folderze zostaną uruchomione (parametr WorkingDir polecenia Run)
  26. SetWorkingDir %A_ScriptDir%
  27.  
  28. ;---------- zmienne globalne -----------
  29. file_ini:=A_ScriptDir . "\napi-projekt.ini"
  30. file_exe:=A_ScriptDir . "\napisy.exe"
  31.  
  32. ;---- sprawdzenia wymaganych plikow ----
  33. if not FileExist(file_ini)
  34. {
  35.     MsgBox,16,Brak pliku ini,Nie ma ini`n%file_ini%
  36.     ExitApp
  37.     ;nie konwertujemy na dlugie nazwy
  38. }
  39. if not FileExist(file_exe)
  40. {
  41.     MsgBox,16,Brak pliku exe,Nie ma exe`n%file_exe%
  42.     ExitApp
  43. }
  44. if FileExist(A_ScriptDir . "\dbg.txt")
  45.     dbg:=true
  46.     else
  47.     dbg:=false
  48. ;---------------------------------------
  49. ;nie sprawdzamy param1
  50. nowyjezyk=0
  51. ;jesli wiecej parametrow niz 1
  52. if 0>1
  53. {
  54.     if dbg
  55.         msgbox,wiecej parametrow niz jeden`n%1%`n%2%
  56.     ;param2 := drugi parametr
  57.     param2 = %2%
  58.     if param2 contains 1,en,ang
  59.         nowyjezyk=1
  60.     else                ;moglibysmy tutaj if param2 contains 0,pl,pol
  61.         nowyjezyk=0
  62.     ;if dbg
  63.         if nowyjezyk
  64.             MsgBox,,Pobierz napisy w języku,Pobierać będziemy napisy w języku angielskim,5
  65.         else
  66.             MsgBox,,Pobierz napisy w języku,Pobierać będziemy napisy w języku polskim,5
  67.     IniWrite,%nowyjezyk%,%file_ini%,opcje,jezyk
  68.     if ErrorLevel
  69.         MsgBox,16,Błąd zapisu,Błąd zapisu do ini
  70. }
  71. GoSub,uruchom
  72. return  ;autoexec
  73.  
  74.  
  75. uruchom:
  76. ;tyle razy ile parametrow
  77. params=
  78. /*
  79. nie łączymy parametrów
  80. Loop, %0%
  81. {
  82.     ;jesli >1 wstaw spacje na koncu
  83.     if A_Index > 1
  84.         params.=" "
  85.     ;parametr wsadz w cudzyslow. czemu cztery?
  86.     params.= """" . %A_Index% . """"
  87. }
  88. ;tymczasowo: tylko pierwszy parametr przekazujemy
  89. */
  90. params="%1%"
  91. if dbg
  92.     MsgBox,%file_exe% %params%
  93. Run,%file_exe% %params%
  94. ExitApp
  95. return  ;uruchom
  96.  
  97.  
  98. /*
  99. ...\NAPI-PROJEKT\napi-projekt.ini
  100. [opcje]
  101. jezyk=1     angielski
  102. jezyk=0         polski
  103. IniWrite,1,%file_ini%,opcje,jezyk
  104. IniWrite,0,%file_ini%,opcje,jezyk
  105.    
  106. napisy.exe "%1"
  107. powinno byc long path
  108. param ujęty w cudzysłów, jak wyżej
  109. exe w folderze skryptu
  110. */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement