Five tools to improve Linux development efficiency

Source: Internet
Author: User
Tags git commands dotfiles

Five tools to improve Linux development efficiency

We often need to sit in front of the computer for a long time to do a specific job to optimize the workflow. This includes selection and configuration tools that make you the most efficient. In the long run, simple and easy-to-learn tools are not always good. tools that can be fully personalized and seamlessly integrated into a unique workflow are really good tools.

In this article, I would like to introduce five free and open-source tools under Linux, and they have played a very important role in my software development career.

1. Zsh and Oh-My-Zsh

Zsh is a shell designed mainly for interaction and customization. I often use it with Oh-My-Zsh. Oh-My-Zsh is a community-supported framework that provides numerous plug-ins and themes.

Some great features:
  • It is better than the implementation in bash, because it is through an interactive list that can be repeated loops, rather than the static text that can be output every time you press tab.

  • Partially matched paths can be expanded. For example, work/tom <tab> can be changed to my_work/apache-tomcat-8.0.23.

  • Powerful Git support: Provides Git commands and visual indicators indicating the status of Git repositories in the working directory.

  • Customizable themes. Supports left and right prompts.

It can be used to replace bash and is easy to use. We recommend that you use it.

2. Less

When I first started using Linux, I used the built-in features of Midnight Commander to view files in terminals and various GUI-based applications.

Midnight Commander's view mode, mc vi ew, is easier to use and learn, but less is more advantageous than it (and many other text browsers, therefore, I chose Less for general text Viewing:

  • By default, no mouse is supported during startup, so it does not overwhelm mouse events, so you can easily select and copy text on the terminal. (Although mc can also be completed with the-d option .)

  • Large files can be processed easily. The main reason I chose to convert to Less is that if I want to check large log files and navigate around me, for example, mcview won't completely cut it off when I check the end of the file. Less is fast. Just press "G" and then press "g" to return to the starting point.

  • Installed by default.

  • Use Vim for navigation, so it can be well integrated into the conventions of other tools. It is easy to search, using "/", "?" , "N" and "N" keys can be highlighted. Use "j" and "k" navigation. Of course, it also supports the arrow keys and PgDn/PgUp keys.

  • Many tools use it. For example, man and git diff tools use Less to present information, so you should be familiar with it.

It's easy to get started with Less because you know it and it's already on your system.

3. Vim

I have already written some posts about Vim, so I plan to make a short speech. This is a great generic text editor with many plug-ins and a large number of customization capabilities that can help us complete various tasks from simple text editing to programming.

It also has many very good alternatives, such as Kate, Gedit, and even completely mature IDE (when it comes to programming ), but Vim provides a unique way to interact with it, making it a very interesting editor.

In addition, I think you should pay attention to the following:

  • There are many plug-ins.

  • Most repetitive tasks can be solved automatically or easily.

  • You can perform operations from the terminal. In normal mode, you can use Ctrl + Z to send it to the background, which is very convenient.

  • You only need a few keys to perform various operations and further combine the navigation, which makes it efficient and collaborative, even in high-latency connections to remote servers.

It takes time to learn Vim, but if you do it right, you can get twice the result with half the effort.

4. XMonad

XMonad is a tiled Window Manager written in Haskell. The various automatic la S and easy-to-learn Shortcut Keys provided by XMonad make it very natural to operate the desktop from the keyboard. There are also most activity-based terminals and keyboard-oriented tools, which are really good.

Some of its important functions:

  • Minimalistic and highly configurable. By default, there are almost no window decoration and toolbar in the configuration and can be customized in a wide range.

  • Keyboard-oriented, user-friendly experience.

  • Tile. You do not have to arrange windows manually.

  • If you use the mouse, the focus is automatically obtained in the window where the cursor is located.

XMonad is easy to install and use, but it requires some adjustments to complete the customization, because many of the features you are used to in other environments are not the default ones. It is so simple, so it is recommended that you check the default Shortcut here before using it, because by default it only provides users with a blank screen, nothing else.

Since it is only a window manager, I will use it with the KDE software.

5. Konsole

A great Terminal application is a necessity to use a command line application. I prefer KDE In the desktop environment, so I mostly use Konsole, and I am really satisfied with its function settings:

  • Search/highlight. Highlight matching is refreshed in real time, which is really convenient for dragging the log file.

  • It is easy to select and copy text blocks.

  • Simple selection of screen scrolling, use CTRL + SHIFT + K to clear the buffer.

  • You can customize and hide most unnecessary details (TAG bar and menu). Many color themes are provided by default.

It also provides a tab, but I don't need it. I have a more convenient way to open a new instance. The only thing I don't like is that when I don't need a scroll bar, it cannot be automatically hidden.

I believe there are many good alternatives to Konsole. My idea is that you can use everything as long as the terminal simulator you use has the functions you need. Whether it's a black cat or a white cat, it's a good cat to catch a mouse.

Use the dotfiles repository for management

Each workflow is unique to some extent, so we can enhance the use of tools through personalized configuration. However, this leads to a new problem: you either manage the configuration in some way, or manually repeat it each time.

If you select automatic, the dotfiles Git repository is very convenient to save the configuration. Its basic idea is that the configuration file resides in a Git repository and the symbol is linked to its correct location. Even smart scripts automatically complete the job. I am using Zach Holman's dotfiles repo and have a lot of content on Github.

These are common tools, but if you need to spend a lot of time on Linux machines, these tools are really worth using. By the way, which one is your true love? Let's talk about it.

5. Productivity Power Tools for Software Development on Linux

This article permanently updates the link address:

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.