Author Topic: Hotfix not updating /macros files  (Read 91 times)

TKasparek

  • Senior Community Member
  • Posts: 216
  • Hero Points: 26
Hotfix not updating /macros files
« on: November 07, 2019, 03:03:18 pm »
I was curious of one of the changes in the latest hotfix. After comparing the files I was interested in I applied the patch and noticed that the supplied macros in the /macros folder were not actually updated. It looks like all the .ex were not updated either. When applying a patch, are the updated macros stored somewhere else?

Code: [Select]
SlickEdit Pro 2019 (v24.0.0.8 64-bit)

Serial number: WMX110555
Licensed number of users: Single user
License file: C:\ProgramData\slickedit\24\slickedit.lic

Build Date: October 2, 2019   (State file: October 29, 2019)
Emulation: CUA

OS: Windows 10 x64
OS Version: 10.00.0 
Memory: 20% Load, 6638MB/32442MB Physical, 9438MB/37306MB Page File, 5612MB/134217727MB Virtual
Shell Information: C:\WINDOWS\system32\cmd.exe /q
Screen Size: 1920 x 1080, 1080 x 1920, 1080 x 1920

Project Type: Cpp
Language: .cpp (C/C++)
Encoding: Automatic

Installation Directory: C:\Program Files\SlickEdit Pro 24.0.0\ (non-removable drive,NTFS,321574MB free)
Configuration Directory: C:\Users\thomas.kasparek\Documents\My SlickEdit Config\24.0.0\ (non-removable drive,NTFS,321574MB free)
Migrated from: C:\Users\thomas.kasparek\Documents\My SlickEdit Config\23.0.2\

Hotfixes:
C:\Users\thomas.kasparek\Documents\My SlickEdit Config\24.0.0\hotfixes\hotfix_se2400_3_cumulative.zip (Revision: 3)

patrick

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 1135
  • Hero Points: 107
Re: Hotfix not updating /macros files
« Reply #1 on: November 07, 2019, 03:13:24 pm »
There's zip files in CONFIG_DIR/hotfixes that contain the .e files.  So "C:\Users\thomas.kasparek\Documents\My SlickEdit Config\24.0.0\hotfixes\" for you config dir.

TKasparek

  • Senior Community Member
  • Posts: 216
  • Hero Points: 26
Re: Hotfix not updating /macros files
« Reply #2 on: November 07, 2019, 03:31:40 pm »
That is very good to know. Hmm.. what do others do for macro development that want to see the latest? Copy the new *.e files into a different directory, override with hotfix files and use a new tag file?

If I backup (with version control) the SE /macros folder and move the new .e files there would it actually hurt anything?

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 4922
  • Hero Points: 402
Re: Hotfix not updating /macros files
« Reply #3 on: November 07, 2019, 07:06:06 pm »
It's fine to overwrite the .e files in the /macros directory.  The important thing is that if you load system macros (macros shipped by SlickEdit) that you load the correct version matching what's in your state file and not an older version. When a hot fix is installed there's a versioned state local state file that SlickEdit uses (not the vslick.sta in the global installation directory).

jporkkahtc

  • Senior Community Member
  • Posts: 1837
  • Hero Points: 178
  • Text
Re: Hotfix not updating /macros files
« Reply #4 on: Today at 01:08:15 am »
I asked a similar question here: https://community.slickedit.com/index.php/topic,17287.0.html

Since nobody replied, what I do is I modify the *.e files in place, for example: C:\Program Files\SlickEdit Pro 24.0.0\macros\tbfilelist.e

After all the #import statements, I have this:
Code: [Select]
#undef JPORKKA
#define JPORKKA "tbfilelist.e" // Add timestamp and size columns.

Then every place in the file that I've changed something I have this:
Code: [Select]
   #if defined(JPORKKA) // Parsing the size and date fields
   parse curFilename with auto namePart "\t" auto pathPart "\t" auto remains;
   #else
   // The original code that I replaced above
   parse curFilename with auto namePart "\t" auto pathPart;
   #endif

When I get a new version of Slickedit, I run a difference between old and new "C:\Program Files\SlickEdit Pro 23.0.0\macros\" and "C:\Program Files\SlickEdit Pro 24.0.0\macros\"
(Also I use a File list file to limit this to just the *.e files that I've customized).
The #if's make it pretty easy to merge my changes into the new *.e files.

Then as I mentioned in the other thread I have "joeMacLoad.e" that loads all my customized macros.


Normally Slick gets annoyed if you try to put macros someplace other that MACROS or CONFIG.
Since CONFIG is pretty cluttered already, I've created a separate directory for my macros.

Code: [Select]
C:\Program Files\SlickEdit Pro 24.0.0\macros (This is the MACROS directory)
C:\users\joe\Documents\Slickedit\24.0.0\* (This is the CONFIG directory)
C:\users\joe\Documents\Slickedit\Macros (This is my Macros directory)


Dealing with hotfixes in general is a pain, though usually the hotfix doesn't touch any of my customized macros so it isn't usually so bad.

To make that Macros directory work well in Slick you need to add the following to CONFIG\user.cfg.xml
Code: [Select]
<misc.environment n="misc.environment" version="1" configs="win">
<p n="VSLICKBACKUP" v=""/>
<p n="VSLICKMACROS" v="%VSLICKMACROS%;%SLICKEDITCONFIG%\macros;%VSLICKPATH%/>
<p n="VSLICKPATH" v="%VSLICKPATH%;%SLICKEDITCONFIG%\macros/>
</misc.environment>