Skip to content

Features

Arijit Basu edited this page May 27, 2021 · 48 revisions

Hackable

xplr is built with configurability in mind. So it allows you to perform a vast set of operations and make it behave just the way you want.

You can easily dump the default configuration or copy it into ~/.config/xplr/init.lua and then tweak it. And next time when you run xplr, it will load that configuration.

However, it is recommended that you tweak only the sections you want to customize to keep your config file clean and minimal.

A few things you can do with the xplr configuration

Once you understand the concept, try these

Fast

Although speed is not the primary concern, xplr is already fast enough so that you can take it out for a walk into your /nix/store any time you want. I currently measure the most commonly used operations and I have seen it improve significantly over time, and it's only the start.

Tip: A quick and easy way to optimize UI rendering if reducing the number of columns in the table.

Note: If you feel xplr is not behaving at its optimal, this is probably because I am waiting for someone to complain. I want to avoid optimizing things I don't need to, because optimization requires either complexity or feature sacrifice or both.

Minimalist

xplr prefers to stay minimal, both in terms of features and binary size, but just like speed, minimalism isn't as aggressively pursued as configurability. If adding some feature, lines of code, or a dependency allows the users to be a little more productive or allows xplr to be a little more configurable, it will be considered. But of-course, the bulk vs productivity gain per user balance will also be considered in the decision-making.

Integration

Being super configurable, xplr by design integrates well with other tools. Try this fzf integration tutorial or this vim plugin if you are not convinced yet.

Clone this wiki locally