win2xcur is a tool to convert Windows .cur and .ani cursors to Xcursor format, and vice versa.
Project description
win2xcur and x2wincur

win2xcur is a tool that converts cursors from Windows format (*.cur,
*.ani) to Xcursor format. This allows Windows cursor themes to be used on
Linux, for example.
win2xcur is more than a simple image conversion tool. It preserves the cursor
hotspot and animation delay, and has an optional mode to add shadows that
replicates Windows's cursor shadow effect.
x2wincur is a tool that does the opposite: it converts cursors in the Xcursor
format to Windows format (*.cur, *.ani), allowing to use your favourite
Linux cursor themes on Windows.
win2xcurtheme converts a packaged Windows cursor theme with an INF installer
into a directory of Xcursors, which can be used to construct your own cursor
theme on Linux.
Conversely, x2wincurtheme converts a directory of Xcursors into Windows, while
generating the complementary install.inf for easy installation.
Finally, inspectcur serves as a debugging tool, able to load arbitrary Windows
or X11 cursors and show the animation settings, image sizes, and hotspots.
Installation
To install the latest stable version:
pip install win2xcur
To install from GitHub:
pip install -e git+https://github.com/quantum5/win2xcur.git
Usage: win2xcur
For example, if you want to convert the sample cursor to Linux format:
mkdir output/
win2xcur sample/crosshair.cur -o output/
-s can be specified to enable shadows.
Multiple cursors files can be specified on the command line.
For example, to convert a directory of cursors with shadows enabled:
win2xcur input/*.{ani,cur} -o output/
For more information, run win2xcur --help.
Usage: x2wincur
For example, if you want to convert DMZ-White to Windows:
mkdir dmz-white/
x2wincur /usr/share/icons/DMZ-White/cursors/* -o dmz-white/
Usage: win2xcurtheme
To convert an example Windows cursor theme in example with an INF installer
install.inf:
mkdir -p example-linux/cursors
win2xcurtheme example/install.inf -o example-linux/cursors
You can then create example-linux/index.theme as follows:
[Icon Theme]
Name=example
Comment=My example cursor theme.
Example=default
Usage: x2wincurtheme
To convert a whole Xcursor theme to Windows format, run x2wincurtheme on the
cursors subdirectory of an Xcursor theme, then specify a name with -n.
For example, for DMZ-White:
x2wincurtheme /usr/share/icons/DMZ-White/cursors -n DMZ-White -o dmz-white/
Usage: inspectcur
$ inspectcur /usr/share/icons/DMZ-White/cursors/left_ptr
Cursor file: /usr/share/icons/DMZ-White/cursors/left_ptr
1. nominal size 24, 24x24, hotspot: (7, 4)
2. nominal size 32, 32x32, hotspot: (10, 5)
3. nominal size 48, 48x48, hotspot: (14, 8)
$ inspectcur /usr/share/icons/DMZ-White/cursors/watch
Cursor file: /usr/share/icons/DMZ-White/cursors/watch
- Frame 0, delay 30.0 ms
1. nominal size 24, 24x24, hotspot: (12, 12)
2. nominal size 32, 32x32, hotspot: (18, 18)
3. nominal size 48, 48x48, hotspot: (24, 24)
- Frame 1, delay 30.0 ms
1. nominal size 24, 24x24, hotspot: (12, 12)
2. nominal size 32, 32x32, hotspot: (18, 18)
3. nominal size 48, 48x48, hotspot: (24, 24)
...
Troubleshooting
win2xcur, x2wincur, win2xcurtheme, and x2wincurtheme should work out of
the box on most systems. If you are using unconventional distros (e.g. Alpine)
and are getting errors related to wand, please see the
Wand documentation on installation.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file win2xcur-0.2.0.tar.gz.
File metadata
- Download URL: win2xcur-0.2.0.tar.gz
- Upload date:
- Size: 16.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f64b7d0de7734590b1428510e1953a9cd2bd9e3d05729cd15597dc8e4932429
|
|
| MD5 |
8689d5aa8e65130fe2399d58ceb5bf94
|
|
| BLAKE2b-256 |
7cf6083dfba6c3a4f523df12db6595f1bf904418ac68b9dcce691dbf15603616
|
File details
Details for the file win2xcur-0.2.0-py3-none-any.whl.
File metadata
- Download URL: win2xcur-0.2.0-py3-none-any.whl
- Upload date:
- Size: 22.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8aff7c1c1435caec7fd87b2204012ba81eeeea5b0637a8cb6298517a3d7f23b5
|
|
| MD5 |
96c7163365579f463dab233cf6dfac69
|
|
| BLAKE2b-256 |
c2add3358eb6f23ff479a21d1c92d6afcc147b031ec13974eec43e2f218337ec
|