Projects with Linux

wr

A work-in-progress simple vim-like text editor, with multiple cursors as its base concept. It is written from scratch in Go, using my custom rope implementation and curses alternative. Its goal is to be kept simple and customizable, so it uses higher order functions to represent both actions and movements.

It can be found is here

Technologies used: Linux, Go, curses,

sent fork

A fork of suckless' text based presentation program, with added command line flags, and preprocessors to allow dynamic shell scripting and code formatting.

The code is here

Technologies used: C/C++, Linux, Shell/Bash/Zsh,

autoarch

An automated installer for Arch Linux, with a simple TUI interface. The main focus was on the extensibility and native support, so it's written in POSIX compliant shell.

You can find the main part here, an LXDE example here and the ISO image creator here

Technologies used: Linux, Shell/Bash/Zsh,

bbn

A simple shell script allowing to take automatically timestamped notes at any time.

The main file is here

Technologies used: Linux, Shell/Bash/Zsh,

bitprint

A simple program which creates banners from the input with bitmap fonts, using Unicode block elements.

The code is found here

Technologies used: Go, Linux,

.dotfiles

My personal collection of dotfiles, configuration files for my linux system. They are mainly focused in vim and zsh (my preferred shell).

You can find them here

Technologies used: Vim, Shell/Bash/Zsh, Linux,

dvtm build

My custom build of the dynamic virtual terminal manager, which acts like an alternative to TMUX. It is customized to look and feel like my dwm build, and work on Termux for android.

Find it here

Technologies used: C/C++, Android, Shell/Bash/Zsh, Linux,

dwm build

A customized build of the dwm window manager, including some patches from the suckless website and some manual modifications, like removing the bar, and a workspace-like interface.

You can find it here

Technologies used: C/C++, Linux, Shell/Bash/Zsh,

input

Shell-agnostic read alternative, meant to help with the inconsitencies of some shells with POSIX standards. It also allows for using the arrow keys and having script-specific history.

The repository is here

Technologies used: Linux, C/C++,

mmd

Simple command line markdown parser and formatter. It was the center piece of my last note-taking workflow (bbn + mmd + mww)

Here's the repo

Technologies used: Linux, Shell/Bash/Zsh, C/C++,

mww

A simple UNIX-like command, allowing to word wrap text in long lines, considering escape sequences, common in the output of many commands.

Find it here

Technologies used: C/C++, Linux, Shell/Bash/Zsh,

pl

A simple UNIX-like program that prints between lines of the stardard input. Meant to be a replacement for head | tail.

Find it here

Technologies used: C/C++, Shell/Bash/Zsh, Linux,

Shell Scripts

A collection of Shell scripts y use in all my Linux installations. These are way too many to explain here, if you want to read more see the README

Technologies used: Linux, Shell/Bash/Zsh,

st fork

Fork of the suckless st terminal, which includes suport for a system similar to Plan9's plumb.

Here is the code

Technologies used: Linux, C/C++,

termplot

A go package for generating graphs of arbitrary functions, including comparisons. It uses standard ANSI escape codes to display.

You can find it here

Technologies used: Go, Linux,

TNotes

A simple program form taking notes in the command line, with simple one letter commands.

The repo is here

Technologies used: Python, Shell/Bash/Zsh, Linux,

tw

A tool for writing with greater focus by only showing a handfull of characters, and removing the ability to correct. It is meant to be used in the terminal, and uses ncurses.

It can be found here

Technologies used: C/C++, Shell/Bash/Zsh, curses, Linux,

trandr

A simple TUI wrapper for xrandr, made in go.

The code is here

Technologies used: Go, Linux, Shell/Bash/Zsh,