Search Support

Beware of phishing attacks: Mozilla will never ask you to call a number or visit a non-Mozilla website. Please ignore such requests.

Learn More

String format in about:config for Top Sites with labels

  • 3 replies
  • 1 has this problem
  • 76 views
  • Last reply by jscher2000

more options

I would like to pin some sites to Top Sites via mozilla.cfg. I have mozilla.cfg file, every changes and modifications works as expected, but after adding browser.newtabpage.pinned string copied from about:config, loading of mozilla.cfg end up with syntax error. The line in mozilla.cfg looks like this:

lockPref("browser.newtabpage.pinned", "[{"url":"https://1.site1.de/","label":"S1","baseDomain":"site1.de"},{"url":"https://2.site2.com/","label":"S2","baseDomain":"site2.com"},{"url":"https://3.site3.fr/index.pl","label":"S3"}]");

I don't know, where to add quotes and where/which brackets.

Chosen solution

This issue is because you are enclosing quotes inside of quotes. Firefox doesn't know where one quote begins and the other ends.

For example, in the code that you have provided, Firefox sees "[{" as one quote and ":" as the second thing side of the quotes.

Instead, you will went to enclose the second part of the lockPref with a single quote ( ' ) instead. This way Firefox will open up the quote and assume that everything after that quote a string until it sees the next ' in your code.

Basically, your code should be, instead:

lockPref("browser.newtabpage.pinned", '[{"url":"https://1.site1.de/","label":"S1","baseDomain":"site1.de"},{"url":"https://2.site2.com/","label":"S2","baseDomain":"site2.com"},{"url":"https://3.site3.fr/index.pl","label":"S3"}]');

Hope this helps.

Read this answer in context 👍 1

All Replies (3)

more options

Chosen Solution

This issue is because you are enclosing quotes inside of quotes. Firefox doesn't know where one quote begins and the other ends.

For example, in the code that you have provided, Firefox sees "[{" as one quote and ":" as the second thing side of the quotes.

Instead, you will went to enclose the second part of the lockPref with a single quote ( ' ) instead. This way Firefox will open up the quote and assume that everything after that quote a string until it sees the next ' in your code.

Basically, your code should be, instead:

lockPref("browser.newtabpage.pinned", '[{"url":"https://1.site1.de/","label":"S1","baseDomain":"site1.de"},{"url":"https://2.site2.com/","label":"S2","baseDomain":"site2.com"},{"url":"https://3.site3.fr/index.pl","label":"S3"}]');

Hope this helps.

more options

You need to escape all quotes inside the JSON string (\").

lockPref("browser.newtabpage.pinned", "[{\"url\":\"https://1.site1.de/\",\"label\":\"S1\",\"baseDomain\":\"site1.de\"},{\"url\":\"https://2.site2.com/\",\"label\":\"S2\",\"baseDomain\":\"site2.com\"},{\"url\":\"https://3.site3.fr/index.pl\",\"label\":\"S3\"}]");
more options

(Deleted duplicate suggestion)

Modified by jscher2000