7 min read

Master Your Browser — Hi, Firefox!

#Open Rec 10

We used AI while writing this content.

Free and open-source web browser with powerful keyboard shortcuts and command-line capabilities

Firefox?

Open-source?
Cost estimation 🆓
Author Mozilla Foundation
Usage Case Web Browsing, Privacy-focused Navigation
Dependency Internet Connection (for syncing)

Advantages

• Free and open-source
• Cross-platform compatibility
• Strong privacy protection
• Extensive keyboard shortcuts
• Command-line interface support
• Highly customizable
• Active development and community

Platforms supported

Windows macOS Linux Android iOS
Availability
Open-source
Price 🆓 🆓 🆓 🆓 🆓

Case for Firefox

If you browse the web, you're using a browser. But are you using it efficiently?

Most users barely scratch the surface of their browser's capabilities. They reach for the mouse for every action, click through menus for basic tasks, and never realize that their browser could be controlled almost entirely from the keyboard—or even from the command line.

Firefox stands out as a browser that respects your efficiency. Unlike proprietary alternatives, Firefox offers:

  • True keyboard-first navigation: Almost every action has a keyboard shortcut
  • Command-line interface: Launch, configure, and control Firefox from the terminal
  • Open-source transparency: Know exactly what your browser does
  • Privacy by design: No telemetry tracking by default
  • Customization freedom: Modify everything from shortcuts to UI

Why keyboard shortcuts matter

Moving your hand from keyboard to mouse and back wastes time. Studies show that proficient keyboard users can complete tasks 20-40% faster than mouse-dependent users. More importantly, keyboard shortcuts maintain your flow state—that precious mental state where work feels effortless.

Why CLI matters

Command-line control enables:

  • Automation: Script repetitive browser tasks
  • Remote management: Control Firefox on headless systems
  • Profile management: Quickly switch between work/personal profiles
  • Development workflows: Integrate Firefox into your build process
  • Troubleshooting: Launch with specific flags for debugging

Essential Keyboard Shortcuts

Shortcut Action
Ctrl + L or Alt + D Focus address bar
Ctrl + T Open new tab
Ctrl + W Close current tab
Ctrl + Shift + T Reopen closed tab
Ctrl + Tab Switch to next tab
Ctrl + Shift + Tab Switch to previous tab
Ctrl + [1-8] Jump to tab number 1-8
Ctrl + 9 Jump to last tab
Alt + Left Back
Alt + Right Forward
F5 or Ctrl + R Reload
Ctrl + Shift + R Hard reload (bypass cache)

Search and Find

Shortcut Action
Ctrl + F Find in page
Ctrl + G Find next
Ctrl + Shift + G Find previous
' (apostrophe) Quick find (links only)
/ (forward slash) Quick find
Ctrl + K or Ctrl + E Focus search bar

Bookmarks and History

Shortcut Action
Ctrl + D Bookmark current page
Ctrl + Shift + D Bookmark all tabs
Ctrl + B Show/hide bookmarks sidebar
Ctrl + H Show/hide history sidebar
Ctrl + Shift + H Open history in new tab
Ctrl + Shift + O Open bookmarks manager

Window and View Management

Shortcut Action
F11 Toggle fullscreen
Ctrl + + Zoom in
Ctrl + - Zoom out
Ctrl + 0 Reset zoom
Ctrl + Shift + E Tab groups view
Ctrl + N New window
Ctrl + Shift + P New private window
Ctrl + Shift + W Close window

Advanced Navigation

Shortcut Action
Ctrl + Enter Auto-complete .com URL
Shift + Enter Open URL in new tab
Alt + Enter Open URL in new tab (from address bar)
Ctrl + Shift + Delete Clear recent history
F12 Developer tools
Ctrl + U View page source
Ctrl + P Print
Ctrl + S Save page

Text Editing

Shortcut Action
Ctrl + C Copy
Ctrl + X Cut
Ctrl + V Paste
Ctrl + Shift + V Paste as plain text
Ctrl + Z Undo
Ctrl + Y Redo
Ctrl + A Select all

Caret Browsing

Press F7 to enable caret browsing mode, which allows you to navigate pages with arrow keys and select text using the keyboard.

Shortcut Action (in caret mode)
Arrow keys Move cursor
Shift + Arrow keys Select text
Ctrl + Arrow keys Move by word
Home/End Move to line start/end
Ctrl + Home/End Move to page start/end

Cool features

Summarise page

right_click > context menu : ask an AI chatbot


Command-Line Interface (CLI)

Firefox provides extensive command-line options for power users and automation.

Basic Launch Commands

Windows

# Standard launch
"C:\Program Files\Mozilla Firefox\firefox.exe"

# Launch with specific profile
firefox.exe -P "ProfileName"

# Launch profile manager
firefox.exe -ProfileManager

# Launch in safe mode
firefox.exe -safe-mode

macOS

# Standard launch
/Applications/Firefox.app/Contents/MacOS/firefox

# Or using the 'open' command
open -a Firefox

# Launch with specific profile
/Applications/Firefox.app/Contents/MacOS/firefox -P "ProfileName"

# Launch in private mode
/Applications/Firefox.app/Contents/MacOS/firefox --private-window

Linux

# Standard launch (if in PATH)
firefox

# Launch with specific profile
firefox -P "ProfileName"

# Launch profile manager
firefox -ProfileManager

# Launch in safe mode
firefox -safe-mode

Advanced CLI Options

Profile Management

# Create new profile
firefox -CreateProfile "NewProfile"

# Create profile in specific directory
firefox -CreateProfile "NewProfile /path/to/profile/directory"

# Launch with specific profile
firefox -P "ProfileName"

# No remote (allows multiple instances)
firefox -no-remote -P "ProfileName"

Opening URLs

# Open URL
firefox https://example.com

# Open multiple URLs in tabs
firefox https://example.com https://example.org

# Open URL in new tab (requires running instance)
firefox -new-tab https://example.com

# Open URL in new window
firefox -new-window https://example.com

# Open URL in private window
firefox --private-window https://example.com

Search from Command Line

# Search with default search engine
firefox "search term"

# Open search (alternative syntax)
firefox -search "search term"

Debugging and Development

# Enable remote debugging
firefox --start-debugger-server 6000

# Headless mode (no GUI, for automation)
firefox --headless

# Take screenshot in headless mode
firefox --headless --screenshot https://example.com

# Set window size in headless mode
firefox --headless --window-size=1920,1080 --screenshot https://example.com

# Enable console logging
firefox --console

# Disable hardware acceleration
firefox --disable-gpu

Preferences and Configuration

# Set preference from command line
firefox -setDefaultBrowser

# Open about:config
firefox about:config

# Open specific about: pages
firefox about:preferences
firefox about:addons
firefox about:profiles

Kiosk Mode

# Full kiosk mode (fullscreen, no UI)
firefox --kiosk https://example.com

Useful CLI Workflows

Script: Backup Firefox Profiles

#!/bin/bash
# Backup all Firefox profiles

PROFILE_DIR="$HOME/.mozilla/firefox"
BACKUP_DIR="$HOME/firefox_backups/$(date +%Y%m%d_%H%M%S)"

mkdir -p "$BACKUP_DIR"
cp -r "$PROFILE_DIR" "$BACKUP_DIR"
echo "Backup completed: $BACKUP_DIR"

Script: Launch Firefox with Temporary Profile

#!/bin/bash
# Launch Firefox with temporary profile (useful for testing)

TEMP_PROFILE=$(mktemp -d)
firefox -no-remote -profile "$TEMP_PROFILE" &
echo "Temporary profile: $TEMP_PROFILE"

Script: Open Multiple Project URLs

#!/bin/bash
# Open all project-related URLs in new window

firefox -new-window \
  https://github.com/myproject \
  https://myproject.local:3000 \
  https://docs.myproject.com

Installation

Windows

With Winget package manager:

winget search firefox

Output:

Name                    ID                           Version
---------------------------------------------------------------
Mozilla Firefox         Mozilla.Firefox              133.0
Mozilla Firefox ESR     Mozilla.Firefox.ESR          128.5.2
Mozilla Firefox Beta    Mozilla.Firefox.Beta         134.0
Mozilla Firefox Nightly Mozilla.Firefox.Nightly      136.0

Install:

winget install Mozilla.Firefox

macOS

With Homebrew:

# Install Firefox
brew install --cask firefox

# Or for Firefox Developer Edition
brew install --cask firefox-developer-edition

Linux

Debian/Ubuntu

sudo apt update
sudo apt install firefox

Fedora

sudo dnf install firefox

Arch Linux

sudo pacman -S firefox

Flatpak (Universal)

flatpak install flathub org.mozilla.firefox

Android

Install from Google Play Store or F-Droid.

iOS

Install from Apple App Store.


Advanced Tips

Custom Keyboard Shortcuts

Firefox doesn't have built-in custom shortcut configuration, but you can use extensions:

  • Shortkeys: Customize keyboard shortcuts
  • Vimium: Vim-style keyboard navigation
  • Tridactyl: Advanced Vim-like interface

Profile Management Best Practices

Create separate profiles for different contexts:

# Work profile
firefox -CreateProfile "Work"

# Personal profile
firefox -CreateProfile "Personal"

# Development profile
firefox -CreateProfile "Dev"

Launch with desktop shortcuts or shell aliases:

# Add to ~/.bashrc or ~/.zshrc
alias ff-work="firefox -no-remote -P Work &"
alias ff-personal="firefox -no-remote -P Personal &"
alias ff-dev="firefox -no-remote -P Dev &"

about:config Power Tweaks

Access about:config and modify these for enhanced experience:

Preference Value Effect
browser.tabs.closeWindowWithLastTab false Keep window open when closing last tab
browser.ctrlTab.sortByRecentlyUsed true Ctrl+Tab cycles by recent use
browser.tabs.insertAfterCurrent true New tabs open next to current
browser.urlbar.suggest.engines false Hide search engine suggestions
full-screen-api.warning.timeout 0 Disable fullscreen warning

Keyboard Accessibility

Enable additional keyboard features:

  1. Press Alt to show menu bar
  2. Navigate menus with arrow keys
  3. Press F10 to focus menu bar
  4. Use Tab to cycle through page elements
  5. Shift + Tab to cycle backwards

Command-Line Automation Examples

Automated Screenshot Script

#!/bin/bash
# Take screenshots of multiple URLs

URLS=(
  "https://example.com"
  "https://example.org"
  "https://example.net"
)

for url in "${URLS[@]}"; do
  filename=$(echo "$url" | sed 's/https:\/\///g' | sed 's/\//-/g')
  firefox --headless --screenshot "$filename.png" --window-size=1920,1080 "$url"
  echo "Screenshot saved: $filename.png"
done

Continuous Integration Testing

#!/bin/bash
# Launch Firefox for automated testing

firefox --headless --remote-debugging-port=9222 http://localhost:8080 &
FIREFOX_PID=$!

# Run your tests here
npm test

# Cleanup
kill $FIREFOX_PID

Privacy and Security Shortcuts

Quick Privacy Actions

Shortcut Action
Ctrl + Shift + P New private window
Ctrl + Shift + Delete Clear history dialog
F12 → Storage tab Clear site data

Privacy-Enhanced Launch

# Launch with privacy tweaks
firefox --private-window --no-remote

Troubleshooting

Firefox Won't Start

# Safe mode
firefox -safe-mode

# Refresh Firefox (keeps bookmarks, history)
firefox -safe-mode
# Then click "Refresh Firefox" in the dialog

Multiple Instances

# Allow multiple instances with different profiles
firefox -no-remote -P Profile1 &
firefox -no-remote -P Profile2 &

Reset Preferences

# Delete preferences file (backs up automatically)
rm ~/.mozilla/firefox/*.default-release/prefs.js

Conclusion

Firefox is more than a browser—it's a powerful tool that adapts to your workflow. Master its keyboard shortcuts to navigate at the speed of thought. Leverage its command-line interface to automate repetitive tasks. Use profiles to separate work and personal browsing.

The combination of keyboard efficiency and CLI control transforms Firefox from a simple web browser into a productivity powerhouse. Start with the essential shortcuts, gradually incorporate more advanced commands, and soon you'll wonder how you ever browsed any other way.

Open-source. Privacy-focused. Keyboard-driven. That's Firefox.

Copyleft Statement

Renoncé du droit d'auteur

Much of our content is freely available under the Creative Commons BY-NC-ND 4.0 licence, which allows free distribution and republishing of our content for non-commercial purposes, as long as Ronzz.org is appropriately credited and the content is not being modified materially to express a different meaning than it is originally intended for. It must be noted that some images on Ronzz.org are the intellectual property of third parties. Our permission to use those images may not cover your reproduction. This does not affect your statutory rights.

Nous mettons la plupart de nos contenus disponibles gratuitement sous la licence Creative Commons By-NC-ND 4.0, qui permet une distribution et une republication gratuites de notre contenu à des fins non commerciales, tant que Ronzz.org est correctement crédité et que le contenu n'est pas modifié matériellement pour exprimer un sens différent que prévu à l'origine.Il faut noter que certaines images sur Ronzz.org sont des propriétés intellectuelles de tiers. Notre autorisation d'utiliser ces images peut ne pas couvrir votre reproduction. Cela n'affecte pas vos droits statutaires.