A fork of fork of suckless sent minimal presentation tool with full Right-to-Left (RTL) language support and PDF export capabilities.
- Original sent functionality: Lightweight, keyboard-driven presentations
- RTL language support: Full support for Persian, Arabic,Hebrew , and other RTL languages
- PDF export: Generate PDF versions of your presentations with a single keypress
- Enhanced font support: Pre-configured for optimal RTL text rendering with Vazirmatn and other fonts
- FriBiDi integration: Proper text shaping and bidirectional text rendering
# Ubuntu/Debian
sudo apt install libx11-dev libxft-dev libxinerama-dev libfribidi-dev libcairo2-dev libfreetype6-dev
# Fedora
sudo dnf install libX11-devel libXft-devel libXinerama-devel fribidi-devel cairo-devel freetype-devel
# Arch Linux
sudo pacman -S libx11 libxft libxinerama fribidi cairo freetype2git clone https://github.com/muctebanesiri/sent.git
cd sent
make
sudo make installsent presentation.txtsent -f presentation.txt- Arrow keys: Navigate between slides
- Space/Enter: Next slide
- Backspace: Previous slide
- g: Generate PDF version
- r: Reload presentation file
- q: Quit
- F11: Toggle fullscreen
Press g during your presentation to generate a PDF version. The PDF will be saved as [filename].pdf in the current directory.
This fork includes full support for Right-to-Left languages:
- Proper text rendering for Arabic, Hebrew, Persian, etc.
- FriBiDi library integration for bidirectional text support
- Pre-configured font fallbacks with Vazirmatn as the primary Arabic font
Edit config.h to customize font preferences:
static char *fontfallbacks[] = {
"Vazirmatn:style=Regular",
"Noto Sans Arabic:style=Regular",
"Aref Ruqaa:style=Bold",
"iransansx",
"roboto",
"ubuntu",
};Sent uses a simple text format for presentations: see example file for more
# Slide 1 Title
Slide content
with multiple lines
# Slide 2 Title
More content
- With bullet points
- And more elements
- Lines starting with
#are treated as slide separators - Lines starting with
@are treated as embedded images - Use
\\to escape special characters
Edit the shortcuts array in config.h:
static Shortcut shortcuts[] = {
{ XK_Escape, quit, {0} },
{ XK_g, pdf, {0} },
// Add your custom shortcuts here
};Modify the colors array in config.h:
static const char *colors[] = {
"#FFFFFF", /* foreground color */
"#000000", /* background color */
};- Fonts not rendering correctly: Ensure required fonts are installed on your system
- PDF generation fails: Verify Cairo library is properly installed
- RTL text not displaying properly: Check FriBiDi library installation
Compile with debug flags for troubleshooting:
make clean
make DEBUG=1This project maintains the original sent license. See LICENSE file for details.
Contributions are welcome! Please feel free to submit pull requests or open issues for bugs and feature requests.
- Original sent developers for the excellent minimal presentation tool
- FriBiDi library for RTL text support
- Cairo library for PDF export capabilities
- Vazirmatn font developers for the beautiful Arabic typeface
For more information, visit the original sent page or the GitHub repository.