mirror of
https://github.com/arkenfox/user.js.git
synced 2025-05-11 03:13:34 +02:00
parent
103711020b
commit
621a7f81d8
1 changed files with 70 additions and 51 deletions
121
updater.bat
121
updater.bat
|
@ -3,7 +3,7 @@ TITLE ghacks user.js updater
|
||||||
|
|
||||||
REM ### ghacks-user.js updater for Windows
|
REM ### ghacks-user.js updater for Windows
|
||||||
REM ## author: @claustromaniac
|
REM ## author: @claustromaniac
|
||||||
REM ## version: 3.0-alpha92
|
REM ## version: 3.0
|
||||||
|
|
||||||
SET _myname=%~n0
|
SET _myname=%~n0
|
||||||
SET _myparams=%*
|
SET _myparams=%*
|
||||||
|
@ -28,7 +28,6 @@ IF /I "%~1"=="-multioverrides" (
|
||||||
IF /I "%~1"=="-merge" (
|
IF /I "%~1"=="-merge" (
|
||||||
SET _merge=1
|
SET _merge=1
|
||||||
)
|
)
|
||||||
REM case-sensitive check because we need to strip it from params
|
|
||||||
IF "%~1"=="-updatebatch" (
|
IF "%~1"=="-updatebatch" (
|
||||||
SET _updateb=1
|
SET _updateb=1
|
||||||
)
|
)
|
||||||
|
@ -36,6 +35,65 @@ SHIFT
|
||||||
GOTO parse
|
GOTO parse
|
||||||
:endparse
|
:endparse
|
||||||
ECHO.
|
ECHO.
|
||||||
|
IF DEFINED _updateb (
|
||||||
|
ECHO Checking updater version...
|
||||||
|
ECHO.
|
||||||
|
DEL /F "!_myname!-updated.bat" 2>nul
|
||||||
|
powershell -Command "(New-Object Net.WebClient).DownloadFile('https://github.com/ghacksuserjs/ghacks-user.js/raw/master/updater.bat', '!_myname!-updated.bat')" >nul
|
||||||
|
IF EXIST "!_myname!-updated.bat" (
|
||||||
|
CLS
|
||||||
|
START CMD /C "!_myname!-updated.bat" !_myparams!
|
||||||
|
DEL /F "!_myname!.bat" 2>nul
|
||||||
|
EXIT /B
|
||||||
|
) ELSE (
|
||||||
|
ECHO Failed. Make sure PowerShell is allowed internet access.
|
||||||
|
ECHO.
|
||||||
|
PAUSE
|
||||||
|
EXIT /B
|
||||||
|
)
|
||||||
|
) ELSE (
|
||||||
|
IF NOT "!_myname!"=="!_myname:-updated=X!" (
|
||||||
|
CALL :begin
|
||||||
|
REN "!_myname!.bat" "!_myname:-updated=!.bat"
|
||||||
|
EXIT /B
|
||||||
|
)
|
||||||
|
)
|
||||||
|
GOTO begin
|
||||||
|
REM ###### Merge function ######
|
||||||
|
:merge
|
||||||
|
DEL /F %2 2>nul
|
||||||
|
FOR /F "tokens=* delims=" %%G IN (%1) DO (
|
||||||
|
SET _pref=%%G
|
||||||
|
SET "_temp=!_pref: =!"
|
||||||
|
IF /I "!_temp!"=="!_temp:user.js.parrot=!" (
|
||||||
|
IF /I "user"=="!_temp:~0,4!" (
|
||||||
|
FOR /F "delims=," %%S IN ("!_pref!") DO (
|
||||||
|
SET _pref=%%S
|
||||||
|
)
|
||||||
|
SET _pref=!_pref:"=""!
|
||||||
|
FIND /I "!_pref!" %2 >nul 2>&1
|
||||||
|
IF ERRORLEVEL 1 (
|
||||||
|
FIND /I "!_pref!" %1 >temp1
|
||||||
|
FOR /F "tokens=* delims=" %%X IN (temp1) DO (
|
||||||
|
SET _temp=%%X
|
||||||
|
SET "_temp=!_temp: =!"
|
||||||
|
IF /I "user"=="!_temp:~0,4!" (
|
||||||
|
SET _pref=%%X
|
||||||
|
)
|
||||||
|
)
|
||||||
|
ECHO !_pref!>>%2
|
||||||
|
)
|
||||||
|
) ELSE (
|
||||||
|
ECHO !_pref!>>%2
|
||||||
|
)
|
||||||
|
) ELSE (
|
||||||
|
ECHO !_pref!>>%2
|
||||||
|
)
|
||||||
|
)
|
||||||
|
DEL /F %1 temp1 2>nul
|
||||||
|
EXIT /B
|
||||||
|
REM ############################
|
||||||
|
:begin
|
||||||
SET /A "_line=0"
|
SET /A "_line=0"
|
||||||
IF NOT EXIST user.js (
|
IF NOT EXIST user.js (
|
||||||
ECHO user.js not detected in the current directory.
|
ECHO user.js not detected in the current directory.
|
||||||
|
@ -58,7 +116,7 @@ IF NOT EXIST user.js (
|
||||||
:exitloop
|
:exitloop
|
||||||
IF !_line! GEQ 4 (
|
IF !_line! GEQ 4 (
|
||||||
IF /I NOT "!_name!"=="!_name:ghacks=X!" (
|
IF /I NOT "!_name!"=="!_name:ghacks=X!" (
|
||||||
ECHO ghacks user.js !_version:~2!,!_date!
|
ECHO ghacks user.js !_version:*version=version!,!_date!
|
||||||
) ELSE (
|
) ELSE (
|
||||||
ECHO Current user.js version not recognised.
|
ECHO Current user.js version not recognised.
|
||||||
)
|
)
|
||||||
|
@ -74,7 +132,9 @@ IF NOT DEFINED _ua (
|
||||||
REM ECHO Visit the wiki for more detailed information.
|
REM ECHO Visit the wiki for more detailed information.
|
||||||
REM ECHO.
|
REM ECHO.
|
||||||
CHOICE /M "Continue"
|
CHOICE /M "Continue"
|
||||||
IF ERRORLEVEL 2 EXIT /B
|
IF ERRORLEVEL 2 (
|
||||||
|
EXIT /B
|
||||||
|
)
|
||||||
)
|
)
|
||||||
CLS
|
CLS
|
||||||
ECHO.
|
ECHO.
|
||||||
|
@ -91,7 +151,7 @@ IF DEFINED _log (
|
||||||
ECHO.
|
ECHO.
|
||||||
)
|
)
|
||||||
IF EXIST user.js (
|
IF EXIST user.js (
|
||||||
IF EXIST user.js.bak REN user.js.bak user.js.old.bak
|
REN user.js.bak user.js.old.bak >nul 2>&1
|
||||||
REN user.js user.js.bak
|
REN user.js user.js.bak
|
||||||
ECHO Current user.js file backed up.
|
ECHO Current user.js file backed up.
|
||||||
ECHO.
|
ECHO.
|
||||||
|
@ -108,6 +168,7 @@ IF EXIST user.js (
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Merging...
|
ECHO Merging...
|
||||||
ECHO.
|
ECHO.
|
||||||
|
DEL /F user-overrides-merged.js temp2 2>nul
|
||||||
COPY /B /V /Y user.js-overrides\*.js user-overrides
|
COPY /B /V /Y user.js-overrides\*.js user-overrides
|
||||||
CALL :merge user-overrides user-overrides-merged.js
|
CALL :merge user-overrides user-overrides-merged.js
|
||||||
COPY /B /V /Y user.js+user-overrides-merged.js temp2
|
COPY /B /V /Y user.js+user-overrides-merged.js temp2
|
||||||
|
@ -144,12 +205,12 @@ IF EXIST user.js (
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO.
|
ECHO.
|
||||||
IF "!changed!"=="true" (
|
IF "!changed!"=="true" (
|
||||||
IF EXIST user.js.old.bak DEL /F user.js.old.bak
|
DEL /F user.js.old.bak 2>nul
|
||||||
ECHO Update complete.
|
ECHO Update complete.
|
||||||
) ELSE (
|
) ELSE (
|
||||||
IF "!changed!"=="false" (
|
IF "!changed!"=="false" (
|
||||||
DEL /F user.js.bak
|
DEL /F user.js.bak
|
||||||
IF EXIST user.js.old.bak REN user.js.old.bak user.js.bak
|
REN user.js.old.bak user.js.bak >nul 2>&1
|
||||||
ECHO Update completed without changes.
|
ECHO Update completed without changes.
|
||||||
) ELSE (
|
) ELSE (
|
||||||
ECHO Update complete.
|
ECHO Update complete.
|
||||||
|
@ -157,8 +218,8 @@ IF EXIST user.js (
|
||||||
)
|
)
|
||||||
ECHO.
|
ECHO.
|
||||||
) ELSE (
|
) ELSE (
|
||||||
IF EXIST user.js.bak REN user.js.bak user.js
|
REN user.js.bak user.js >nul 2>&1
|
||||||
IF EXIST user.js.old.bak REN user.js.old.bak user.js.bak
|
REN user.js.old.bak user.js.bak >nul 2>&1
|
||||||
ECHO.
|
ECHO.
|
||||||
ECHO Update failed. Make sure PowerShell is allowed internet access.
|
ECHO Update failed. Make sure PowerShell is allowed internet access.
|
||||||
ECHO.
|
ECHO.
|
||||||
|
@ -168,45 +229,3 @@ IF EXIST user.js (
|
||||||
IF NOT DEFINED _log (
|
IF NOT DEFINED _log (
|
||||||
IF NOT DEFINED _ua PAUSE
|
IF NOT DEFINED _ua PAUSE
|
||||||
)
|
)
|
||||||
EXIT /B
|
|
||||||
|
|
||||||
REM ###### Merge function ######
|
|
||||||
:merge
|
|
||||||
DEL /F %2 2>nul
|
|
||||||
SETLOCAL disabledelayedexpansion
|
|
||||||
FOR /F "tokens=1,* delims=]" %%G IN ('find /n /v "" ^< "%~1"') DO (
|
|
||||||
SET "_pref=%%H"
|
|
||||||
SETLOCAL enabledelayedexpansion
|
|
||||||
SET "_temp=!_pref: =!"
|
|
||||||
IF /I "user_pref"=="!_temp:~0,9!" (
|
|
||||||
IF /I NOT "user.js.parrot"=="!_temp:~12,14!" (
|
|
||||||
FOR /F "delims=," %%S IN ("!_pref!") DO (
|
|
||||||
SET "_pref=%%S"
|
|
||||||
)
|
|
||||||
SET _pref=!_pref:"=""!
|
|
||||||
FIND /I "!_pref!" %~2 >nul 2>&1
|
|
||||||
IF ERRORLEVEL 1 (
|
|
||||||
FIND /I "!_pref!" %~1 >temp123
|
|
||||||
FOR /F "tokens=* delims=" %%X IN (temp123) DO (
|
|
||||||
SET "_temp=%%X"
|
|
||||||
SET "_temp=!_temp: =!"
|
|
||||||
IF /I "user_pref"=="!_temp:~0,9!" (
|
|
||||||
SET "_pref=%%X"
|
|
||||||
)
|
|
||||||
)
|
|
||||||
ECHO(!_pref!>>%~2
|
|
||||||
)
|
|
||||||
) ELSE (
|
|
||||||
ECHO(!_pref!>>%~2
|
|
||||||
)
|
|
||||||
) ELSE (
|
|
||||||
ECHO(!_pref!>>%~2
|
|
||||||
)
|
|
||||||
ENDLOCAL
|
|
||||||
)
|
|
||||||
ENDLOCAL
|
|
||||||
DEL /F %~1 temp123 >nul
|
|
||||||
GOTO EOF
|
|
||||||
REM ############################
|
|
||||||
|
|
||||||
:EOF
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue