This is the series 5 of my blog posts about some nifty techniques of using Nvim, which continues the previous series.

I have been using Neovim for personal projects for over a year. Recently, I want to set up Neovim system wide so that other users in the server can also use my config if they want. In this post, I will describe the necessary configurations.

In Python, when we want to sort a list of tuples or lists, we may want to sort it based on certain element in each sub-list, for example, sort the list based on the first element in each sub-list.

I have been using vim-airline to customize my Nvim statusline ever since I first started using Neovim. It works great. Recently, I started a repo to create a minimal configuration without external plugins for both Vim and Neovim. During the process, I learned how to build the Vim statusline from scratch.

Horovod is the distributed training framework developed by Uber. It support training distributed programs with little modification for both TensorFlow, PyTorch, MXNet and keras.

In my previous post, I talked about how to automate the server login process with the help of Expect programming language. This post continues my learning process.

Although I use SSH (secure shell) every day, I seem to know little about it except the fact that I can use ssh command to log into my remote servers. Recently, I found myself some time to learn how does it work.

# Change font size

By default, LaTeX provides several command to change the font size to predefined size. Those command include \scriptsize, \large, \Huge etc. However, even the font size provided by the \Huge command may not be large enough.

In this post, I want to share some useful tips and configurations about mintty.

I have been using Vim plugin Tagbar for viewing and navigating tags inside my source file. However, for Markdown files, there is no support out of the box. In this post, I would like to share how to set up tagbar to show tags for Markdown.

# Introduction

I have a use case where I want to convert my Python script to standalone executable so that I do not need to type python before it to run the script. On Linux, it is easy to achieve with the help of shebang. However, on Windows, it does not work. Then I thought I might convert the script to Windows executable.

I have been using Ubuntu on Windows via WSL for about a year and it works quite well.

The terminal I use for Ubuntu on Windows is wsltty, which is a thin wrapper around mintty and other tools for starting WSL sessions. Recently, when I start clicking the WSL Terminal icon, it start a Window and then quit silently.

My experience and opinions about several popular Zsh plugin managers.

In the past few days, I tried to dockerize my development environment and put my daily programming tools inside container. I tried to install zplug inside docker container and met some issues. In this post, I want to share how to install zplug and other plugins inside the Docker container.

In this post, I would like to share causes and solutions to a few issues related to login shell.

# Introduction

When I logged into a Ubuntu server, the system interface and messages are shown all shown in Chinese. I want them to be displayed in English. After some searching, I found out that we can change the locale settings. The definition of locale is:

In computing, a locale is a set of parameters that defines the user’s language, region and any special variant preferences that the user wants to see in their user interface