Skip to content

RaphGL/NeoSent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

Suckful Sent


Explore the docs »

· Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. License

Neosent is a drop-in replacement for Suckless Sent.

It provides everything you need out of the box instead of relying on patches and editing header files.

Features Implemented
PNG, JPG, AVIF
Command-line options
Inverted colors and toggling them
Progress bar
Fullscreen mode
PDF generation

Built With

Getting Started

Make sure you have the SDL2, SDL2_ttf and SDL2_image libraries installed.

On Arch:

sudo pacman -S sdl2 sdl2_image sdl2_ttf

Installation

Manually

  1. Clone the project
  2. Run:
$ meson setup build
$ cd build

AVIF images are also supported but they're hidden behind a flag for portability reasons. To enable run:

$ meson configure -Davif_image_support=true
$ 
$ meson configure --buildtype=release
$ meson compile
  1. Move the nsent file to your $PATH.

AUR

paru -S neosent-git

Usage

NeoSent files usually have a .ns extension, but any (or no) extension is allowed as well.

$ nsent file.ns

Some attributes can be changed to fit the user's preference.

The syntax is very minimal, to learn it just see this example:

NeoSent

@some_image.png

It depends on:
- SDL2

neosent [FILE]
one slide per paragraph
# This is a comment and it won't appear in the presentation

\ # A backslash alone will create an empty slide

# both of these will be shown instead of interpreted
\@FILE.png 
\# Some comment?

Having problems? Make an issue!

Changing font and colors

All changeable attributes are available through flags and environment variables. Check nsent -h to know what flags are available. The following environment variables are available:

  • NS_FG_COLOR - changes text color
  • NS_BG_COLOR - changes the background color
  • NS_FONT - changes the preferred font, if not found it will fallback to a system default

Fonts are matched to the system's. Just roughly name the font you want and neosent will fetch it. Fonts have to be installed on the system to work.

nsent -f "JetbrainsMono" presentation.ns
nsent -f "Ubuntu" presentation.ns

Colors are represented as RBG values. Passing them to the program:

nsent -t 0 -b "#FFFFFF" presentation.ns # black text and white background
nsent -t "#eb4034" -b "#0x2e22a1" presentation.ns # red text and blue background

Keybindings

Previous page Next page
Left Arrow Right Arrow
Up Arrow Down Arrow
Page Up Page Down
Mouse Right Mouse Right
h l
k j
p n

Miscellaneous keybindings:

Function Keybind
Go to first and last page Home & End
Invert colors i
Go fullscreen f / F11
Quit q

License

Distributed under GPLv3 License. See LICENSE for more information.