o/ (FEB13/19:12)

YUI Compressor Kontextmenü


Ein Batch Script, welches den Aufruf des YUI Compressors mittels Kontextmenü ermöglicht – praktisch wenn man öfters CSS oder JavaScript Files komprimieren muss.

Unterstützt werden sowohl Dateien als auch Verzeichnisse. Sollte bei der Komprimierung ein Fehler auftreten bleibt das Fenster geöffnet – ansonsten schließt es sich automatisch wieder.

Installation

Beim Aufruf der YUICompressor-Install.cmd werden in der Registrierung automatisch die benötigten Einträge für Dateien und Verzeichnisse erstellt. Danach ist das Script einsatzbereit (vorhandene JRE Installation vorausgesetzt).

Wenn die Dateien nachträglich noch an einen anderen Pfad verschoben werden, ist das Installationsskript erneut auszuführen!

Deinstallation

YUICompressor-Remove.cmd entfernt die zuvor erstellten Einträge wieder aus der Registrierung. Die Dateien können danach einfach gelöscht werden.

Source

@ECHO OFF
REM Martin Karer, 2011
REM https://sezz.at
IF [%1]==[] GOTO End
CALL :FindJava
SET YUI=%~dp0\yuicompressor-2.4.6.jar

SETLOCAL EnableExtensions
SET ATTR=%~a1
IF /I "%ATTR:~0,1%"=="d" (
CALL :YUICompressDirectory %1
) ELSE (
CALL :YUICompressFile %1
)
GOTO End

:RemoveFile
REM Arguments:
REM %1 -> file name with "full path"
DEL /F %1>NUL
IF EXIST %1 CALL :RemoveFile %1
GOTO :EOF

:YUICompressDirectory
REM Arguments:
REM %1 -> full path
ECHO YUICompressDirectory %*
IF EXIST "%~s1\*.JS"  FOR /F "tokens=*" %%A IN ('DIR /B %~s1\*.JS')  DO CALL :YUICompressFile "%~s1\%%A"
IF EXIST "%~s1\*.CSS" FOR /F "tokens=*" %%A IN ('DIR /B %~s1\*.CSS') DO CALL :YUICompressFile "%~s1\%%A"
GOTO :EOF

:YUICompressFile
REM Arguments:
REM %1 -> file name with full path
ECHO YUICompressFile %*
SET YUICurrentFile=%~1
SET YUICurrentFileName=%~n1
IF "%YUICurrentFileName:~-4%"=="-min" CALL :RemoveFile "%YUICurrentFile%" & GOTO :EOF
ECHO Processing: %~nx1
"%JavaExecutable%" -jar "%YUI%" %1 -o "%~dp1\%YUICurrentFileName%-min%~x1" --preserve-semi
GOTO :EOF

:FindJava
REM Find JAVA.EXE
REM Tested in Windows 7 x64, JRE 1.6.0_26
SET JavaVersion=
SET JavaPath=
SET JavaExecutable=
SET RegistryRoot=HKLM\SOFTWARE\JavaSoft\Java Runtime Environment
IF NOT "%ProgramFiles(x86)%"=="" IF EXIST "%ProgramFiles(x86)%" SET RegistryRoot=HKLM\SOFTWARE\Wow6432Node\JavaSoft\Java Runtime Environment
FOR /F "usebackq skip=2 tokens=2,*" %%V IN (`REG QUERY "%RegistryRoot%" /v Java6FamilyVersion`) DO SET JavaVersion=%%W
FOR /F "usebackq skip=2 tokens=2,*" %%V IN (`REG QUERY "%RegistryRoot%\%JavaVersion%" /v JavaHome`) DO SET JavaPath=%%W
IF EXIST "%JavaPath%\bin\java.exe" SET JavaExecutable=%JavaPath%\bin\java.exe
IF "%JavaExecutable%"=="" (
SET ERRORLEVEL=1
ECHO Couldn't find JAVA.EXE!
GOTO End
)
GOTO :EOF

:End
IF %ERRORLEVEL% NEQ 0 PAUSE
EXIT

Download

Aktuelle Version (getestet unter Windows 7 64-Bit mit 32 Bit JRE), inkl. YUI Compressor 2.4.6: YUI Compressor Context Menu (793 KB)


OCT1/20:46 - iTunes plays:
The Prodigy - Wild Frontier

Kontakt Impressum Martin Karer 2008-2024