-
Notifications
You must be signed in to change notification settings - Fork 1
simple terminal emulator - fork of st from suckless.org
License
koverstreet/st
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
st - simple terminal -------------------- st is a simple xterm replacement - this is a fork of the original from the suckless project. NOTES ON THE FORK: ------------------ I have slightly different priorities than the original project. When I first discovered st, I was delighted by the size of the codebase; unfortunately, the quality of the code left something to be desired. Personally, I care much more about aesthetics and elegance and /beauty/ than just code size. Code size is an important metric; the same functionality in 3k loc is likely to be more elegant than an implementation in 30k lines. But modularity, readability, /elegancy/ are important too. We should write code to outlast us. This means it should be simple and clear to the people who come after us; small and modular and easy to work with. Also, the upstream project was all about stripping out functionality that could be done with other tools, in the name of orthogonality. This is great in principle, but they turn it into something of a religion. Often, the functionality in question (things like tabs or scrollback) are things that really shouldn't add much code _provided they're implemented cleanly_; the problem was that when first implemented in other projects people didn't go back and refactor, they just pile cruft on top of cruft. But that doesn't mean we have to make the same mistakes. Also, the most beautiful code in the world is of little relevance if people can't or won't use it because of mundane practical concerns. The way configuration is done, for example - a header file might seem clean and simple to the original author, but today people tend to expect and enjoy the functionality provided by things like gsettings. Yes, glib is fairly horrible in some ways, but let's try to integrate with the rest of the current desktop stack where it doesn't add too much pain, for the sake of the users. The modern desktop environment has brought a lot of genuinely useful functionality; the implementations may tend to be horrible, but let's try and fix things where and when possible, not ignore them and build up new castles in isolation. Requirements (debian packages): ------------------------------- * libx11-dev * libxft-dev * libfontconfig1-dev * libfreetype6-dev * libglib2.0-dev Installation ------------ A simple make, make install should be all that's required. The makefile obeys the normal PREFIX and DESTDIR variables, and installs into /usr/local by default. Configuration ------------- The original suckless st was configured entirely through config.h; if you want to change the colour scheme or shortcut keys you'll still have to modify config.h, then rebuild and reinstall. Other configuration options have been migrated to gsettings. There's no provided gui, but you can use dconf-editor (navigate to /org/evilpiepirate/st) or use the commandline dconf tools to change the default font and some other options. Credits ------- Forked from http://st.suckless.org/ and heavily rewritten. Based on Aurélien APTEL <aurelien dot aptel at gmail dot com> bt source code.
About
simple terminal emulator - fork of st from suckless.org
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published