As you might not know, I was very serious about coding the moment I started. I did a quite amount of work on the basics like English and typing to make sure I am well suited to start coding. And as for the computer and editors, I will be using every day as a programmer, I definitely would love to spend lots of my time tweaking it, and here comes the Dotfiles you are looking at.
It was about the time I started coding, around May 2016, the same time I was comfortable with typing and English(a big deal). I made my very first git commit to my Dotfile(a vimrc file for Vim) on my MacBook Air after watching this talk on youtube.
" ~/.vimrc " Mapping let mapleader = "\<Space>" nnoremap <leader>w :wa<CR> nnoremap <leader>q :q<CR> nnoremap <leader>o :NERDTreeToggle<CR> nnoremap <leader>y :sy on<CR> " Interface syntax on set relativenumber set t_Co=256 colorscheme darkerdesert set laststatus =2 " Bundle Begins set nocompatible " be iMproved, required filetype off " required set rtp+=~/.vim/bundle/Vundle.vim call vundle#begin() Plugin 'VundleVim/Vundle.vim' Plugin 'flazz/vim-colorschemes' Plugin 'scrooloose/nerdTree' " Plugin 'vim-airline/vim-airline' call vundle#end() " required " Bundle ends
Frankly speaking, I had no idea what that is when I was doing it, I was following the instructions in the talk and typed that out. But I did notice that I changed the color scheme, and I was super happy then.
20 days after my first Vimrc, after some acknowledgments from googling and replays from the same video, I initialized my
.tmux.conf in this commit.
unbind C-b set -g prefix C-a #gogogo # remember source code # tmux souce-file ~/.tmux.conf
Again, had no idea what that actually is other than the commentary from youtube in my head(Nah, I could know
# stands for comments, I was a genius XD).
Around June 2016, I watched a few Vim talks from
Thoughtbot’s Youtube channel(they got lots of awesome vim talk by the way), and one of the first things the speaker mentioned to do before Vimming, was changing the
caps lock key to
escape key. And I followed it with Karabiner, that was the first keyboard remap and it certainly paid off thanks to Karabiner and Thoughtbot.
I’m not a showy person but in July 2016, I was pretty comfortable with Vim and Tmux, and I was really happy with it, so I started to show off my terminal and editor in the Readme in this commit with a gif like this: That was a Tmux navigation demo with some splitting. What worth mentioning is that I was excited enough to spend a whole day capturing that gif in a Starbucks.
Atom was a cool editor and a big deal in 2016 and absorbed a huge community which caught my interests. In the mean time, I was stuck on some vim configuration and pissed about some Plugins’ compatibilities, bugs. I couldn’t help jumping into Atom. And I got to say Atom was great(and it still is), in a lot of ways, like plugins(especially the Vim mode), UIs and of course the community. I started to use Atom all time and quit Vim.
It was about the time I started working on my master’s Degree in the US. VScode came in, and as software trends to be, the new one was cooler and faster. In September 2016, even the community couldn’t compare with Atom, VScode was pretty popular in my team. I spent a few month on it then, even without a good configurable Vim plugin.
After finished the first semester in grad school. I started focusing on React development. And at the time of Dec 2016, two years after react landed, React was still not that well supported in editors. Take Vim as an example, I couldn’t even comment correctly for JSX styled commenting with any plugin, and I had to write my scripts to accomplish that basic functionality, so as some other features in VScode. Yet Atom, as a more matured editor with probably the biggest community at that time, had most the tools/plugins I needed, and the Vim plug was unbelievably awesome. So I jumped back and restarted configuring Atom.
If you asked me to name one major reason to get back to Vim, I would say the performance on multitasking with Tmux, and that’s the top priority on my workflow. I would never say Vim is the best on UI(even for me it is), Plugins, nor compatibilities/extensibility. But it might be the simplest and cleanest one and lives inside of terminal for Tmux, and by that, I can do a big mount of multitasking there. I’m the kind of guy who loves to leave one piece of works and turning to something else and then move back, or multi-tasking if you will. I can not find another editor lives inside of terminals, and capable of running thirty or forty windows at the same time without being laggy. But Vim can. So even it was an ordeal to accomplish some basic functionalities like autocompletion, snippets, or even coloring, Vim makes things simpler and allows me to dive into more complicated tasks easier. And just like the current stage of programming field, where technologies are booming with new languages, frameworks, tools emerging every year or even every week, I need the thing to make complicated things simpler so I can keep multitasking on every single task without too much distraction. Vim made me willing to pay the trade off, and I spent about a month in winter(Jan 2017), fixed most the trivial yet annoying side of Neovim and tmux, and got back.
to be written
to be written
Questions, Comments, Suggestions?Open an Issue