Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
A polished Linux terminal is four separate layers: the terminal emulator draws the window and starts a process, the shell interprets commands, the prompt presents useful context, and keybindings control either the emulator or the shell’s line editor. Configure those layers independently and you can change a font without breaking your shell, replace Bash with Zsh without rewriting emulator shortcuts, and add a prompt without losing a reliable rollback path.
This guide uses documented configuration paths for GNOME Terminal, Alacritty, WezTerm, and Starship. Names, defaults, and syntax can change, so check the documentation for the exact version installed on your distribution before copying a configuration example.
Understand the four layers before changing anything
A terminal window is not the shell itself. The emulator provides the window, rendering, scrollback, tabs or panes, copy and paste, and a way to launch a command. The shell is the program that reads commands, expands them, runs programs, and supplies its own line-editing behavior. The prompt is text (and sometimes symbols) printed by the shell or by a prompt framework. Keybindings may belong to the emulator, the shell’s line editor, the desktop environment, or the application currently running inside the terminal.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Scan for outdated or missing drivers - takes under a minuteDriver Scan →Clear out junk files and repair common Windows errorsFree Scan →| Layer | What it controls | Typical configuration surface |
|---|---|---|
| Terminal emulator | Window rendering, font, colors, scrollback, tabs, panes, and process launch | GNOME Terminal profile controls, Alacritty configuration, or WezTerm’s Lua configuration |
| Shell | Command parsing, startup behavior, aliases, functions, and line editing | The shell’s startup files and the emulator’s command setting |
| Prompt | The information shown before each command, such as the current directory or version-control state | Built-in shell prompt settings or a cross-shell tool such as Starship |
| Keybindings | Emulator actions or command-line editing commands | Emulator binding configuration, shell line-editor settings, desktop shortcuts, or an application’s own keymap |
Keeping these boundaries clear makes troubleshooting much easier. If a font is wrong, inspect the emulator profile. If the command line behaves differently, inspect the shell. If a shortcut works in one program but not another, identify which layer consumed the key sequence.
#1 Best Overall
- Brilliant Color Illumination- With 11 unique backlights, choose the perfect ambiance for any mood. Adjust light speed and brightness among 5 levels for a comfortable environment, day or night. The double injection ABS keycaps ensure clear backlight and precise typing. From late-night tasks to immersive gaming, our mechanical keyboard enhances every experience
- Support Macro Editing: The K671 Mechanical Gaming Keyboard can be macro editing, you can remap the keys function, set shortcuts, or combine multiple key functions in one key to get more efficient work and gaming. The LED Backlit Effects also can be adjusted by the software(note: the color can not be changed)
- Hot-swappable Linear Red Switch- Our K671 gaming keyboard features red switch, which requires less force to press down and the keys feel smoother and easier to use. It's best for rpgs and mmo, imo games. You will get 4 spare switches and two red keycaps to exchange the key switch when it does not work.
- Full keys Anti-ghosting- All keys can work simultaneously, easily complete any combining functions without conflicting keys. 12 multimedia key shortcuts allow you to quickly access to calculator/media/volume control/email
- Professional After-Sales Service- We provide every Redragon customer with 24-Month Warranty , Please feel free to contact us when you meet any problem. We will spare no effort to provide the best service to every customer
Choose a starting emulator and preserve a rollback
You usually do not need to replace the terminal that came with your desktop. If your goal is a different font, color palette, cursor, or startup shell, configure the existing emulator first. GNOME Terminal exposes these controls through profiles, including cursor style, font and general style, encoding, colors, custom commands and shells, login-shell behavior, scrollbar settings, bell behavior, and what happens when a terminal exits.
Alacritty and WezTerm use text configuration instead. Alacritty documents shell and keyboard settings in its configuration file. WezTerm keeps key assignments and related options in ~/.wezterm.lua. Text configuration is convenient for version control and repeatable setups, while graphical profiles are easier to inspect when you are making a first change.
Before editing a file, copy the working version to a clearly named backup. Make one change at a time, open a fresh window, and keep an already-working terminal open while testing. If a new setting prevents the emulator from starting, restore the backup from another terminal or a text console.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Set the shell the emulator should launch
GNOME Terminal: use the profile’s custom command or shell control
Open the profile preferences and find the command or custom-command setting. Select the shell executable and provide its arguments exactly as the profile form expects. GNOME Terminal passes the command and arguments as written and gives the process the terminal’s environment. If the shell is not on PATH, use its full executable path.
The profile may also offer a login-shell option. Whether that option is appropriate depends on your distribution and the startup files used by the shell. Do not assume that Bash’s .bashrc, .profile, Zsh’s .zshrc, and other login startup files are interchangeable; they can be read in different circumstances.
Rank #2
- Tri-mode Connection Keyboard: AULA F75 Pro wireless mechanical keyboards work with Bluetooth 5.0, 2.4GHz wireless and USB wired connection, can connect up to five devices at the same time, and easily switch by shortcut keys or side button. F75 Pro computer keyboard is suitable for PC, laptops, tablets, mobile phones, PS, XBOX etc, to meet all the needs of users. In addition, the rechargeable keyboard is equipped with a 4000mAh large-capacity battery, which has long-lasting battery life
- Hot-swap Custom Keyboard: This custom mechanical keyboard with hot-swappable base supports 3-pin or 5-pin switches replacement. Even keyboard beginners can easily DIY there own keyboards without soldering issue. F75 Pro gaming keyboards equipped with pre-lubricated stabilizers and LEOBOG reaper switches, bring smooth typing feeling and pleasant creamy mechanical sound, provide fast response for exciting game
- Advanced Structure and PCB Single Key Slotting: This thocky heavy mechanical keyboard features a advanced structure, extended integrated silicone pad, and PCB single key slotting, better optimizes resilience and stability, making the hand feel softer and more elastic. Five layers of filling silencer fills the gap between the PCB, the positioning plate and the shaft,effectively counteracting the cavity noise sound of the shaft hitting the positioning plate, and providing a solid feel
- 16.8 Million RGB Backlit: F75 Pro light up led keyboard features 16.8 million RGB lighting color. With 16 pre-set lighting effects to add a great atmosphere to the game. And supports 10 cool music rhythm lighting effects with driver. Lighting brightness and speed can be adjusted by the knob or the FN + key combination. You can select the single color effect as wish. And you can turn off the backlight if you do not need it
- Professional Gaming Keyboard: No matter the outlook, the construction, or the function, F75 Pro mechanical keyboard is definitely a professional gaming keyboard. This 81-key 75% layout compact keyboard can save more desktop space while retaining the necessary arrow keys for gaming. Additionally, with the multi-function knob, you can easily control the backlight and Media. Keys macro programmable, you can customize the function of single key or key combination function through F75 driver to increase the probability of winning the game and improve the work efficiency. N key rollover, and supports WIN key lock to prevent accidental touches in intense games
Alacritty: specify a program and arguments in its configuration
Alacritty’s documented configuration accepts a shell program and an argument list. On Linux, BSD, and macOS, its default is the value of $SHELL, or the user’s login shell when $SHELL is unset. An explicit Zsh launch can be represented conceptually as the program /bin/zsh with the argument -l. The exact file format and key names depend on the installed Alacritty version, so check that version’s current configuration reference before pasting an older example.
Check what actually launched
Open a new tab or window after changing the profile or configuration; GNOME’s instructions specifically call for a new tab or window to observe the custom command. The command printf '%sn' "$SHELL" prints the shell path stored in the environment. Treat that as an environment-variable check, not proof of the process currently handling input: a parent process can preserve an old value while launching something else.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Make the emulator readable before decorating it
Choose a font with distinct characters, a size you can read at the distance you normally sit, and colors with sufficient contrast. GNOME Terminal puts font, style, and color choices in the profile. Apply those changes before adding symbols to the prompt so you can tell whether a problem is typographic or caused by prompt configuration.
A plain-text prompt works with any readable monospace font. If you choose an icon-heavy Starship preset, its documentation lists a Nerd Font as a prerequisite. Install and select that font in the emulator profile; otherwise icons may appear as empty boxes or unrelated glyphs. This requirement applies to the symbols, not to Starship’s basic text output.
Build a prompt that gives useful context
A good prompt answers a small number of questions without becoming a dashboard. Current directory is useful for nearly everyone. Version-control status can help when you work in repositories. A duration, exit-status indicator, or active language/runtime version can be valuable when you routinely need it, but every additional module consumes visual space and can make errors harder to spot.
Rank #3
- The Keychron C2 (non-backlight version) is a 104 keys full size wired retro color keycaps mechanical keyboard made for Mac and Windows. Engineered to maximize your productivity with most popular full size layout with number pad.
- With a layout optimized for Mac, the C2 has all necessary multimedia and function keys (Num Lock works with Windows only), while compatible with Windows, and comes with a dedicated Siri or Cortana key. Extra keycaps for both Mac and Windows operating systems are included.
- Designed with reliability in mind, the C2 comes with USB Type-C wired connection with a braid cable, which ensures a constant power supply, and best to fit home and light gaming. Inclined bottom frame and 2 level adjustable feet (6˚ & 9˚) makes the C2 more comfortable to type.
- The pre-installed tactile Keychron switch providing unrivaled tactile responsiveness with up to 50 million keystroke durable lifespan.
- Outfitted the C2 Non-Backlight version with retro-inspired color scheme looks as good in the office as it does in the game room.
Use the shell’s built-in prompt first if it is enough
Each shell can generate its own prompt. This keeps the number of moving parts small and is a sensible starting point when you only need a path, username, host, or a simple status marker. The exact syntax is shell-specific; consult the manual for the shell and startup mode you actually use rather than copying a Bash setting into Zsh or vice versa.
Use Starship for one prompt across several shells
Starship is a cross-shell prompt project with installation, initialization, configuration, and preset documentation. Install it using the instructions for your distribution, then add the initialization command for the shell you launch. Its README gives this Bash example:
eval "$(starship init bash)"
Place that line in the Bash configuration file used by your sessions. For another shell, use the corresponding initialization snippet from Starship’s documentation rather than the Bash command. Start with the default prompt, confirm it renders correctly, and only then enable modules or an icon preset. This staged approach makes a missing font, a malformed configuration value, or a startup-file error easy to isolate.
Decide where each keyboard shortcut belongs
First classify the action. Opening a tab, splitting a pane, copying selected text, or switching profiles is an emulator operation. Moving by words, deleting a token, searching command history, or accepting a completion is a shell line-editor operation. A program running inside the terminal—such as an editor or multiplexer—may consume the same sequence before either layer sees it.
WezTerm: configure assignments and, optionally, a leader key
WezTerm documents key assignments in ~/.wezterm.lua, including modifier names and leader-key configuration. A leader key creates a modal sequence: press the leader, then another key for the action. This is powerful for pane and tab workflows, but it changes input behavior. Unmatched presses can be swallowed instead of passed through to the terminal, so choose a leader combination you will not need as ordinary text and test both matching and non-matching sequences.
Free tools Windows power users keep installed
One-click scans. No signup required.
Rank #4
- 【Dreamy Rainbow Gaming Keyboard】K521 Gaming Keyboard Adopts a Different LED Backlight Design, Upgraded on the Traditional LED Backlight Effect, Making the Light More Penetrating, Giving You a More Dazzling Visual Effect, Making Your Gaming Process More Enjoyable
- 【One Touch Opens & Visual Feast】The K521 Red Dragon Keyboard has a One-Touch on/off Lighting Button for Added Convenience. It also has a Three-Position Adjustable Breathing Mode and a Four-Position Adjustable Brightness Lighting Mode
- 【Mechanical Feeling & Fast Tapping】The PC Keyboard Keys are Designed for Mechanical Feeling, Giving You a Better Feel During Use and the Ability to Trigger Keys Quickly, Allowing You to Win All Your Games
- 【19 Keys Anti-Ghosting Keyboard】Anti-Ghosting Ensures Every Button Can Be Triggered. This Allows You to Trigger Key Combinations In The Game Accurately, And Each Skill Can Be Accurately Released to Increase Your Winning Rate. Redragon K521 Will Be Your Perfect Partner
- 【12 Multimedia Combination Keys】The K521 Wired Gaming Keyboard is Equipped with 12 Multimedia Keys That Can Greatly Enhance Your Gaming/Office Efficiency and Make It More Convenient to Use
Alacritty: specify key, modifiers, mode, and action
Alacritty’s binding model documents the key, modifier keys, mode, and an action or command. Its configuration can also unset defaults. Review the defaults for your installed release, add one mapping, and test it before adding another. A binding that works in the emulator may still be intercepted by a desktop shortcut or by an application running inside the terminal.
Change one mapping at a time
- Write down the default behavior you are about to replace.
- Add a single emulator or shell binding.
- Open a fresh terminal and test the intended action.
- Test the same key while a full-screen terminal application is active.
- Test an ordinary character that shares the modifier or leader sequence.
- Keep the backup until the new mapping survives a normal work session.
There is no universal, conflict-free shortcut scheme across Linux desktops. Desktop-level shortcuts, emulator defaults, shell editing modes, and terminal applications all compete for key sequences.
Add shell integration only when you need it
Shell integration is an optional bridge between the shell and the emulator. WezTerm documents escape sequences for three kinds of metadata: OSC 7 can communicate the current working directory, OSC 133 can mark prompt, input, and output zones, and OSC 1337 can carry user variables. The shell must emit these sequences; enabling an emulator option alone cannot create metadata that the shell never sends.
When the sequences are present, WezTerm can use the working directory for behaviors such as opening a new tab in the current directory and can support navigation or selection of command output. Keep this feature WezTerm-specific unless the documentation for another emulator describes an equivalent integration and its required shell hooks.
A complete build sequence
- Record the baseline. Note the emulator, shell, profile, font, and any shortcuts that currently work. Copy configuration files before editing.
- Configure the emulator profile or file. Set font, colors, cursor, scrollback, and other visual options. Do not change the shell or keybindings in the same edit.
- Launch the desired shell. Use GNOME Terminal’s custom command, or define the shell program and arguments in Alacritty or the emulator you selected. Use a full path when the executable is not on
PATH. - Open a new window. Confirm that the shell starts, that ordinary commands run, and that closing the shell behaves as expected.
- Add the prompt. Keep the shell’s basic prompt or initialize Starship. Confirm text output before enabling icon presets or extra modules.
- Add one keybinding. Decide whether the action belongs to the emulator or line editor, then test it in a fresh session and inside a terminal application.
- Enable integration if justified. Configure the shell to emit the metadata required by the emulator feature you want, such as working-directory awareness in WezTerm.
- Save a known-good version. Label the backup with the date or change made, and retain a way to launch the emulator without the new configuration.
Choose between graphical and text configuration
| Decision axis | Graphical profile approach | Text-configured approach |
|---|---|---|
| Configuration surface | GNOME Terminal profile controls expose appearance, command launch, login behavior, and terminal behavior in a UI. | Alacritty and WezTerm expose settings in files, making changes inspectable and repeatable. |
| Shell launch | Choose the profile’s default or custom command and supply arguments. | Declare a shell program and arguments; defaults may come from $SHELL or the login shell. |
| Shortcut model | Use the emulator’s documented shortcut controls where available. | Alacritty supports binding fields and unsetting defaults; WezTerm supports assignments, modifiers, and leader behavior. |
| Integration | Basic shell use requires no metadata exchange. | WezTerm can consume OSC 7, 133, and 1337 metadata when the shell emits it. |
| Maintenance concern | UI labels can move between releases, but the profile keeps settings discoverable. | Syntax and defaults can change; match examples to the installed version. Distribution packaging can also lag, as WezTerm notes for some Arch packages. |
None of these documented options is a universal winner. Choose the surface that matches how often you change settings, whether you keep configuration under version control, and how much integration you need.
Best Value
- Tactile Quiet mechanical key switches with a satisfying tactile bump you feel - for precise feedback, reactive key reset, and less noise so your typing doesn't disturb those around you
- Low-profile keys, more comfort: A keyboard layout designed for effortless precision, with a full-size form factor and low-profile mechanical switches for better ergonomics
- Smart illumination: Backlit keys light up the moment your hands approach the cordless keyboard and automatically adjust to suit changing lighting conditions
- Faster workflow, more customization: Customize Fn keys, assign backlighting effects, enable Flow cross-computer, multi-device control, and more in the improved Logi Options+ (1)
- Multi-device, multi-OS: Pair MX Mechanical Bluetooth wireless keyboard with up to 3 devices on nearly any operating system via Bluetooth Low Energy or included Logi Bolt receiver(2)
Troubleshoot the common failure modes
The terminal opens and closes immediately
The configured command may be misspelled, missing, or exiting because an argument is invalid. Open the emulator with the previous profile or configuration, verify the executable path with the tools available on your distribution, and add arguments one at a time. A full path avoids ambiguity when the shell is not on PATH.
The expected shell starts, but startup customizations are missing
Check whether the emulator is launching a login shell, an interactive non-login shell, or a wrapper command. Those modes can read different startup files. Compare the profile’s login setting with the shell’s documentation and move initialization code only after you understand which mode reads it.
Prompt icons are boxes or question marks
Select a font that contains the required glyphs, or remove the icon-heavy preset and use text modules. A Nerd Font is relevant to Starship symbols; it is not required for a plain prompt.
Recommended Free Tools
A shortcut does nothing
Check the emulator’s current defaults, desktop shortcuts, and the application running inside the terminal. In WezTerm, verify that a leader key was pressed in the correct order and remember that unmatched leader sequences may be swallowed. In Alacritty, confirm the key, modifier, mode, and action fields match the installed configuration format.
Working-directory or output navigation features do not work
Verify that the shell is emitting the escape sequences required by the emulator. WezTerm’s OSC features depend on shell output; an emulator setting cannot infer the directory or prompt boundaries when those sequences are absent.
Keep the setup maintainable
- Document which emulator profile or file launches which shell.
- Keep prompt initialization separate from emulator configuration.
- Use comments or a change log for non-obvious keybindings.
- Retain a known-good backup and test after upgrades.
- Read the documentation matching your installed version and distribution before applying examples.
- Prefer a small prompt and a few predictable shortcuts over a configuration whose behavior you cannot explain.
The result should feel consistent without becoming opaque: the emulator handles presentation and terminal actions, the shell handles commands, the prompt shows selected context, and keybindings are assigned deliberately to the layer that owns each action.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

