oleg-shilo / Favorites.vscode

VSCode extension for managing Favorites
MIT License
23 stars 6 forks source link

Possible to set 'Data Location' path to subdirectory within VSCode portable (relative to 'Code.exe')? #33

Closed carloscadux closed 2 years ago

carloscadux commented 2 years ago

Hi. I'd appreciate your help.

According to VSCode Variables Reference, I was expecting something like this to work:

${execPath}\data_cadu Nonetheless, ${execPath} didn't work.

Is it possible to set 'Data Location' path to a subdirectory within VSCode portable for Windows (relative to 'Code.exe')?

The screenshot below details further the path I'm trying to set within VSCode settings.

Thank you!

CopyQ HTcixA

oleg-shilo commented 2 years ago

yep, good idea. Scheduled for the next release

carloscadux commented 2 years ago

Thanks! Nice to hear about the forthcoming enhancement.

Just a further comment, complementary to the possibility of using ${execPath} in 'Data Location' path.

Even I'm running VSCode portable, when 'Data Location' is empty, the favorites.user folder is created in roaming: C:\Users\%username%\AppData\Roaming\Code\User\favorites.user

I'd suggest when Favorites extension is run from a VSCode portable and 'Data Location' is empty, the favorites.user folder could be created within the portable path, for instance: data\user-data\User\globalStorage\favorites.user

oleg-shilo commented 2 years ago

Agree

carloscadux commented 2 years ago

Hey Oleg, Just using this thread to say you have my solidarity and wishes of a fruitful and fast resolution in favor of Ukraine. Peace and well-being for you and the Ukrainian people.

oleg-shilo commented 2 years ago

Carlos, only now noticed your message. Thank you mate. Appreciate it. I mean it . . . Done, both suggestions.

Though keep in mind that VSCode is failing to expand variables in the values of the config settings. Nothing really can be done about it. It's just a limitation of VSCode.

Though in this case I simply replace ${execPath} with the return value of the process.exePath.

Thus your desired path should be:

${execPath}\..\data_cadu

Note extra .. as exePath is not the dir but the exe file.

carloscadux commented 2 years ago

Hi Oleg. Many thanks for implementing the suggestions!

I'm from Brazil. The news below may be of interest: Brazil Grants Humanitarian Visa to Ukrainians Fleeing War

All my best!

oleg-shilo commented 2 years ago

Thank you Carlos, Appreciate it.

Fortunately for me, I am already ~25 years in Australia so I am in no danger. But I will make sure my friends and relatives are aware. It says a lot about the Brazilian government (at least about the compassionate side of it).

carloscadux commented 2 years ago

Thus your desired path should be:

${execPath}\..\data_cadu

Note extra .. as exePath is not the dir but the exe file.

Thanks for the implementation! Working perfectly 👍