<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Carlos A. Blanco</title>
    <description>The latest articles on DEV Community by Carlos A. Blanco (@carloswhite).</description>
    <link>https://dev.to/carloswhite</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F233579%2Fde0ad234-38e4-4771-a9ad-0a3c05e41e37.jpeg</url>
      <title>DEV Community: Carlos A. Blanco</title>
      <link>https://dev.to/carloswhite</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/carloswhite"/>
    <language>en</language>
    <item>
      <title>How to Reliably Install Node.js Using NVM on MacOS</title>
      <dc:creator>Carlos A. Blanco</dc:creator>
      <pubDate>Mon, 27 Jan 2020 22:06:19 +0000</pubDate>
      <link>https://dev.to/carloswhite/how-to-reliably-install-node-js-using-nvm-on-macos-12j0</link>
      <guid>https://dev.to/carloswhite/how-to-reliably-install-node-js-using-nvm-on-macos-12j0</guid>
      <description>&lt;p&gt;Because JavaScript is an ever-growing programming language in terms of popularity and usability, so are the different ways of using its toolings such as &lt;i&gt;Node.js&lt;/i&gt;. Let’s say you’re working on a new ReactJS app. You are most likely to end up using Node.js for the backend. More specifically, its core functionalities such as NPM. What if I told you there’s a &lt;i&gt;reliable&lt;/i&gt; way of getting up and running with Node.js and, consequently, NPM? &lt;/p&gt;

&lt;p&gt;Allow me to introduce you to &lt;b&gt;NVM&lt;/b&gt;, or short for &lt;b&gt;N&lt;/b&gt;ode &lt;b&gt;V&lt;/b&gt;ersion &lt;b&gt;M&lt;/b&gt;anager. This tool allows us to have a more intuitive process when it comes to installing, maintaining and switching between the different versions of Node.js that are either stable releases or not. While it's still common practice to utilize tools such as &lt;i&gt;Homebrew&lt;/i&gt; to install Node.js in your machine, I hope, with this article, to convince you not to. &lt;/p&gt;

&lt;p&gt;In the introductory lines of this article, I mentioned using tools such as NPM (which comes bundled with Node.js) being common practice among professionals nowadays. What is not so often talked about, is how prone to errors you become when you use a package manager such as Homebrew to install Node.js and consequently another package manager which is,  in this case, NPM. &lt;/p&gt;

&lt;h3&gt; Why not Homebrew &lt;/h3&gt;

&lt;p&gt;Personally, I have run into a multitude of bugs and errors when working with ReactJS and trying to install a given version of Node.js along with my project’s dependencies. Another reason why I decided to stop using Homebrew for my Node.js needs, is that while learning some &lt;i&gt;React Native&lt;/i&gt;, the instructor I had been working with was using a different version of Node.js that I was. Naturally, I tried installing said version via Homebrew which led me to some good 30 minutes of tinkering around in an attempt to fix the versioning issues I was having. All in all, we shouldn’t be using a package manager to install &lt;i&gt;another&lt;/i&gt; package manager.&lt;/p&gt;

&lt;h3&gt; Installing NVM &lt;/h3&gt;

&lt;p&gt;&lt;i&gt;Note&lt;/i&gt;: While this is a niche article for users with specific needs, I’d like to keep it as beginner-friendly as possible, and as such, I have included how to install Xcode’s developer tools and how to uninstall Node.js via Homebrew in case someone out there has already installed it and wishes to undo the process. Skip the first step if you already have either Xcode or developer tools installed on your machine. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Fire up the terminal and type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MC8tyIou--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/mazcj2b5ier8bhwshqek.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MC8tyIou--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/mazcj2b5ier8bhwshqek.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Uninstall any instances of Node.js via Homebrew. Type the following in the same order as they appear:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--FSKH_VJI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/x3cnow8x4ux4q6vbhl81.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--FSKH_VJI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/x3cnow8x4ux4q6vbhl81.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Use &lt;i&gt;touch&lt;/i&gt; to create a “bash-profile” on your machine. Type: &lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--PcHK7Kjc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/wk7kvk7dwl0xrplmy7yq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--PcHK7Kjc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/wk7kvk7dwl0xrplmy7yq.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Download NVM via &lt;i&gt;wget&lt;/i&gt;. Type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JinTVdGL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/z8b62wlq6f2f466xszp2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JinTVdGL--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/z8b62wlq6f2f466xszp2.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Refresh terminal's command path. Type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--B4Bv1d1P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/omqhh1cj9x9tn5a9tyzz.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--B4Bv1d1P--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/omqhh1cj9x9tn5a9tyzz.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Check which version of NVM got installed. This should produce an output with the version number. Type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--gdpTVGiW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/7xe1x2fs0sm83vlohi4l.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--gdpTVGiW--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/7xe1x2fs0sm83vlohi4l.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt; Installing Node.js Using NVM &lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;First, let's list all versions available for download. This should produce an output with all Node.js versions. Type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--7f7Wes4a--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/7xmp7e9djajiuyhvxd63.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--7f7Wes4a--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/7xmp7e9djajiuyhvxd63.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;To install the latest stable version, as of early 2020, type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--O53YeADC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/8ae31qz2g0v2gm9w1u4s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--O53YeADC--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/8ae31qz2g0v2gm9w1u4s.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Finally, let's check which versions of both Node.js and NPM are currently being used. Type:&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--MQ0X7_3Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/24bv2l7juf1rmg3j1o3e.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--MQ0X7_3Y--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/24bv2l7juf1rmg3j1o3e.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt; Conclusion &lt;/h3&gt;

&lt;p&gt;With Node.js and NVM installed, you can now reliably use NPM and switch between its versions in a more efficient way. Whether you're working on that new ReactJS app or else, the NPM community has certainly got you covered with Node packages that can help you in your journey. Happy coding!&lt;/p&gt;

</description>
      <category>node</category>
      <category>nvm</category>
      <category>macos</category>
    </item>
    <item>
      <title>Getting started with customizing the terminal </title>
      <dc:creator>Carlos A. Blanco</dc:creator>
      <pubDate>Mon, 23 Sep 2019 18:04:57 +0000</pubDate>
      <link>https://dev.to/carloswhite/getting-started-with-customizing-the-terminal-327p</link>
      <guid>https://dev.to/carloswhite/getting-started-with-customizing-the-terminal-327p</guid>
      <description>&lt;p&gt;This tutorial will teach you the basics of terminal customization. I hope you can tag along so you can start customizing your terminal too. On a side note though: this post assumes you’re either using macOS or Linux. Additionally, I assume you have Git and Vim installed, and that you’re using a package manager such as&lt;a href="https://brew.sh/"&gt; Homebrew&lt;/a&gt;.  &lt;/p&gt;

&lt;h2&gt; The Z Shell &lt;/h2&gt;

&lt;p&gt;In order to start making changes to the terminal, it's necessary to download and install a &lt;em&gt;UNIX&lt;/em&gt; shell. More specifically, the UNIX shell we're using is a refined bundle of tools that allows us to make use of the terminal in a more specific way. Think of it as an improved version of the command line. In this case, we’re using &lt;em&gt;Zsh&lt;/em&gt;, also known as &lt;em&gt;The Z Shell&lt;/em&gt;, an open-source UNIX shell that has been used by thousands of users and also happens to be open-source. Refer to &lt;a href="https://github.com/robbyrussell/oh-my-zsh/wiki/Installing-ZSH"&gt; this&lt;/a&gt; piece of documentation on GitHub written by  &lt;a href="https://github.com/robbyrussell"&gt; Robby Russel&lt;/a&gt; for a well-written in-depth guide on how to install Zsh.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--C2SMCu6v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/h39xy5h8bupczxqd4nvk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--C2SMCu6v--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/h39xy5h8bupczxqd4nvk.png" alt="[1]installingZSH"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's always a good idea to execute the &lt;em&gt;-- version&lt;/em&gt; command once the installation is complete. This helps us make sure the installation went through successfully. It should look like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--_RMHWTaY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hees2s7p2pcahxl4hw9i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--_RMHWTaY--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/hees2s7p2pcahxl4hw9i.png" alt="[2]zsh-version@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Once you execute &lt;em&gt;-- version&lt;/em&gt;, the output message should be similar to this: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--O1GZ3CJj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/c8f8tw9dvrknk5jt1ukd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--O1GZ3CJj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/c8f8tw9dvrknk5jt1ukd.png" alt="[3]zsh-version@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt; Oh My Zsh &lt;/h2&gt;

&lt;p&gt;To make things even better, we’re also installing a framework manager that will help us, well, manage the configurations we judge necessary in the future. While Zsh is what allows us to start tweaking the terminal, Oh My Zsh is where the magic happens. It comes with more than 100 plugins and themes available which is more than enough customization for users like me. Because I have friends that love creating their own plugins and themes, it is also worth noting that Oh My Zsh is open-source. So, rest assured: if you happen not to find what you’re looking for in their catalog, you can certainly build it yourself!&lt;/p&gt;

&lt;p&gt;I recommend installing it using &lt;em&gt;cURL&lt;/em&gt;: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zDeNmyZI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/657j69mjvd3arhetb20b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zDeNmyZI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/657j69mjvd3arhetb20b.png" alt="[4]wget@2x"&gt;&lt;/a&gt;&lt;em&gt;sh -c "$(curl -fsSL &lt;a href="https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"&gt;https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)&lt;/a&gt;"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;However, you can also run &lt;em&gt;Wget&lt;/em&gt; as opposed to cURL:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--AHZC-2va--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/tzt7mq78o5q7995gduan.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--AHZC-2va--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/tzt7mq78o5q7995gduan.png" alt="[4]curl@2x"&gt;&lt;/a&gt;&lt;em&gt;sh -c "$(wget -O- &lt;a href="https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"&gt;https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)&lt;/a&gt;"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;During either of those two installation processes, you might get prompted with something like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--c00oNpVF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/qj7dfwbrwldoenqr4iul.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--c00oNpVF--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/qj7dfwbrwldoenqr4iul.png" alt="[5]defaultshell@2x@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To which you simply press &lt;em&gt;y&lt;/em&gt; and hit enter.&lt;/p&gt;

&lt;p&gt;At this point, any changes that you’d like to take effect on the terminal window you're using should be made on the ~/.zshrc file and &lt;strong&gt;not&lt;/strong&gt; to  &lt;em&gt;~/.bash-profile&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Wzs20VjA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/0vi07w2heo5lkr5ejvjk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Wzs20VjA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/0vi07w2heo5lkr5ejvjk.png" alt="[6]ohMyZsh@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt; Useful Plugins with Zplugin &lt;/h2&gt;

&lt;p&gt;Because this is an introductory post, we’ll keep things simple. As such, we need to install&lt;a href="https://github.com/zdharma/zplugin"&gt; Zplugin&lt;/a&gt; which brings useful tools such as command suggestions, auto-completion, and syntax-highlighting. &lt;/p&gt;

&lt;p&gt;Execute the following via cURL:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--9skqnJ5q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/s0sj4zh1gp6z326j4end.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--9skqnJ5q--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/s0sj4zh1gp6z326j4end.png" alt="[7]zPlugin@2x"&gt;&lt;/a&gt;&lt;em&gt;sh -c "$(curl -fsSL &lt;a href="https://raw.githubusercontent.com/zdharma/zplugin/master/doc/install.sh)"&gt;https://raw.githubusercontent.com/zdharma/zplugin/master/doc/install.sh)&lt;/a&gt;"&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Once the installation is complete, the output message should be similar to this: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--cs2fw4zT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/uutbodtf7e130c8z85fq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--cs2fw4zT--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/uutbodtf7e130c8z85fq.png" alt="[9]zplugininstall@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, for this next step, we will be using &lt;em&gt;Vim&lt;/em&gt;. If you don't have much experience with Vim, it's highly recommended that you &lt;a href="https://www.openvim.com/"&gt; practice&lt;/a&gt; a bit before continuing. The reason being, it’s not hard to mess something up while using it if you don’t know what you’re doing.&lt;/p&gt;

&lt;p&gt;Open &lt;em&gt;~/.zshrc&lt;/em&gt; using Vim:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Nh2DvyD3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/6o1dnh6fv2tjf45w0hqy.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Nh2DvyD3--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/6o1dnh6fv2tjf45w0hqy.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At the end of the file, find the line that reads “###End of Zplugin installer’s chunk” and add the following:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--5g8YvlLa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/5crcsul76k3k44r4ace9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--5g8YvlLa--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/5crcsul76k3k44r4ace9.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Since we’re using Vim, once those three lines are added, simply press &lt;em&gt;ESC&lt;/em&gt;, &lt;em&gt;and&lt;/em&gt; &lt;em&gt;:wq&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Done! You now have command suggestions, auto-completion, and syntax-highlighting.&lt;/p&gt;

&lt;h2&gt; Installing Your First Theme &lt;/h2&gt;

&lt;p&gt;I just so happen to be using the so-called “Dracula" theme made available by &lt;a href="https://zenorocha.com/"&gt; Zeno Rocha&lt;/a&gt;. Check it out using  &lt;a href="https://draculatheme.com/"&gt; this&lt;/a&gt; link.&lt;/p&gt;

&lt;p&gt;Before you start the installation process though, you might need to go through an extra step. That is if you’re using macOS. To agree with Xcode's license agreements, execute the following:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--eQs9NeLm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/rcvdspafhm8szqy9jv4i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--eQs9NeLm--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/rcvdspafhm8szqy9jv4i.png" alt="[11]xCodeLicense"&gt;&lt;/a&gt;&lt;em&gt;sudo xcodebuild -license&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Once you have agreed to Xcode's license agreements, it’s time to clone the Dracula theme into Oh My Zsh’s folder:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Su3F7ae9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/jvmtjqv1vru62bswh4ti.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Su3F7ae9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/jvmtjqv1vru62bswh4ti.png" alt="[12]gitHubClone@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, let’s edit &lt;em&gt;~/.zshrc&lt;/em&gt; once again using Vim, and set it Dracula:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--wVy5RJwv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/q8vhse6fgv0n5ldgbh5o.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--wVy5RJwv--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://thepracticaldev.s3.amazonaws.com/i/q8vhse6fgv0n5ldgbh5o.png" alt="[13]setVim@2x"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt; Final Thoughts &lt;/h2&gt;

&lt;p&gt;Once everything is fully installed, I recommend restarting your machine so that we can make sure the CPU is refreshed and that the changes we made throughout this tutorial can take effect. As a software developer myself, I sure spend a considerable amount of time using the terminal. Tailoring it to my needs only makes sense - and you should, too!  &lt;/p&gt;

</description>
      <category>unix</category>
      <category>zsh</category>
      <category>frameworkmanager</category>
      <category>dracullatheme</category>
    </item>
  </channel>
</rss>
