ful1e5 / apple_cursor

Free & Open source macOS Cursors.
GNU General Public License v3.0
1.16k stars 62 forks source link

build error on windows when using single quotes and spaces (ctgen) #98

Closed seajungleowl closed 2 months ago

seajungleowl commented 5 months ago

In the readme one of the examples given for building on windows is: ctgen build.toml -s 16 -p windows -d 'bitmaps/macOS-BigSur' -n 'macOS-BigSur' -c 'macOS Big Sur Windows Cursors with size 16' However this gives the error: ctgen: error: unrecognized arguments: Big Sur Windows Cursors with size 16' If we run this command without the spaces in the comment: ctgen build.toml -s 16 -p windows -d 'bitmaps/macOS-BigSur' -n 'macOS-BigSur' -c 'bigsur16'

[Warning] The 'win_size' option is deprecated. Please use 'win_sizes' within individual cursor settings or set it to '[cursor.fallback_settings]'. For more information, visit: https://github.com/ful1e5/clickgen/discussions/59#discussioncomment-6747666
[Warning] The 'x11_sizes' option is deprecated. Please use 'x11_sizes' within individual cursor settings or set it to '[cursor.fallback_settings]'. For more information, visit: https://github.com/ful1e5/clickgen/discussions/59#discussioncomment-6747666
[Fail] Error occurred while processing build.toml:
Traceback (most recent call last):
  File "C:\Users\dulve\AppData\Local\Programs\Python\Python312\Lib\site-packages\clickgen\scripts\ctgen.py", line 156, in process
    cfg = parse_config_file(file, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\dulve\AppData\Local\Programs\Python\Python312\Lib\site-packages\clickgen\configparser.py", line 190, in parse_config_file
    config = parse_toml_file(fp, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\dulve\AppData\Local\Programs\Python\Python312\Lib\site-packages\clickgen\configparser.py", line 148, in parse_toml_file
    cursors = parse_cursors_section(d, config, **kwargs)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\dulve\AppData\Local\Programs\Python\Python312\Lib\site-packages\clickgen\configparser.py", line 113, in parse_cursors_section
    x11_blob = open_blob(blobs, hotspot, x11_sizes, x11_delay)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\dulve\AppData\Local\Programs\Python\Python312\Lib\site-packages\clickgen\parser\__init__.py", line 22, in open_blob
    return parser(blob, hotspot, sizes, delay)  # type: ignore
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\dulve\AppData\Local\Programs\Python\Python312\Lib\site-packages\clickgen\parser\png.py", line 83, in __init__
    super().__init__(blobs[0])
                     ~~~~~^^^
IndexError: list index out of range

if we then remove the single quotes, it builds successfully: ctgen build.toml -s 16 -p windows -d bitmaps/macOS-BigSur -n macOS-BigSur -c bigsur16

Windows 11 Python 3.12.1 clickgen 2.2.0

ful1e5 commented 4 months ago

@seajungleowl I'll soon update the documentation with double quotes. Thanks for bringing it to my attention.