Most of these are open source and are stored in various git repos around GitHub. sudo apt install zsh & chsh -s $( which zsh ) Use Antigen for zsh management To install zsh on WSL grab it from apt and then set it as your default shell. You can check which shell you're using by running echo $SHELL. Zsh is bash compatible so there's no issues with changing WSL Ubuntu to use it also. On modern versions of MacOS zsh is the default shell. Install zsh (Windows WSL and older versions of MacOS) Install it with brew: brew install -cask iterm2. Here is my setup for a typical node and react application running on the right-hand side and the left hand side is for working in.įull documentation for iterm2 is on their site. You can store profiles for starting a set of terminals (BE + FE is very common!) just like tmux sessions. It has a really nice autocomplete feature ( ctrl- ), full search and history. You can have tabs, pane splitting, floating windows, transparency, image backgrounds and full colour. ITerm2 is a really nice replacement for the MacOS terminal. Set wsl as the default shell for your user in Windows Terminal.įull documentation for wsl is on their site. Windows Terminal provides tabs, profiles, colour, themes and everything you would expect from a modern terminal application. Next download and install the Windows Terminal from. You can use the same username as you use on MacOS to make custom scripting easier for yourself later. You will be asked for a username and password because it's a new instance of linux. Run this in a cmd.exe window wsl -install To get a modern shell on windows you must install WSL. If you prefer to do it manually then read on!□ Use WSL2 and Windows Terminal on Windows This set of scripts will setup your entire dev environment on all your computers - Windows or Mac! You can customize them to suit your needs. If you want to easily install and configure all these tools in one command please check out my solution. It took me around 30 hours to investigate and configure all of these tools on MacOS and Windows WSL. I'll also show settings to change, aliases and scripts that will make the terminal more productive for you. New cat (bat) on the same file - syntax highlighting and formattingīut tooling is just half the story. New ls (Exa) - git aware with icons and colour hints Let's go! A quick look at default Vs modern terminal tools This article also explains all the tools I use and how I keep the same terminal setup consistent on MacOS and Windows! Keeping any shell changes you make on one machine up to date on all the machines you code on is a nightmare without the right tooling. Keeping developer experience consistent across machines Terminal prompts can be made git aware and use colour to indicate state so you don't have to query git so often. You can replace tools like ls or cat with modern equivalents that support full colour, unicode icons, git state and more. But other developer tooling has advanced quite a bit since then. Many of the terminal tools that come with unix environments are functionally similar to how they were 20 years ago. The latest version lets you run a full Ubuntu instance that integrates seamlessly with the underlying windows instance.īy using WSL2 you can have a (mostly) identical developer experience jumping between MacOS and Windows. Windows "WSL" (Windows Subsystem for Linux) is a great tool for this you can use on Windows 10 and newer. I need to use the same tools and the same experience on both. bash_aliases/.zsh_aliases: #Credits: Luke Smith.I regularly code on both MacOS and Windows machines and I was always annoyed how different the default experiences are on each. You may also want to preview the files: fzf ‐‐preview ‘cat ’ Fuzzy completion for PIDs is provided for the kill command: kill -9. config/default.yml** (my first result is. md: fzf ‐‐query=.md$įuzzy search can be triggered with **: cd **, cd ~/.config/cal** (it searches for files and directories under ~/.config that match `cal`: /home/myUser/.config/calcurse), vim. Brew install fzf # macOS $(brew -prefix )/opt/fzf/install # To install useful key bindings and fuzzy completion git clone &hyphen &hyphen depth 1 ~/.fzf # GNU/Linux ~/.fzf/installĭo you want to enable fuzzy auto-completion? (/n) yĭo you want to enable key bindings? (/n) yĭo you want to update your shell configuration files? (/n) y
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |