Highlights Mozilla published its standards position on the Web Environment Integrity API proposal draft put forward by the Google Chrome team. A new version of Firefox View is in ...
And yes, it really makes a difference. And, there are even extra extensions for TST: I use a color tabs extenaion for it as welm as an extension that lets me export a tab tree as markdown for use in my notes or to batch “bookmark” them before closing them.
You can customize browser-internal shortcuts with a script in your profile dir.
For example this is my script
‹user profile›/chrome/removeshortcuts.uc.js
var ids = `
viewBookmarksSidebarKb
key_quitApplication
openFileKb
key_savePage
printKb
goBackKb2
goForwardKb2
addBookmarkAsKb
bookmarkAllTabsKb
manBookmarkKb
viewBookmarksToolbarKb
`.replace(/\s+/g,' ').trim().split(' ');
ids.forEach( id=>{
var key = document.getElementById(id);
if (key) key.remove();
});
var originalKey = document.getElementById("key_screenshot");
if (originalKey) {
// Clone the original keyvar newKey = originalKey.cloneNode(true);
// Set the new id and shortcut for the new key
newKey.setAttribute("id", newKey.id+"_redjard_alt");
if (newKey.hasAttribute('data-l10n-id'))
newKey.setAttribute("data-l10n-id", newKey.getAttribute('data-l10n-id')+"_redjard_alt");
newKey.setAttribute("key", "S");
newKey.setAttribute("modifiers", "accel");
// Add the new key to the parent of the original key
originalKey.parentNode.appendChild(newKey);
}
The script removes the shortcuts listed in the beginning and adds an alternate shortcut for screenshots to ctrl+s.
You can see all internashortcuts by opening a browser console and querying the shortcut elements (using regular javascript)
To complete this, probably with ff117 I had to fix the way I load my userchrome files, reminding me I should probably put them here too:
/usr/lib64/firefox/firefox.cfg
// firefox.cfg file needs to start with a comment line
// it is included by having the following two lines in defaults/pref/autoconfig.js:
// pref("general.config.sandbox_enabled", false);
// pref("general.config.filename", "firefox.cfg");
// pref("general.config.obscure_value", 0);
var Services = globalThis.Services;
Services.obs.addObserver((aSubject, _aTopic, _aData)=>{
var chromeWindow = aSubject;
chromeWindow.setTimeout(()=>{
try {
if (chromeWindow.userChromeJsMod) return;
chromeWindow.userChromeJsMod = true;
var chromeFiles = chromeWindow.FileUtils.getDir("UChrm", []).directoryEntries;
var sss = Components.classes["@mozilla.org/content/style-sheet-service;1"].getService(Components.interfaces.nsIStyleSheetService);
while (chromeFiles.hasMoreElements()) {
var file = chromeFiles.getNext().QueryInterface(Components.interfaces.nsIFile);
var fileURI = Services.io.newFileURI(file);
if (!file.isFile()) continue;
if (/(^userChrome|\.uc)\.js$/i.test(file.leafName)) {
// load userChrome.js and *.uc.js (case insensitive) as js file
Services.scriptloader.loadSubScriptWithOptions(fileURI.spec, {
target: chromeWindow,
charset: "UTF-8",
ignoreCache: true,
});
} else if (/\.as\.css$/i.test(file.leafName)) {
// load *.as.css (case insensitive) as css file (in browser scope)
if (!sss.sheetRegistered(fileURI, sss.AGENT_SHEET)) {
sss.loadAndRegisterSheet(fileURI, sss.AGENT_SHEET);
}
} else if (/^(?!(userChrome|userContent)\.css$).+\.css$/i.test(file.leafName)) {
if (!sss.sheetRegistered(fileURI, sss.USER_SHEET)) {
sss.loadAndRegisterSheet(fileURI, sss.USER_SHEET);
}
}
}
} catch (e) {
Components.utils.reportError(e); // [check] Show Content Messages
}
}, 10); // end of timeout
}, "browser-delayed-startup-finished", false);
Now if they would let you customize keyboard shortcuts, it would have been my default browser years ago.
Easy to fix with an extension. Shortkeys
How can you use anything that doesn’t support Tree Style Tabs?
Or do you use Orion or something?
I’ll have to try out tree style tabs. I miss chrome’s tab groups sooo much
When you do, feel free to find the “cheat code” to disable the top tab bar, it makes it a whole lot less noisy to me at least.
Just tried it. This is great. NOW I agree Firefox is better in every way.
Welcome to the club!
And yes, it really makes a difference. And, there are even extra extensions for TST: I use a color tabs extenaion for it as welm as an extension that lets me export a tab tree as markdown for use in my notes or to batch “bookmark” them before closing them.
You can customize browser-internal shortcuts with a script in your profile dir.
For example this is my script
‹user profile›/chrome/removeshortcuts.uc.js
var ids = ` viewBookmarksSidebarKb key_quitApplication openFileKb key_savePage printKb goBackKb2 goForwardKb2 addBookmarkAsKb bookmarkAllTabsKb manBookmarkKb viewBookmarksToolbarKb `.replace(/\s+/g,' ').trim().split(' '); ids.forEach( id=>{ var key = document.getElementById(id); if (key) key.remove(); }); var originalKey = document.getElementById("key_screenshot"); if (originalKey) { // Clone the original key var newKey = originalKey.cloneNode(true); // Set the new id and shortcut for the new key newKey.setAttribute("id", newKey.id+"_redjard_alt"); if (newKey.hasAttribute('data-l10n-id')) newKey.setAttribute("data-l10n-id", newKey.getAttribute('data-l10n-id')+"_redjard_alt"); newKey.setAttribute("key", "S"); newKey.setAttribute("modifiers", "accel"); // Add the new key to the parent of the original key originalKey.parentNode.appendChild(newKey); }
The script removes the shortcuts listed in the beginning and adds an alternate shortcut for screenshots to ctrl+s.
You can see all internashortcuts by opening a browser console and querying the shortcut elements (using regular javascript)
To complete this, probably with ff117 I had to fix the way I load my userchrome files, reminding me I should probably put them here too:
/usr/lib64/firefox/firefox.cfg
/usr/lib64/firefox/defaults/pref/autoconfig.js