FOSSPicks
smenu
This is an excellent little utility that performs a simple job so comprehensively that you'll wonder how you ever used the command line without it. The easiest way to see what smenu does is to pipe some input into it, such as by running:
tail /var/log/syslog | smenu
You'll see exactly the same output you're used to – the last few lines of the system log – but one of those words in the output will be highlighted. Best of all, you can now use the up, down, left, and right cursor keys (or Vim navigation keys) to change which word is highlighted, just as you might in a word processor. When you press return, it looks like nothing further happens, but in the background the word you selected has been passed to the standard output. If you were to pipe the output from the command example, for instance, to a new file, that file would now contain the word you selected.
This saves you lots of messing around with a tool and is brilliant for things like variable assignment in Bash or grabbing IP addresses and other values for which it might be difficult to create a regular expression. But there are many more options than simple search, all of which can be triggered with switches or added to a configuration file. You can extract numbers from words, for example, or set a post-selection processing action. Words can be selected or not selected using regular expressions, and there are lots of controls for splitting the input into columns and making those columns fill your terminal's fill width. It's perfect when you're working with unpredictable data fields or you want to test out your own scripts without hard-coding the selection algorithms into the file.
Project Website
https://github.com/p-gen/smenu
Concentration spell
Focus
This is another simple tool that's brilliantly executed and perfect for people for whom the Internet has simply become a huge distraction engine – people like me. Just writing those two sentences required a news refresh, a Bitcoin value check, a brief skim over my Reddit subscriptions, and an idle through some Hacker News comments (let's not mention the 20 minutes spent watching Prince on YouTube). It's almost at the point where the writing itself is the distraction while I ascend to the astral plane of infinitely networked knowledge. Of course, there are lots of solutions to this problem. Turning the Internet off isn't a bad idea, and I've previously looked at tools that will only let you access whitelisted locations. But this tool, called Focus, is another option, and for me it's preferable to other more draconian measures.
Focus runs from the command line and allows you to set a reminder containing any text you choose. This reminder will then pop up after a certain period of time of your choice has passed. There are two particularly neat things about its implementation. The first is that it runs as a daemon, which means it takes very few resources and won't default to blocking you in the shell, and the second is that it uses native notifications to show you your reminder. This is particularly useful because you can use your desktop's notification system to manage these reminders more effectively, and they're more likely to be noticed while you're watching YouTube. Entering
focus -p 2 -d 1 -t "Get back to work!" -b "Write FOSSPicks!"
on the command line, for instance, will set a two-minute reminder that pops up for an hour reminding me to write some words. It could even be used to remind you to take a break. Enter
for the duration and Focus reminds you of your duties forever.
Project Website
https://github.com/nagyation/Focus
Buy this article as PDF
(incl. VAT)