Temporary Preferences via Cookieless

If you use Mojeek with the default settings or if you have a preference cookie set then you can still use cookieless URL parameters to temporarily change the preferences for the current search.

This can be useful when you temporarily want to change a preference like the length of the snippets or the number of results per page.

Example

For example, let’s say that I normally turn off descriptions on the search results page:

But, for this search, I want to turn on the descriptions.

In that case, I can add a parameter to this search to temporarily turn descriptions on.

Just click on the address bar in your browser, and type the parameter at the end of the address:

Animation of adding dlen URL parameter to the browser address bar.

After making the changes, press the Return key to apply the new parameter. That turns the descriptions back on for this search.

And, navigating to other pages keeps the parameter intact. In other words, if you click on the link for page two of the search results then Mojeek is smart enough to apply the parameter there too.

But, the next time you search on Mojeek, your default preferences will be used.

Parts of a URL Parameter

In this example, we are using Mojeek’s dlen URL parameter to change the length of the description in the search results.

So, here is what the address from the search results page looks like before and after the change:

# Before 
https://www.mojeek.com/search?q=amd+zen+5

# After 
https://www.mojeek.com/search?q=amd+zen+5&dlen=160

Specifically, I added the text &dlen=160 to the end of the address.

Let’s examine what I added.

A URL parameter has four parts:

  • Ampersand & which allows you to add a parameter to an existing query: that is, the part after ? in the address.
  • The parameter name of the Mojeek preference which is dlen in our case.
  • The equals sign = which separates the parameter name and value.
  • The value which is 160 in our case (the default snippet length).

The ampersand & and equals sign = are standard parts of a parameter and won’t change.

The parameter value is typically a number. But, some of Mojeek’s preferences use letters as parameter values. For example, the Search Selections preference uses text to specify the list of alternative search engines that appear under the results.

I’ll talk about Mojeek’s parameter names and possible values below.

Discovering Mojeek’s URL Parameter Names and Values

The name of the URL parameter, such as dlen, and an example of acceptable values can be derived from the Search Settings page.

If you visit that page, you will notice the Cookieless preview on the right side.

Now, if you want to know the parameter name and an example value for a given preference then you can begin by changing the preference in question. Use the graphical user interface on the settings page to modify a preference.

For example, let’s say that you temporarily want to add Qwant to your search selections.

Begin by scrolling down to the Search Selections section. And, click the checkbox for Qwant.

Animation showing me toggling a preference and showing the parameter name and value in the Cookieless preview.

Now, if you look at the Cookieless preview, you can see the preview area has been populated with the prospective changes.

In this case, the qss parameter name was used. And, the value Brave,Ecosia,Qwant,Startpage was given.

Note: The parameter values in this case are capitalized. Make sure to match the capitalization of the parameter name and values given in the Cookieless preview.

Note: The default search engines–Brave, Ecosia, and Startpage–were automatically specified.

So this Cookieless preview gives us a an example of the parameter name and the parameter value for the setting we changed.

In this case, we can also exclude the default search engines since we’re only interested in Qwant. So, here is the example that we’re given and what we might choose to put in the address later:

# Before 
https://www.mojeek.com/?qss=Brave,Ecosia,Qwant,Startpage

# After
&qss=Qwant

Above, notice how I formatted the example to fit my needs:

  • I removed the example address: https://www.mojeek.com/
  • I changed the ? to a & This works as long as you are adding to the end of a search query. You’ll always use the ampersand in that case.
  • I removed the search engines that I was not interested in and the commas used as separators: Brave,Ecosia,Startpage

After formatting the example to fit my needs, I’m ready to use the new parameter and value in the address bar.

(For clarity, you can’t edit the preview. But, you can copy the text from the preview, paste it into a text editor like Notepad, and edit it there.)


While these instructions are complicated, typing &dlen=300 into the address bar is easy. And, it will get easier once you memorize a few common parameters.

Also, I’ll mention that you can customize the search engines in Firefox and Vivaldi. So, you might look into creating some additional presets there if you want to make these temporary parameters semi-permanent.

References

1 Like

Thanks a lot for spelling this one out @mike, and in quite a considerable amount of detail.

If it’s ok with you I’m probably going to keep this long post in my back pocket for the next time someone could be assisted by this, it’s quite the resource :pray:

1 Like

No problem with using it. I’m glad you think it would be useful.


Also, as a reminder to myself, I was not able to consistently get Wayland screen captures to work. Specifically, Wayland capturing software would drop frames on my machine. So, I switched to X11 and used Peek.

The version of Peek in the openSUSE Tumbleweed repository can output to WEBM. So, I converted those videos to WEBP animated images with FFmpeg, which is what Discourse accepts.

ffmpeg -i peek_output.webm -loop 0 discourse_upload.webp

Looking ahead, X11 and Peek are going away. So, I’d probably try using GNOME’s built-in screen recorder. I vaguely remember that working in Vanilla. Though, SuSE is typically a KDE distribution. So, I’d have to install GNOME just for screen recording.

References

1 Like