@ echo off REM You will need to edit this for paths and names set gdir=C:\Home\Gellmu\gellmu set emacs_dir=C:\Local\emacs-20.5 set htcat="C:\Local\sp1_3_4\pubtext\HTML401\catalog" set dosfind="C:\WINDOWS\COMMAND\find.exe" REM emacs may already be in the command path REM For example: set emacs_exe="%emacs_dir%\bin\emacs.exe" set emacs_exe=emacs.exe REM REM Edits below here should be relatively rare REM set EMACSLOADPATH=%emacs_dir%\site-lisp;%emacs_dir%\lisp;%emacs_dir%\leim set EMACSDATA=%emacs_dir%\etc set EMACSPATH=%emacs_dir%\bin set EMACSLOCKDIR=%emacs_dir%\lock set TERM=CMD set HOME_SAVE=%HOME% set HOME_EXISTS=yes set HOME_DEFAULT=C:\HOME\ set HOME= if "%HOME%" == "%HOME_SAVE%" set HOME_EXISTS=no if "%HOME_EXISTS%" == "yes" set HOME=%HOME_SAVE% if "%HOME_EXISTS%" == "no" set HOME=%HOME_DEFAULT% set xgdir=%gdir%\xml REM Under Windows emacs seems to need a name for the "-l" argument REM that is not the name of something else in the current dir set elispsrc=%gdir%\gellmu.el set elisplib=%gdir%\wgellmu.elc set gname=%1 if "%gname%" == "" goto usage set trapname=%3 if not "%trapname%" == "" goto usage set fncall=%2 if not "%fncall%" == "" goto skip set fncall=gellmu-trans goto fnready :skip "%dosfind%" "(defun %fncall%" "%elispsrc%" > "%gname%.zzz" if not errorlevel 1 goto fnready set fncall="gellmu-%2" :fnready set fname="%gname%.glm" if exist "%fname%" goto gst set fname="%gname%" if not exist "%fname%" goto bail :gst echo Calling the syntactic translator. "%emacs_exe%" -batch -l "%elisplib%" -f "%fncall%" "%fname%" if errorlevel 1 goto exit if not exist "%gname%.sgml" goto sgbail goto exit :usage echo Usage: wsmkg name (suffix .glm IMPLIED) [function-call] goto exit :bail echo wsmkg: -- Could not find %gname%.glm (nor %gname%) goto exit :sgbail echo wsmkg: -- No %gname%.sgml ?? Did emacs fail? goto exit :exit