home *** CD-ROM | disk | FTP | other *** search
/ PC World 1999 February / PCWorld_1999-02_cd.bin / software / Zkuste / WinBat98 / WSINIT.DL_ < prev    next >
Text File  |  1998-11-09  |  12KB  |  296 lines

  1. ;-------------------------------------------------------------------------
  2. ; wsinit.dll  - WinBatch version
  3. ;
  4. ; WinBatch Studio checks for the existence of this file at startup, looking
  5. ; in the WinBatch Studio directory. It allows you a chance to customize 
  6. ; every part of WinBatch Studio at startup without user intervention.
  7. ; If WinBatch Studio executes the script it saves the file date stamp.  Subsequently
  8. ; at startup, WinBatch Studio will compare the file date with the saved time and
  9. ; will only re-run the script if it's newer than the saved timestamp.
  10. ;
  11. ;
  12.  
  13. regword="WinBatch Studio"
  14. ;gosub NukeSomeSettings
  15. gosub SetupPage
  16. gosub SetupFind
  17. gosub SetupGlobal
  18. ; Set up some file types.  Maybe should be first, as later items override earlier items...
  19. gosub SetupHTML     ; This one here primarily as an example.
  20. ;
  21. exit
  22.  
  23.  
  24. :SetupHTML
  25.         ;-------------------------------------------------------------------------
  26.         ; File specific settings
  27.         ;
  28.         ; This example sets up WinBatch Studio for HTML files. 
  29.         ;-------------------------------------------------------------------------
  30.  
  31.         ; First, verify these settings were not already installed so we don't
  32.         ; overwrite changes made by the user on a mere update.  If thiere is
  33.         ; a real update, then yes we do overwrite user customizations.
  34.         FileKind="HTML"         ; Name of manil file group for this type of files
  35.         ConfigVerWBT=6     ; Configuration version number,.  Update when changing this section
  36.  
  37.         if RegExistValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\File types\%FileKind% Files[ConfigVer]")
  38.              ConfigVerReg=RegQueryValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\File types\%FileKind% Files[ConfigVer]")
  39.              if ConfigVerReg >= ConfigVerWBT then return  ; if reg is newer, do not excecute
  40.         endif
  41.         RegSetValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\File types\%FileKind% Files[ConfigVer]",ConfigVerWBT)
  42.  
  43.  
  44.  
  45.         ; The File mapping key sets up the file extensions with a particular 
  46.         ; file group.  e.g.   HTML, HTM and ASP type files all belong to the
  47.         ; HTML file group 
  48.         
  49.         regkey = RegCreateKey(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\File mapping")
  50.         
  51.         RegSetValue(regkey, "[HTML]", FileKind)
  52.         RegSetValue(regkey, "[HTM]",  FileKind)
  53.         RegSetValue(regkey, "[ASP]",  FileKind)
  54.         RegSetValue(regkey, "[XML]",  FileKind)
  55.         RegCloseKey(regkey)
  56.         
  57.         
  58.         ;-------------------------------------------------------------------------
  59.         ; the File types key sets up the file extension - specific settings
  60.         
  61.         regkey = RegCreateKey(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\File types\%FileKind% Files")
  62.         
  63.         ; add this file type to the FileOpen dialog
  64.         RegSetDWord(regkey, "[AddToFileDialog]", 1)
  65.         
  66.         ; description and wild cards to use in FileOpen dialog
  67.         RegSetValue(regkey, "[FileOpenMask]", "%FileKind% Files|*.htm;*.html;*.asp;*.xml")
  68.         
  69.         ; case sensitivity
  70.         RegSetDWord(regkey, "[Case]", 0)
  71.         
  72.         ; show chroma coding
  73.         RegSetDWord(regkey, "[Chroma]", 1)
  74.         
  75.         ; comment definition - two available
  76.         RegSetValue(regkey, "[Comment Start 1]", "<")
  77.         RegSetValue(regkey, "[Comment End 1]", ">")
  78.         
  79.         RegSetValue(regkey, "[Comment Start 2]", "")
  80.         RegSetValue(regkey, "[Comment End 2]", "")
  81.         
  82.         ; font information for this file type                                                      
  83.         RegSetValue(regkey, "[Font name]", "Courier New")
  84.         RegSetDWord(regkey, "[Font size]", 10)
  85.         
  86.         ; 400 = normal, 700 = bold
  87.         RegSetDWord(regkey, "[Font weight]", 400)
  88.         RegSetDWord(regkey, "[Font italic]", 0)
  89.         
  90.         ; 1 = insert mode; 0 = overtype
  91.         RegSetDWord(regkey, "[Insert]", 1)
  92.         
  93.         ; pathname of keyword listing file
  94.         RegSetValue(regkey, "[Keywords]", "%FileKind%.clr")
  95.         
  96.         ; 0 = CR/LF; 1 = LF; 2 = LF/CR; 3 = CR
  97.         RegSetDWord(regkey, "[Line end type]", 0)
  98.         
  99.         ; leave files locked when open
  100.         RegSetDWord(regkey, "[Lock files]", 0)
  101.         
  102.         ; 1 = use tabs; 0 = insert spaces
  103.         RegSetDWord(regkey, "[Keep tabs]", 1)
  104.         
  105.         ; show visible tab marks on screen
  106.         RegSetDWord(regkey, "[Show tabs]", 0)
  107.         
  108.         ; tab size in characters
  109.         RegSetDWord(regkey, "[Tab size]", "3")
  110.         
  111.         ; extra characters to be considered part of a word
  112.         RegSetValue(regkey, "[Extra word chars]", "<>/")
  113.         
  114.         ; extra characters that might start a word
  115.         RegSetValue(regkey, "[Start chars]", "<")
  116.         
  117.         ; extra characters that might end a word
  118.         RegSetValue(regkey, "[Terminator chars]", "=>")
  119.         
  120.         ; colors.  R,G,B values as a string
  121.         RegSetValue(regkey, "[Background]", "255,255,255")
  122.         RegSetValue(regkey, "[Comment]", "0,0,255")
  123.         RegSetValue(regkey, "[Default Text]", "0,0,0")
  124.         RegSetValue(regkey, "[Keyword]", "0,0,255")
  125.         RegSetValue(regkey, "[Quote]", "0,0,0")
  126.         
  127.         ; character set 0 = ANSI, 1 = OEM
  128.         RegSetDWord(regkey, "[CharSet]", 0)
  129.         
  130.         ; compile command
  131.         RegSetValue(regkey, "[Compile command]", "")
  132.         
  133.         ; call a custom WIL error parsing script after compiling
  134.         RegSetDWord(regkey, "[UseWBT]", 0)
  135.         
  136.         ; if so, the name of the script
  137.         RegSetValue(regkey, "[WBTErrorFile]", "")
  138.         RegCloseKey(regkey)
  139.         return
  140.  
  141.         
  142. :SetupPage
  143.         ;-------------------------------------------------------------------------
  144.         ; the PageSetup key handles all the printing settings
  145.         
  146.         ;First check to try not to needlessly overwrite user settings
  147.  
  148.         ConfigVerWBT=5     ; Configuration version number,.  Update when changing this section
  149.  
  150.         if RegExistValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\PageSetup[ConfigVer]")
  151.              ConfigVerReg=RegQueryValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\PageSetup[ConfigVer]")
  152.              if ConfigVerReg >= ConfigVerWBT then return  ; if reg is newer, do not excecute
  153.         endif
  154.         RegSetValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\PageSetup[ConfigVer]",ConfigVerWBT)
  155.  
  156.         
  157.         regkey = RegCreateKey(@REGCURRENT, "Software\Wilson WindowWare\%regword%\PageSetup")
  158.         
  159.         ; 0 = ANSI, 1 = OEM
  160.         RegSetDWord(regkey,"[CharSet]", 0)
  161.         
  162.         ; 1 = print in color, 0 = OFF
  163.         RegSetDWord(regkey, "[Color syntax]", 1)
  164.         
  165.         ; 1 = print italics, 0 = regular
  166.         RegSetDWord(regkey, "[Font Italic]", 0)
  167.         
  168.         ; name of font 
  169.         RegSetValue(regkey, "[Font name]", "Courier New")
  170.         
  171.         ; size of font in points
  172.         RegSetDWord(regkey, "[Font size]", 12)
  173.         
  174.         ; 400 = normal, 700 = bold
  175.         RegSetDWord(regkey, "[Font weight]", 400)
  176.         
  177.         ; footer macro string
  178.         RegSetValue(regkey, "[Footer]", "Page $(PageNo)")
  179.         
  180.         ; print file time in footer, 1 = yes, 0 = no
  181.         RegSetDWord(regkey, "[FooterTime]", 0)
  182.         
  183.         ; header macro string
  184.         RegSetValue(regkey, "[Header]", "$(FilePath) - $(FileTime)")
  185.         
  186.         ; print file time in header, 1 = yes, 0 = no
  187.         RegSetDWord(regkey, "[HeaderTime]", 0)
  188.         
  189.         ; print line numbers, 1 = yes, 0 = no
  190.         RegSetDWord(regkey, "[Line numbers]", 0)
  191.         
  192.         ; print pages two up, 1 = yes, 0 = no
  193.         RegSetDWord(regkey, "[Twoup]", 0)
  194.         
  195.         ; 0 = use screen font, 1 = use printer font defined above
  196.         RegSetDWord(regkey, "[Use printer font]", 0)
  197.         
  198.         RegCloseKey(regkey)
  199.         return
  200.  
  201. :SetupFind
  202.         ;-------------------------------------------------------------------------
  203.         ; the Settings\Find key handles the find\replace settings
  204.  
  205.         ;First check to try not to needlessly overwrite user settings
  206.  
  207.         ConfigVerWBT=5     ; Configuration version number,.  Update when changing this section
  208.  
  209.         if RegExistValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Find[ConfigVer]")
  210.              ConfigVerReg=RegQueryValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Find[ConfigVer]")
  211.              if ConfigVerReg >= ConfigVerWBT then return  ; if reg is newer, do not excecute
  212.         endif
  213.         RegSetValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Find[ConfigVer]",ConfigVerWBT)
  214.  
  215.         regkey = RegCreateKey(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Find")
  216.         
  217.         ; these keys are all true/false, 1 = ON, 0 = OFF
  218.         RegSetDWord(regkey, "[Forward]", 1)
  219.         RegSetDWord(regkey, "[Match case]", 0)
  220.         RegSetDWord(regkey, "[Regular expressions]", 0)
  221.         RegSetDWord(regkey, "[Wrap search]", 0)
  222.         RegCloseKey(regkey)
  223.         return
  224.  
  225. :setupGlobal
  226.         ;-------------------------------------------------------------------------
  227.         ; the Settings\Main Window key handles the global editor settings
  228.  
  229.        ;First check to try not to needlessly overwrite user settings
  230.  
  231.         ConfigVerWBT=6     ; Configuration version number,.  Update when changing this section
  232.  
  233.         if RegExistValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window[ConfigVer]")
  234.              ConfigVerReg=RegQueryValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window[ConfigVer]")
  235.              if ConfigVerReg >= ConfigVerWBT then return  ; if reg is newer, do not excecute
  236.         endif
  237.         RegSetValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window[ConfigVer]",ConfigVerWBT)
  238.  
  239.         regkey = RegCreateKey(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window")
  240.         
  241.         ; backup location macro string
  242.         RegSetValue(regkey, "[Backup location]", "$(FilePath).backup")
  243.         RegSetValue(regkey, "[Autosave location]", "$(FilePath).autosave")
  244.         
  245.         ; the name of the active project
  246.         RegSetValue(regkey, "[Active Workspace]", "Default")
  247.         
  248.         ; the autosave interval, in minutes
  249.         RegSetDWord(regkey, "[Autosave interval]", 5)
  250.         
  251.         ; the rest are all true/false, on/off
  252.         RegSetDWord(regkey, "[AutoSave]", 1)
  253.         RegSetDWord(regkey, "[Horizontal Scrollbar]", 1)
  254.         RegSetDWord(regkey, "[Make Backups]", 1)
  255.         
  256.         ; leave the cursor at the end of pasted text
  257.         RegSetDWord(regkey, "[Paste After]", 1)
  258.         
  259.         ; automatically save files before running tools
  260.         RegSetDWord(regkey, "[Save Before]", 1)
  261.         
  262.         ; don't prompt before automatically saving files
  263.         RegSetDWord(regkey, "[Prompt Before]", 0)
  264.         
  265.         ; reload the open files from the last session
  266.         RegSetDWord(regkey, "[Restore Workspace]", 0)
  267.         
  268.         ; allow only one instance of %regword%
  269.         RegSetDWord(regkey, "[Single Instance]", 1)
  270.         
  271.         ; allow the cursor to move past the ends of lines
  272.         RegSetDWord(regkey, "[VirtualWhitespace]", 1)
  273.         RegCloseKey(regkey)
  274.  
  275.         ; set WIL files to be FileOpen default
  276.         regkey = RegCreateKey(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Options")
  277.         RegSetDWord(regkey, "[FilterIndex]", 1)
  278.         RegCloseKey(regkey)
  279.  
  280.         return
  281. :NukeSomeSettings
  282.         ConfigVerWBT=2     ; Configuration version number,.  Update when changing this section
  283.  
  284.         if RegExistValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window[ResetBetaVer]")
  285.              ConfigVerReg=RegQueryValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window[ResetBetaVer]")
  286.              if ConfigVerReg >= ConfigVerWBT then return  ; if reg is same or newer, do not excecute
  287.         endif
  288.         RegSetValue(@REGCURRENT, "Software\Wilson WindowWare\%regword%\Settings\Main Window[ResetBetaVer]",ConfigVerWBT)
  289.  
  290.         ;nothing to do this week.
  291.         return
  292.  
  293.  
  294.  
  295.