Giter Site home page Giter Site logo

angebtt / st Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lukesmithxyz/st

0.0 0.0 0.0 2.08 MB

Angelo's fork of the based Luke's fork of the suckless simple terminal (st) with vim bindings and Xresource compatibility.

License: MIT License

Makefile 1.54% C 94.29% Roff 2.43% Shell 1.75%

st's Introduction

Angelo's notes for newbs

You should have xlib header files and libharfbuzz build files installed.

Note that scroll is automatically pulled and installed when you make this build of st.

Obviously, make is required to build. fontconfig is required for the default build, since it asks fontconfig for your system monospace font. It might be obvious, but libX11 and libXft are required as well. Chances are, you have all of this installed already.

Be sure to have a composite manager (xcompmgr, picom, etc.) running if you want transparency.

Some newbs are forced to use Ubuntu (like me) for scientific computing. To build this little toy make sure to install these:

sudo apt-get install -y libharfbuzz-dev
sudo apt install libx11-dev
sudo apt install libxft-dev

Then again ..

sudo make clean install

In order to run it, just use a script with the location of the terminal, or set it in i3 with some keybinding.

Features (Some with using dmenu)

  • follow urls by pressing alt-l
  • copy urls in the same way with alt-y
  • copy the output of commands with alt-o
  • scroll with alt-โ†‘/โ†“ or alt-pageup/down or shift while scrolling the mouse (via scroll).
  • OR vim-bindings: scroll up/down in history with alt-k and alt-j. Faster with alt-u/alt-d.
  • zoom/change font size: same bindings as above, but holding down shift as well. alt-home returns to default
  • copy text with alt-c, paste is alt-v or shift-insert
  • Compatibility with Xresources and pywal for dynamic colors.
  • Default gruvbox colors otherwise.
  • Transparency/alpha, which is also adjustable from your Xresources.
  • Default font is system "mono" at 14pt, meaning the font will match your system font.

Other st patches

  • Boxdraw
  • Ligatures
  • font2
  • updated to latest version 0.8.4

How to configure dynamically with Xresources

For many key variables, this build of st will look for X settings set in either ~/.Xdefaults or ~/.Xresources. You must run xrdb on one of these files to load the settings.

For example, you can define your desired fonts, transparency or colors:

*.font:	Liberation Mono:pixelsize=12:antialias=true:autohint=true;
*.alpha: 0.9
*.color0: #111
...

The alpha value (for transparency) goes from 0 (transparent) to 1 (opaque). There is an example Xdefaults file in this respository.

Colors

To be clear about the color settings:

  • This build will use gruvbox colors by default and as a fallback.
  • If there are Xresources colors defined, those will take priority.
  • But if wal has run in your session, its colors will take priority.

Note that when you run wal, it will negate the transparency of existing windows, but new windows will continue with the previously defined transparency.

Notes on Emojis and Special Characters

If st crashes when viewing emojis, install libxft-bgra from the AUR.

Note that some special characters may appear truncated if too wide. You might want to manually set your prefered emoji/special character font to a lower size in the config.h file to avoid this. By default, JoyPixels is used at a smaller size than the usual text.

st's People

Contributors

aaptel avatar agonrex avatar angebtt avatar blackbit42 avatar colona avatar electronicru avatar ericpruitt avatar esjeon avatar frign avatar garbeam avatar georg3tom avatar hiltjo avatar k0gamsx avatar lukesmithxyz avatar medgar123 avatar michaelforney avatar mvdan avatar otlin100 avatar pilona avatar radare avatar rjl6789 avatar schachmat avatar shiva avatar suiginsoft avatar terriblephrases avatar trissim avatar undx avatar v4hn avatar yusufaktepe avatar zakybilfagih avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.