schenesort 2.4.0__py3-none-any.whl → 2.4.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
schenesort/cli.py CHANGED
@@ -1367,8 +1367,8 @@ def collage(
1367
1367
  search: Annotated[
1368
1368
  str | None, typer.Option("--search", "-q", help="Search description, scene, style, subject")
1369
1369
  ] = None,
1370
- cols: Annotated[int, typer.Option("--cols", help="Number of columns (1-4)")] = 2,
1371
- rows: Annotated[int, typer.Option("--rows", help="Number of rows (1-4)")] = 2,
1370
+ cols: Annotated[int, typer.Option("--cols", help="Number of columns")] = 6,
1371
+ rows: Annotated[int, typer.Option("--rows", help="Number of rows")] = 6,
1372
1372
  tile_width: Annotated[
1373
1373
  int, typer.Option("--tile-width", "-w", help="Width of each tile in pixels")
1374
1374
  ] = 480,
@@ -1377,17 +1377,17 @@ def collage(
1377
1377
  ] = 270,
1378
1378
  random: Annotated[bool, typer.Option("--random", "-R", help="Select images randomly")] = True,
1379
1379
  ) -> None:
1380
- """Create a collage of wallpapers matching the given criteria (max 4x4 grid)."""
1380
+ """Create a collage of wallpapers matching the given criteria."""
1381
1381
  from PIL import Image
1382
1382
 
1383
1383
  from schenesort.db import WallpaperDB
1384
1384
 
1385
1385
  # Validate grid size
1386
- if cols < 1 or cols > 4:
1387
- typer.echo("Error: --cols must be between 1 and 4.", err=True)
1386
+ if cols < 1:
1387
+ typer.echo("Error: --cols must be at least 1.", err=True)
1388
1388
  raise typer.Exit(1)
1389
- if rows < 1 or rows > 4:
1390
- typer.echo("Error: --rows must be between 1 and 4.", err=True)
1389
+ if rows < 1:
1390
+ typer.echo("Error: --rows must be at least 1.", err=True)
1391
1391
  raise typer.Exit(1)
1392
1392
 
1393
1393
  num_images = cols * rows
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: schenesort
3
- Version: 2.4.0
3
+ Version: 2.4.1
4
4
  Summary: Wallpaper collection management CLI tool
5
5
  License-File: LICENSE
6
6
  Requires-Python: >=3.13
@@ -12,7 +12,7 @@ Requires-Dist: textual>=0.95.0
12
12
  Requires-Dist: typer>=0.21.1
13
13
  Description-Content-Type: text/markdown
14
14
 
15
- # Schenesort v2.4.0
15
+ # Schenesort v2.4.1
16
16
 
17
17
  ![Collage example](docs/collage.png)
18
18
 
@@ -124,6 +124,8 @@ The TUI uses textual-image for rendering, which auto-detects terminal graphics s
124
124
 
125
125
  ## Gallery Browser
126
126
 
127
+ ![Gallery example](docs/gallery.png)
128
+
127
129
  Browse your indexed collection with a thumbnail grid and filter panel:
128
130
 
129
131
  ```bash
@@ -219,10 +221,10 @@ The database is stored at `$XDG_DATA_HOME/schenesort/index.db` (default: `~/.loc
219
221
 
220
222
  ## Collage Generation
221
223
 
222
- Create a collage grid (up to 4x4) from wallpapers matching query criteria:
224
+ Create a collage grid from wallpapers matching query criteria:
223
225
 
224
226
  ```bash
225
- # Create a 2x2 collage (default)
227
+ # Create a 6x6 collage (default)
226
228
  schenesort collage output.png --mood peaceful
227
229
 
228
230
  # Create a 4x4 collage of landscape images
@@ -241,8 +243,8 @@ schenesort collage night_cities.png --time night --subject urban --cols 3 --rows
241
243
 
242
244
  | Option | Description | Default |
243
245
  |-----------------|--------------------------------------|---------|
244
- | `--cols` | Number of columns (1-4) | 2 |
245
- | `--rows` | Number of rows (1-4) | 2 |
246
+ | `--cols` | Number of columns | 6 |
247
+ | `--rows` | Number of rows | 6 |
246
248
  | `--tile-width` | Width of each tile in pixels | 480 |
247
249
  | `--tile-height` | Height of each tile in pixels | 270 |
248
250
  | `--random` | Select images randomly | True |
@@ -1,5 +1,5 @@
1
1
  schenesort/__init__.py,sha256=Z7bmXIWiFUCKj1j4JRlPZvmfzc4RC10Lh1WCKNsJn20,61
2
- schenesort/cli.py,sha256=TFq_AjH-PSJYAr7b14rXdXl7xEKovqNnt7SQAZ7psZE,55702
2
+ schenesort/cli.py,sha256=tBsZ9TUI-UI6vSjSs98_WiHHR0g-RpvXeboCD4SaXI4,55641
3
3
  schenesort/config.py,sha256=8EuYv2nma3QKnLPSAgAsaOHZlORzinHjy-Bj_LKPfJA,2739
4
4
  schenesort/db.py,sha256=RbfZN6d5O5MkTRPbu51fA7tQLOJf1huIjxFdoT4sESk,11398
5
5
  schenesort/thumbnails.py,sha256=-B4vlh2w_NdUkO0tshcpZPUSs6M8S6G_abiBPp3xVOY,3631
@@ -12,8 +12,8 @@ schenesort/tui/widgets/filter_panel.py,sha256=BZf8T1H4u4eTUj2bt6ILvQ3m_hwx20DRfc
12
12
  schenesort/tui/widgets/image_preview.py,sha256=j_KTQBJk0vbO18FzTo-GYkRlgerBe1K3VGQwMPbEuUw,2846
13
13
  schenesort/tui/widgets/metadata_panel.py,sha256=8DnsvDdKf3jzqHOo7dDmxJxL0Mjx5mX7HNwwcMUcJn0,4860
14
14
  schenesort/tui/widgets/thumbnail_grid.py,sha256=-81CL4pBI7Q7J_PD2MbeaI-SNckEdfuNZdA14m7q348,9407
15
- schenesort-2.4.0.dist-info/METADATA,sha256=rIqVFt9JgHlVGSbsG1irhOllNWNzD0zEGMUjduxXhWc,14698
16
- schenesort-2.4.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
17
- schenesort-2.4.0.dist-info/entry_points.txt,sha256=J5lS-N6KgmzjutFi5bG1jv-4Wszbz3MfcOHcbznBVcw,50
18
- schenesort-2.4.0.dist-info/licenses/LICENSE,sha256=sMw3SMb9ec9dbM2twEMVeunsGwuljza-9kEXg4kSJpg,1070
19
- schenesort-2.4.0.dist-info/RECORD,,
15
+ schenesort-2.4.1.dist-info/METADATA,sha256=Drs4ynmh9VhrN9gHmFkmapj3T_g7VH4bcRIyFP6ysuo,14724
16
+ schenesort-2.4.1.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
17
+ schenesort-2.4.1.dist-info/entry_points.txt,sha256=J5lS-N6KgmzjutFi5bG1jv-4Wszbz3MfcOHcbznBVcw,50
18
+ schenesort-2.4.1.dist-info/licenses/LICENSE,sha256=sMw3SMb9ec9dbM2twEMVeunsGwuljza-9kEXg4kSJpg,1070
19
+ schenesort-2.4.1.dist-info/RECORD,,