Avatar
Miguel is a software engineer and indie game developer currently based in the UK.
He occasionally blogs about software design, continuous integration and game development with Godot Engine.

Terminal Setup on MacOS

terminal-example

Today I would like to share with you my current terminal setup. It basically consists of the following parts:

The Terminal

The default terminal app on MacOS is definitely lacking of functionality. As xanderdunn has written on Medium, iTerm2 has huge advantages compared to the default terminal:

It’s a lot more customizable. For example, I can tell it to shut up and never show me warning dialogues when I’m closing a tab or quitting the app when there’s a running process. Customizability ends up being pretty important for serious developers who are always in the terminal.

Apart from customisation, iTerm2 allows me to split tabs vertically or horizontally on a native basis (different from tmux where it is virtually implemented). With tmux we could achieve similar behavior, however it would take much longer to set it up and even then it would still not be natively implemented. As a Mac user I always strived for fast and easy setup. When I change my machine I do not want to spend weeks on customising my Terminal. iTerm2 has lots of inbuilt features which could only be added to the default terminal by using plugins.

The Shell

I used many shells such as fish or tmux. After all this time I eventually sticked to zsh for different reasons:

  • amazing community
  • lots of customizations
  • syntax highlighting
  • lots of available plugins
  • inline auto-suggestions
  • paginated completion

To just list some of the great features.

The Theme

When I started programming I never thought about customising my terminal or favourite IDE. After many years of trying different things I started to like dark themes. It’s 2017 and there are thousands of different themes out there. My favourite is still Monokai, presumably known from the legendary RAM eating machine, called Atom. Monokai has vibrant colours which help me to see things, even at night. It’s just preference but I really love vibrant colours (and Tron).

I use two different things for the appearance: the Monokai Soda theme for colours and the sorin zsh theme theme for the terminal layout. Note that I made the colours of the Soda theme slightly brighter to have an increase in contrast.

Conclusion

I hope you like my setup. Happy coding!

all tags