Contents

Software

Text editing

I use Sublime Text as my general purpose text editor, mostly for Latex. Two most attractive features of Sublime Text are multi-editing and snippets which greatly boost my typing efficiency. More importantly, I use Vim via the Vintage Mode in Sublime.

Programming

I use Python as my main programming language and PyCharm for a full-IDE experience. With a few packages installed such as SublimeREPL, Sublime Text can be easily turned into a light-weight IDE for Python. I occasionally use Jupyter Notebook for interactive programming.

Vim

Vim has been my daily drive for text editing for quite a long time, not only in text editors such as Sublime Text or PyCharm, but also in other places wherever possible. In Chrome, Vimium is a great add-on which can “Vimize” most of actions there. Another amazing software VimMode.spoon takes a step even further and makes Vim possible in any input field in the operating system. One application in particular helpful to me is that I can now write Gmails with Vim.

Website building

I use Hugo and GitHub Pages to generate and host my website respectively. Hugo is a fast static site generator which match my needs perfectly. GitHub Pages provides free hosting and facilitates Git integration.

Others

Tmux is a helpful tool in terminal which allows multiple sessions in a single window. Moreover, sessions created by Tmux are presistent so that they will not be killed once you log out from a cloud system. It can be handy if you use some cloud service such as WRDS Cloud or work on some Remote Cluster to code there. You can detach from Tmux sessions when you are done with today’s work and re-attach to them tomorrow and start from exactly where you have left.

Of course Tmux makes multi-tasking convenient. When editing my website, I normally have sessions at the same time in one window (one for Vim editing; one for Vifm file browsing, one for Git operations and one for Hugo operations), which makes everything much faster and more error-proof.

Quick reference

Text editing

Programming

Vim

Website building

Others