05 Sep 23
Cheat sheet for x86-64 Unix systems programming. Contribute to jstrieb/systems-programming-cheat-sheet development by creating an account on GitHub.
06 Aug 23
29 Jun 23
Advanced macOS command-line tools.
28 Jun 23
Advanced macOS command-line tools.
21 Jun 23
This article explains how to correctly handle filenames in Bourne shells (the primary shell of Unix/Linux/POSIX systems), based on the issues discussed in ‘Fixing Unix/Linux/Filenames’. Many programs fail to work properly on filenames that include spaces, begin with dash (-), include newlines, and so on, because developers don’t know how to do it properly. Many texts, even good ones, get this wrong.
15 Jun 23
A hands-on exploration of writing a shell function in zsh.
14 Jun 23
so cool
I often write documents, such as exams and lecture notes, that contain both Latin and Arabic script, often on the same line of text. This can be challenging due to the complications of mixing of LTR (left-to-right) and RTL (right-to-left) scripts. This seems like an easy problem to solve for software developers, and it is, only not in software with graphical WYSIWYG interfaces, such as Word or OpenOffice. (I’m sure everyone who has tried writing mixed direction text in such software share my frustration with them, and I will therefore refrain from rants.) Since my shift to exclusively producing and editing text in plain text formats (.txt, .mkd, .tex, etc.) with the editor Vim, writing texts with mixed directionality has become a lot easier. This post is an attempt to explain how.
10 May 23
30 Apr 23
21 Apr 23
15 Apr 23
11 Apr 23
A classic, written by ESR who unfortunately turned out to be a bastard. Still, made many a meaningful contribution to the Bazaar
30 Mar 23
“execline is a (non-interactive) scripting language, like sh - but its syntax is quite different from a traditional shell syntax.”
How do people feel about this compared to rc from Plan 9?
25 Mar 23
Overview of fzf’s functionality with practical examples.
20 Mar 23
How to enable safe-paste mode on the terminal.