Author Topic: Tag file reference removal  (Read 3573 times)

dunkers

  • Senior Community Member
  • Posts: 633
  • Hero Points: 28
Tag file reference removal
« on: September 21, 2009, 09:22:09 pm »

As you know, I copied the SE config from my old PC (XP) to the new one (W7). There two major differences between the systems: 'Documents and Settings' is now 'Users' and where my system drive was previously M: it is not the normal C:.

My CD drive is now M:. If I look at a CD and then remove the disk, when I start SE it pops up an error message:

Quote
There is no disk in the drive. Please insert a disk into drive M:.

I get the choice of Cancel, Try Again and Continue, none of which progress matters until I stick a CD in the drive or kill SE and reboot the PC!

Process monitor shows that SE is doing:
Code: [Select]
22:08:20.1596219 vs.exe 4924 CreateFile M:\Documents and Settings\...\My SlickEdit Config\14.0.2\personal.sca NO MEDIA Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: n/a, ShareMode: Read, AllocationSize: n/a

Now, plainly, SE is storing that referernce somewhere. There are more problems: I can right click an object and find all references, but if I then select that reference in the reference toolbar dropdown SE says it can't find the tag file (giving the old M:\Documents and Settings\... path, even though I've changed all the tag file from the tag file dialog.

So, my question is, where does SE keep this stuff and how do I get rid of it? This is seriously cramping my style :(

dunkers

  • Senior Community Member
  • Posts: 633
  • Hero Points: 28
Re: Tag file reference removal
« Reply #1 on: September 21, 2009, 10:08:40 pm »
Seems to be vslick.sta, which gets it from vusrdefs.e. I've got rid of error dialog by deleting vslick.sta and editing vusrdefs.e to remove the "replace_def_data("def-tagfiles-"..." line, but I don't know what I've lost instead.

However, I think this needs looking at for a couple of reasons:

1/ SE isn't happy running two instances using the same config, so I start one with the -sc flag. Naturally, I don't want to have to manually set up SE again for every new config instance, and the options export/import misses stuff. So after the first run of the new SE I copy the existing main config to the new instance. However, even if I change the tag file paths, SE is still using the tag files from the original config directory.

2/ Why is SE not using %USERPROFILE% or %HOMEPATH% isntead of hardcoding the absolute path?

3/ Why is SE using tag file info that doesn't appear in any option or setting dialog? My first attempt was a search/replace of "M:\Documents and Settings\" but that still failed because there were references to a 13.0.2 config.

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 4965
  • Hero Points: 409
Re: Tag file reference removal
« Reply #2 on: September 22, 2009, 01:36:55 pm »
We definitely need something like a VSUSERCONFIG environment variable to improve this problem. This is an issue we will be addressing. We'll keep you posted on what we plan to do.

dunkers

  • Senior Community Member
  • Posts: 633
  • Hero Points: 28
Re: Tag file reference removal
« Reply #3 on: September 22, 2009, 02:25:50 pm »
OK, thanks.

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 4965
  • Hero Points: 409
Re: Tag file reference removal
« Reply #4 on: September 25, 2009, 04:07:43 pm »
What we've done so far is modified the code for V15 so that newly created configs use environment variables (primarily SLICKEDITCONFIGVERSION) to encode various paths (most importantly tag file paths). This won't help existing configs that are moved. We are still looking into that now. I hoping we can come up with something that at least handles tag file paths since that is the biggest problem.

dunkers

  • Senior Community Member
  • Posts: 633
  • Hero Points: 28
Re: Tag file reference removal
« Reply #5 on: September 25, 2009, 04:56:22 pm »
I'm not sure I see the problem here: if the reference doesn't show up on the tag files dialog then surely it's not being used and should be ignored or deleted. In the case of a config being copied the tag file references may be wrong, but the user can drop into the tag file dialog and put them right. When he's done, surely only the references still used by that dialog are valid.

I think this problem may have had a detrimental effect on speed, in that maybe startup times are effected. Subjectively SE seems a bit nippier now I've cleared out the junk, but that could be a psychological thing.

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 4965
  • Hero Points: 409
Re: Tag file reference removal
« Reply #6 on: October 06, 2009, 05:06:56 pm »
The bottom line is that just like you can move a workspace/project files with relative source files around, you should be able to move slickedit config data and point slickedit to the new config data location.  Currently, this does not work smoothly.