Categories
Bash Customization MAC Tutorial

Tmux with Native Scrollback on macOS

Tmux is a powerful terminal multiplexer that lets you run multiple terminal sessions within a single window. However, when using tmux with macOS Terminal.app, you’ll encounter two common frustrations: colors don’t display properly, and you can’t use your terminal’s native scroll functionality. Instead, tmux captures scrolling and requires you to enter “copy mode” just to view previous output.

The Problem

Categories
Bash Customization MAC Tutorial

Share Shell History Across Multiple Terminal Sessions

If you work with multiple terminal tabs or windows—especially in iTerm or Terminal.app—you've probably noticed that each session maintains its own isolated command history. This becomes frustrating when you run a command in one tab and want to recall it in another. By default, bash only saves history when a session closes, and each session can overwrite the others' history.

The Problem

Categories
Command Line Development Tools Linux

tmux: A Better Alternative to GNU Screen

I've been a long-time user of GNU Screen, and I've always recommended it to anyone working with remote servers. Screen is an excellent tool that's saved me countless times when SSH connections drop or I need to run long-running processes. But it has one major problem: it's tough to configure and learn.

Recently I discovered tmux, and I'm making the switch. If you're not familiar with terminal multiplexers or you're struggling with Screen's complexity, tmux might be exactly what you need.

Categories
Command Line Development Tools Productivity

Oh My Zsh: Making Your Terminal Beautiful and Productive

Introduction

I've been a bash user for years. It's the default on most Linux systems and Mac OS X, and it works fine. But I kept hearing about Zsh (Z Shell) and how much better it is – better tab completion, better history searching, more customization options.

The problem is that Zsh is intimidating to configure. The configuration file can be hundreds of lines long, and getting it right requires deep knowledge of shell scripting.