setup for college

06/06/25

6 min read

Since I switched to Linux I have been looking for ways to be more productive as a student. I found a post written by Gilles Castel that explained his awesome way of making notes using Latex and Python scripts.

Read the original post on Gilles’ website.

I was interested in learning Rust so I started looking for small projects to develop.

The tool reads through a base directory that is filled with semesters or periods. When executing the school-setup semesters command you can expect something that looks like this.

You can select a period or semester by executing the school-setup semesters <semester> command.

This behaviour is copied for courses, a list is shown when executing school-setup courses and a course can be selected with the school-setup courses <course> command.

You can check out the code on github.

All of my keybindings are managed by the sxhkd keyboard daemon. I use rofi to show the output of my tool.

I also created keybindings for opening a terminal or file manager in the current course directory.

# show semesters
super + s
    rofi -modi 'semesters:school-setup semesters' -show semesters -p '' -theme-str 'prompt \{ enabled: false; \}'

# show courses in current semester
super + c
	rofi -modi 'courses:school-setup courses' -show courses -p '' -theme-str 'prompt \{ enabled: false; \}'

# show current course in file manager
super + o
	pcmanfm /home/kaj/school/course

# show current course in terminal
super + p
	alacritty --working-directory /home/kaj/school/course