1# X11 Magnification Tool
  2
  3Xmagnify is a real-time screen magnification tool for X11 systems that
  4provides a zoomed view of the area around your mouse cursor.
  5
  6## Features
  7
  8| Feature | Description |
  9|---------|-------------|
 10| **Real-time zoom** | Live magnification of screen content around cursor |
 11| **Configurable zoom level** | Adjustable magnification factor via command line |
 12| **Customizable window size** | Configurable zoom window dimensions |
 13| **Keyboard controls** | Press `q`, `Q`, or `Escape` to quit |
 14
 15## How to use
 16
 17> [!IMPORTANT]
 18> Make sure you have the required dependencies installed before
 19> building the project.
 20
 21First, ensure you have the necessary development libraries installed:
 22
 23```sh
 24# On Void Linux
 25sudo xbps-install -S libX11-devel libXfixes-devel libXrender-devel
 26
 27# On Debian/Ubuntu
 28sudo apt-get install libx11-dev libxfixes-dev libxrender-dev
 29
 30# On Fedora/RHEL
 31sudo dnf install libX11-devel libXfixes-devel libXrender-devel
 32
 33# On Arch Linux
 34sudo pacman -S libx11 libxfixes libxrender
 35```
 36
 37Build the project:
 38
 39```sh
 40make
 41sudo make install
 42```
 43
 44Run the magnification tool:
 45
 46```sh
 47xmagnify
 48```
 49
 50### Command line options
 51
 52The tool supports several command line options for customization:
 53
 54```sh
 55xmagnify [OPTIONS]
 56
 57Options:
 58  -z, --zoom LEVEL    Zoom level (default: 2)
 59  -s, --size SIZE     Window size in pixels (default: 600)
 60  -h, --help          Show help message
 61  -q, --quit          Quit the application
 62```
 63
 64### Examples
 65
 66Basic usage with default settings:
 67```sh
 68xmagnify
 69```
 70
 71Custom zoom level and window size:
 72```sh
 73xmagnify --zoom 3 --size 600
 74```
 75
 76Short option syntax:
 77```sh
 78xmagnify -z 4 -s 500
 79```
 80
 81## Building from source
 82
 83The project uses a simple Makefile for building. Available targets:
 84
 85```sh
 86make                  # Build the executable (default)
 87make clean            # Remove build artifacts
 88sudo make install     # Install to /usr/local/bin/
 89sudo make uninstall   # Remove from /usr/local/bin/
 90```
 91
 92### Debugging
 93
 94Enable verbose output by modifying the source code or using
 95debugging tools like `gdb`:
 96
 97```sh
 98gdb ./xmagnify
 99```
100
101## License
102
103[xmagnify](https://github.com/mitjafelicijan/xmagnify) was written by [Mitja
104Felicijan](https://mitjafelicijan.com) and is released under the BSD
105two-clause license, see the LICENSE file for more information.