Indice della guida
EdgeSnap 0.5 beta rende configurabili le scorciatoie e aggiunge una porta ARexx: lo snapping delle finestre su AmigaOS 4, MorphOS e AROS può così essere richiamato anche da script, pulsanti del dock e file manager. La release del 25 ottobre porta inoltre le preferenze su due pagine e aggiorna edgesnap.library alla 2.25, con correzioni al ripristino delle finestre e alla gestione dei divisori.
Il passaggio interessante non è una nuova zona sullo schermo. È poter scegliere come comandare lo stesso motore: trascinamento, tastiera o automazione, senza dover riscrivere la logica che dispone le finestre. Rispetto alla 0.43, dedicata a trascinamenti e divisori, cambia soprattutto il rapporto fra EdgeSnap e il resto del desktop.
Hotkey configurabili, senza cambiare i default
Le combinazioni predefinite rimangono quelle della 0.43. La novità è che ogni azione può ricevere una combinazione diversa attraverso la pagina Hotkeys delle preferenze, i tooltype dell’icona oppure gli argomenti della Shell. Il formato è quello delle descrizioni di input usate da Exchange, per esempio HOTKEYLEFT="ctrl alt x".
Una voce vuota oppure none lascia l’azione senza scorciatoia; il parser accetta anche off. Le quattro zone d’angolo hanno ora azioni dirette, come HOTKEYTOPLEFT, ma non ricevono tasti di default. Non occorre quindi disimparare la configurazione esistente né ritrovarsi combinazioni nuove assegnate a sorpresa.
Le preferenze rifiutano descrizioni che il sistema non riconosce e duplicati della stessa combinazione interpretata. Se una configurazione problematica arriva invece alla commodity, EdgeSnap salta il tasto e lo segnala nell’output, anziché rinunciare ad avviarsi. C’è una differenza documentata su AROS: il suo ParseIX può interpretare la prima lettera di una parola sconosciuta. La validazione segue il sistema, non è identica su tutte le piattaforme.
Le modifiche salvate entrano in funzione senza riavviare EdgeSnap. Il codice ricostruisce i filtri dei tasti lasciando attivo il percorso di input del mouse: è un dettaglio importante per non perdere il rilascio di un pulsante durante un trascinamento.
Preferenze su due pagine e accesso da Exchange
La finestra separa Snapping e Hotkeys, con il ciclo delle larghezze accanto ai tasti per i lati. Su AmigaOS 4 usa ReAction; su MorphOS e AROS le pagine sono realizzate con MUI e Zune. La tabella condivisa delle impostazioni resta la base delle interfacce native.
La divisione serve anche sugli schermi meno alti: nella documentazione il precedente pannello Zune era arrivato a 735 pixel su uno schermo da 768. Il pulsante Show di Exchange apre ora le preferenze; lo stesso fa CX_POPKEY, disponibile anche come POPKEY, quando gli si assegna un tasto. Se la finestra è già aperta, una seconda richiesta la porta davanti.
La porta ARexx EDGESNAP
La porta si chiama EDGESNAP. Espone SNAP, RESTORE, QUERY, SELECT, PREFS, ENABLE, DISABLE, VERSION, HELP e QUIT. Per esempio, questa riga chiede di agganciare a sinistra una finestra il cui titolo corrisponda al pattern indicato:
rx "ADDRESS EDGESNAP 'SNAP LEFT TITLE=#?Shell#?'"
Senza TITLE, i comandi che agiscono su una finestra usano quella attiva: lanciandoli dalla Shell, può essere la Shell stessa. Il parametro accetta pattern AmigaDOS senza distinzione fra maiuscole e minuscole; viene scelta la prima finestra corrispondente, cercando dagli schermi davanti. SNAP comprende metà, quarti, massimizzazione e centro; ripetere sinistra o destra usa il ciclo delle larghezze già disponibile da tastiera.
QUERY restituisce lo stato nella variabile RESULT, per esempio la zona, NONE oppure PLACED per una collocazione richiesta da un programma. Negli script occorre OPTIONS RESULTS. I codici documentati sono 0 per il successo, 5 per un rifiuto e 10 per un comando o argomento non riconosciuto.
ARexx richiede l’interprete installato e attivo. Su MorphOS la sola rexxsyslib.library del sistema non comprende un interprete: va aggiunto separatamente. Su AROS One il comando è SYS:Rexxc/RX; il manuale avverte di non fidarsi della sua variabile RC dopo una chiamata a una porta, mentre il trace mostra il codice e RESULT funziona. L’assenza della libreria ARexx impedisce l’apertura della porta, non il normale funzionamento di EdgeSnap.
Library 2.25: le correzioni che contano durante il drag
La versione del programma, 0.5 beta, e quella della libreria, 2.25, identificano cose diverse. La seconda incorpora una revisione del comportamento della 2.24: controlli sulle finestre chiuse mentre la libreria attende, correzioni per i clic accanto a un divisore su AROS e due casi di ripristino della dimensione precedente al trascinamento.
In particolare, una finestra massimizzata può tornare alla dimensione originale dopo un piccolo trascinamento, senza richiedere uno spostamento eccessivo. È corretto anche il caso della finestra che segue il puntatore durante il drag. Per i client della libreria ci sono inoltre controlli più rigorosi sui rettangoli e sulle coordinate rappresentabili da Intuition, sulla validità dei divisori e sull’applicazione delle opzioni: un valore errato non deve lasciare modifiche parziali.
Il valore pratico della 0.5 sta qui: aggiungere automazione senza creare un secondo motore di snapping. La porta ARexx richiama le stesse operazioni usate dai tasti, e la libreria continua a verificare la finestra prima di intervenire. Non è un annuncio di adozione ufficiale da parte dei sistemi operativi.
Download, piattaforme e verifiche
I quattro archivi ufficiali della release 0.5 beta su GitHub sono:
- AmigaOS 4 e MorphOS, nel pacchetto comune. Scheda Aminet.
- AROS x86_64 ABIv11. Scheda Aminet.
- AROS aarch64, anche per Raspberry Pi. Scheda Aminet.
- AROS i386 ABI v0. Scheda Aminet.
Per questo articolo sono stati scaricati i quattro asset GitHub e verificati SHA-256, MD5 pubblicati e integrità degli archivi. Sono passate anche le otto suite del core compilate sul Mac in C89. Sono controlli su pacchetti e codice portabile, non un nuovo collaudo su hardware Amiga.
Le note della release riportano prove su MorphOS 3.20 su PowerMac G5, con ARexx, e Raspberry Pi 400 con AROS aarch64; sotto emulazione, AmigaOS 4.1, MorphOS e AROS One 1.3 x86_64. Il README documenta anche la prova della library 2.25 su AROS One x86 emulato: non va confusa con un collaudo nativo completo di tutti i pacchetti.
Al controllo del 26 ottobre, le pagine Aminet indicavano già la 0.5, ma non tutti i collegamenti ai file restituivano un download valido. I link sopra puntano quindi agli asset GitHub verificati. La release resta una beta, con codice MIT: per l’installazione e i dettagli dei comandi fa fede il manuale incluso.