# Re: [isabelle] \$HOME, \$USER_HOME, and how I call "bin/isabelle" commands with batch/bash files

On Sun, 20 May 2012, gottfried.barrow at gmx.com wrote:

However, I'll show how I call "bin/isabelle" commands through a combination of a batch file and a bash file, which I do so that I don't have to start a Cygwin command window, and then type in something like "isabelle jedit" in Cygwin.

This is also related to the fact that my Norton 360 anti-virus deletes my "Isabelle2012-RC3\Isabelle.exe", though it's not a problem for me, because I prefer to change my Isabelle home folder anyway.

To call jEdit, and change my home folders, I put this in "isajedit-2012.bat":

You can also imitate what the Launch4j wrapper does, see the included config file of it. With a fixed directory location one should be able to turn the whole .exe into a plain Windows application alias.

The JVM entry point is src/Pure/System/main.scala and the init function in src/Pure/System/isabelle_system.scala -- it basically redirects HOME to user.home given by the JVM.

This hint is only for Isabelle2012 -- I might find new ways to makes things simpler and more robust over time.

Makarius
<launch4jConfig>
<dontWrapJar>true</dontWrapJar>
<jar></jar>
<outfile>Isabelle.exe</outfile>
<errTitle></errTitle>
<cmdLine></cmdLine>
<chdir></chdir>
<priority>normal</priority>
<supportUrl></supportUrl>
<customProcName>false</customProcName>
<stayAlive>true</stayAlive>
<manifest></manifest>
<icon>isabelle.ico</icon>
<classPath>
<mainClass>isabelle.Main</mainClass>
<cp>%EXEDIR%\lib\classes\ext\Pure.jar</cp>
<cp>%EXEDIR%\lib\classes\ext\scala-library.jar</cp>
<cp>%EXEDIR%\lib\classes\ext\scala-swing.jar</cp>
</classPath>
<jre>
<path>%EXEDIR%\contrib\jdk-6u31_x86-cygwin\jdk1.6.0_31</path>
<minVersion></minVersion>
<maxVersion></maxVersion>
<jdkPreference>jdkOnly</jdkPreference>
<opt>-Disabelle.home=&quot;%EXEDIR%&quot; -Dcygwin.root=&quot;%EXEDIR%\\contrib\\cygwin-1.7.9&quot;</opt>
</jre>
<splash>
<file>isabelle.bmp</file>
<waitForWindow>false</waitForWindow>
<timeout>10</timeout>
<timeoutErr>false</timeoutErr>
</splash>
</launch4jConfig>

This archive was generated by a fusion of Pipermail (Mailman edition) and MHonArc.