tag:blogger.com,1999:blog-246110402024-03-16T00:59:24.455+01:00The CyberDeaf's BlogBlog sporadico di The CyberDeaf. In italiano.The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.comBlogger341125tag:blogger.com,1999:blog-24611040.post-90629619673064300552024-03-07T16:40:00.004+01:002024-03-08T14:05:41.414+01:00Gugòl e i suoi moduli/forms<p style="text-align:justify;">Mi chiedono di creare un questionario online. E vabbè…</p>
<p style="text-align:justify;">Senonché alcune delle domande richiedono all’utente di scegliere tra tot immagini. Evvabb-- No. Cor cazzo che vabbene. Cor cà, davvero. Ché qualsiasi immagini uno cerchi di caricare nelle risposte già ha due cose che gli urticano spiacevolmente le gonadi. La prima è che secondo Gugòl mettere immagini “mute” è anatema, e avvoja a cercare d’imbrogliarlo mettendo uno spazio al posto del testo della domanda. Ti propina prontamente il testo di default, “Opzione 1”. La seconda è che tutte le immagini vengono (apparentemente) ridotte a un quadrato di circa 260 pixel (m’immagino la gioia dei macchisti retinati…). E pure maluccio, specie se ci tieni tanto a conservare determinati dettagli.</p>
<p style="text-align:justify;">Per la prima cosa ancora sto cercando una soluzione. Per la seconda, conviene ridursi da sé le immaginette prima di caricarle in Gugòl Moduli/Forms. Occhio che la larghezza ottimale è in realtà 250 pixel. Potete caricarle come jpeg, png, gif. Purché siano larghe al massimo 250 pixel.</p>
<p style="text-align:justify;">Vi risparmio le altre due cose che m’urticano di Gugòl Forms, dato che vado di fretta.</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-70800787231209827322023-10-18T16:11:00.005+02:002023-10-19T21:08:23.694+02:00Un mouse bluetooth e tre sistemi operativi…<p style="text-align: justify;">…No, non è l’inizio di una barzelletta (anche se potrebbe esserlo).</p>
<p style="text-align: justify;">Semplicemente, mi son accattata una trackball Logitech Ergo M575. Anzi due, una per casa ed un’altra per l’ufficio, nella speranza di tenere il più possibile lontano lo spettro del tunnel carpale dalla mia mano destra (no, non so se esista un modello per mancini: so' cazzi vostri).</p>
<p style="text-align: justify;">Ho scelto questo modello di trackball perché può funzionare sia con il dongle USB sia con bluetooth. Col dongle funziona sempre ed ovunque, senza bisogno di accendere il bluetooth. Ma ovviamente preferirei che funzionasse con bluetooth e lasciarmi libere le porte USB, punto e basta.</p>
<h3>MacOs X (sonoma)</h3>
<p style="text-align: justify;">Con MacOs X non ci sono problemi. Fai l’accoppiamento e funziona al primo colpo. Per ora. Non è che i suoi tentativi di forzarmi a subire il suo fottuto controllo automatico ortografico me lo rendano degno di fiducia :-)</p>
<h3>Winskif 11</h3>
<p style="text-align: justify;">Con winskif 11… hmmm… Diciamo che se usi il dongle, funge. Se usi bluetooth, dopo un po' (solitamente quando lo lasci da solo per un attimo) winskif ti disattiva per i cazzi suoi bluetooth e non te lo fa più riattivare, anzi te nasconde proprio l’accesso ad esso. Al riavvio rivedi le impostazioni bluetooth, ma disattivate. E devi attaccare un mouse USB o lavorare di tastiera per riaccendere il bluetooth.</p>
<p style="text-align: justify;">La soluzione? Andare (come administrator) in <b><code>Device Manager → Bluetooth</code></b> e, nell’elenco dei vari Bluetooth devices/drivers, spulciarsi le proprietà di ciascuna delle righe per trovare il tab “Power Management”<sup><a alt="[vai a nota 1]" href="#nota1" id="back1" name="back1">*</a></sup> e disattivare quindi l’opzione dello spegnimento del device da parte del computer. Fatelo con tutti i devices/drivers presenti nell’elenco in questione.</p>
<p style="text-align: justify;">Per essere strasicuri, sempre come amministratore, aprite i Servizi (services.msc) cercate i servizi legati a Bluetooth e impostatene l’avvio automatico poi, se necessario, avviateli. Chiudete l’intero troiaio, tornate sulla scrivania ed attivate bluetooth, accoppiate il mouse, e riavviate il pc.</p>
<h3>(X)ubuntu</h3>
<p style="text-align: justify;">E con ubuntu? Non so voi, ma io c’ho xubuntu 22.04.3. Con la X, non la K. Aprite un terminale quarsiasi, quel che più vi aggrada, fate <code>sudo</code> per modificare <b><code>/etc/default/grub</code></b> ed inserite in <code>GRUB_CMDLINE_LINUX_DEFAULT</code> questa voce: <code>btusb.enable_autosuspend=0</code>, salvate e date il comando <code>update-grub</code>.</p>
<p style="text-align: justify;">Poi, sempre con sudo, modificate <b><code>/etc/bluetooth/main.conf</code></b>, impostando (se necessario) i vari timeout di scoperta, accoppiamento e autocollegamento, ma soprattutto andando in fondo a vedere se <code>AutoEnable</code> non sia commentato e sia impostato su “true”. Riavviate i servizi bluetooth con <code>sudo service bluetooth restart</code> e <code>sudo service blueman-mechanism restart.</code> Collegate ed accoppiate il mouse bluetooth. Copiatevi il suo MAC address e da terminale scrivete <code>sudo bluetoothctl trust 12:34:56:78:9A:BC</code> (ovviamente sostituite quest’ultimo piezz’esadecimale con il MAC del <b><i>vostro</i></b> mouse). Per verificare che il comando sia andato a buon fine, sostituite “trust” con “info”. Se è tutto OK, uscite e riavviate.</p>
<p style="text-align: justify;"><span style="color: red;"><b>Update:</b></span> a quanto pare il Logitech Ergo M575 non può fare pairing multipli. Quindi ogni volta che passo da winskif a ubuntu e viceversa devo rifare il pairing. Meno male che so usare anche la tastiera. :-)</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">P.S.: Se avete impostato i/l vostri/o SO in italiano, cazzi vostri. Again. Io li imposto <b>tutti</b> in inglese perché mi trovo più a mio agio così.</p>
<p style="text-align: justify;"> </p>
<p id="nota1" name="nota1" style="text-align: justify;">* Sì, anche a casa uso un portatile. Dual boot. Embé? È un 15,6" e gl’ho attaccato 'na tastiera ed un mouse <i><u>esterni</u></i>. Sono i portatili <b>nudi</b> a farmi incazzzzare abbestia.<a alt="[torna su]" href="#back1">⤴</a></p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-51515933356972990472023-10-18T12:30:00.001+02:002023-10-18T12:31:48.342+02:00Rimuovere (forse) l’orrida sottolineatura puntinata rossa da Mac Os X<p style="text-align:justify;">Ho come la sensazione che, ad ogni aggiornamento di sistema (ora il MacBookAir M1 “provvisorio” usa Sonoma), il sistema ci riprovi ad infliggermi quest’odiosa sottolineatura puntinata rossa, chiaro e lampante sintomo di un fottuto correttore ortografico non desiderato.</p>
<p style="text-align:justify;">Ergo, qui di seguito i vari passi seguiti per disattivarlo (almeno fino al prossimo aggiornamento, spero) dall’intero sistema.</p>
<p style="text-align:left;">Aprire il terminale e dare i seguenti comandi UNO ALLA VOLTA:<br><code>defaults write NSGlobalDomain NSAutomaticSpellingCorrectionEnabled -bool false<br>defaults write NSGlobalDomain NSAutomaticTextCompletionEnabled -bool false<br>defaults write NSGlobalDomain NSAutomaticSpellingCheckingEnabled -bool false<br>defaults write NSGlobalDomain NSAutomaticSpellCheckingEnabled -bool false<br>defaults write NSGlobalDomain NSAutomaticSpellCheckEnabled -bool false</code></p>
<p style="text-align:left;">Se volete conservare invece la sostituzione automatica dei trattini e degli apostrofi:<br><code>defaults write NSGlobalDomain NSAutomaticDashSubstitutionEnabled -bool true<br>defaults write NSGlobalDomain NSAutomaticQuoteSubstitutionEnabled -bool true</code></p>
<p style="text-align:justify;">Uscite dal terminale e riavviate il mac.</p>
<p style="text-align:justify;">Detto fatto! :-)</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-73545077181405208942023-01-17T15:26:00.001+01:002023-10-18T13:08:25.175+02:00La (s)ventura di un vecchio Wacom Bamboo con MacOs 13.x<p style="text-align: justify;">Antefatto: in attesa che si liberino i fondi per un pc meno …preistorico… mi hanno gentilmente concesso in via <i>provvisoria</i> un MacBook Air M1. E fin qui tutto moderatamente bene, a parte la scocciatura del dover usare il tasto “mela” ogni volta che il classico “ctrl”+quarcosa non sortisce effetti. Non so chi sia più coglione, io o il mio mignolo sinistro.</p>
<p style="text-align: justify;">Senonché oggi dovevo fare un lavoro con la tavoletta grafica, una vetusta ed immarcescibile Wacom Bamboo Pen & Touch. Che ha SEMPRE fatto il suo lavoro, quale che fosse il sistema operativo (Gentoo, xubuntu, winskif 8,10,11), devo dire.</p>
<p style="text-align: justify;">Già mi ero fatta dare un accrocchio usb-c con 3 porte usb 3.0 (e uscita HDMI + presa ethernet), ma solo perché odio le tastiere dei portatili e i monitorini da 13 pollici, retina o no. Ho attaccato la tavoletta all’accrocchio.</p>
<p style="text-align: justify;">Ovviamente non fungeva quel che mi serviva fungesse: la penna della Bamboo.</p><p style="text-align: justify;">Vado sul sito della Wacom, installo i driver. Non vedono la tavoletta. Disinstallo. Cerco altri driver Wacom. Installo. Niente. Disinstallo e googlo.</p>
<p style="text-align: justify;">…</p>
<p style="text-align: justify;">…</p>
<p style="text-align: justify;">Ah ecco. Son bacati. Arigooglo. Trovo e risolvo.</p>
<p style="text-align: justify;">…</p>
<p style="text-align: justify;">…</p>
<p style="text-align: justify;"><a href="https://github.com/thenickdude/wacom-driver-fix" target="_blank"><b><u>Qui</u></b></a> troverete i driver Wacom PATCHATI. Perché ovviamente alla Wacom non je ne frega un cavolo se la tu' tavoletta USB del Cretaceo funge ancora e vorresti continuare ad usarla. :)</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-75949284784092431782022-07-10T16:35:00.002+02:002022-07-10T16:35:58.228+02:00Xubuntu e i doppi titoli delle finestre (2/2)<p style="text-align: justify;">I doppi titoli sono dovuti al fatto che il Window Manager è xfwm (quindi i temi di questo li trovate nel pannello di controllo alla voce “Window Manager”), mentre il resto s’appoggia a Gtk+3 (i quali temi e impostazioni sono invece in “Appearance”). 'Na matrioskata, 'nzomma.</p>
<p style="text-align: justify;">Nel post <a href="https://cyberdeaf.blogspot.com/2022/02/xubuntu-e-i-doppi-titoli-delle-finestre.html">precedente</a> avevo spiegato come fare un tema “borderless” per xfwm, lasciando visibile solo il tema Gtk utilizzato. Questo però presenta un inconveniente per i “diversamente amanti” della tastiera: non è possibile “agire” su titoli e bordi della finestra gtk3. Xfce4 non se li caga manco di striscio se cerchi di cliccarli e trascinarli col mouse.</p>
<p style="text-align: justify;">Ovviamente <b>gtk3-nocsd</b> fa solo sparire le decorazioni, ma la barra del titolo/menù/ecc. rimane, anche se imposti le dimensioni del titolo a 0 [sempre se il tema gtk NON lo usa <i>anche</i> per tutto il resto del testo all'interno delle finestre]</p>
<p style="text-align: justify;">E realizzare/modificare un tema Gtk2,3,4... non è proprio roba di 2 minuti, ahimé. Potete però provare ad usare <b>gtk3-classic</b>, che ripristina il comportamento "classico" di gtk3. Lo trovate su github (<a href="https://github.com/lah7/gtk3-classic" rel="nofollow" target="_blank">https://github.com/lah7/gtk3-classic</a>).</p>
<p style="text-align: justify;">Solo un consiglio: <i><b><span style="color: #cc0000;">prima</span></b></i> di installare i pacchetti di gtk3-classic, cambiate il tema del window manager da “borderless” a qualcos’altro… :) (: :) (:</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-76618060088847497302022-02-01T16:46:00.007+01:002022-07-10T16:36:24.133+02:00Xubuntu e i doppi titoli delle finestre (1/2)<p style="text-align: justify;"><b>Premessa:</b> per tutta una serie di motivi vari sono passata a Xubuntu. <i>[La verità nuda e cruda è che, dopo gli -anta, la <span style="color: #BB0000;"><b>!</b></span>pazienza e la pigrizia tendono a vincere sul desiderio di avere TUTTO sotto controllo.]</i></p>
<p style="text-align: justify;">Ma, con xubuntu 21.10 (Impish) che mischia allegramente i vari gnome, kde e gtk+1234567ecc. con xfce4, la pazienza viene davvero messa a dura prova da una… ❝feature❞ <i>[sì sì vabbè, chiamamola così… *cough cough*]</i>: il fottutissimo DOPPIO TITOLO.</p>
<p style="text-align: justify;">Ok. Ricapitolando: Si può eliminare (assieme ai bordi) dalle finestre a tutto schermo tramite le preferenze, con o senza <b>gtk3-nocsd</b>, si può far scomparire il testo del primo titolo mettendo le dimensioni del carattere a 0 da dentro l’editor delle impostazioni. Ma se NON avessi nessuna voglia di mettere tutte le finestre a tutto schermo? Se volessi o dovessi aprire due programmi affiancati? Cazzo me ne faccio di un titolo co’ ‘na barra vuota sopra la su’ capa?</p>
<p style="text-align: justify;">Una soluzione rapida e brutale? Creare un tema VUOTO. Senza un bel gnente de gnente.</p>
<p style="text-align: justify;">Come? Apri un terminale quarsiasi:</p>
<p style="text-align: justify;"><code>sudo mkdir -p /usr/share/themes/empty/xfwm4</code> ← crea la cartella del tema (ovviamente puoi scrivere “fottiti”, “borderless” o “gnente” al posto di “empty”).</p>
<p style="text-align: justify;"><code>sudo touch /usr/share/themes/empty/xfwm4/themerc</code> ← crea un file completamente vuoto chiamato “themerc” nella cartella dedicata alle impostazioni del tema per un dato window manager (nel mio caso xfwm4)</p>
<p style="text-align: justify;">Chiudi il terminale ed apri le preferenze per il window manager. Scegli il tema che hai appena creato.</p>
<p style="text-align: justify;">Fatto.</p>
<p style="text-align: justify;">[NOTA BENE: quel che questo tema elimina sono le varie decorazioni, i bottoni, i bordi e la barra del titolo usate da <i>xfwm4</i>. Dovrete googlare per eliminarli da altri window manager. ;) ]</p>
<p style="text-align: justify; font-size: 0.4em;"><i>[Ultima nota, stavolta per i diversamente anglofoni: imposto TUTTI i vari OS su cui devo lavorare in INGLESE. Perché non mi va di farmi guastare l’umore *pure* da una traduzione a minchiam. Quindi se non trovate le impostazioni giuste, cazzi vostri. Le troverete, prima o poi.]</i></p>
<p style="text-align: justify;">Se invece volete qualcosa che sia un filino meno minimalistico, provate questo: <a href="https://github.com/furycd001/Lipstickleft" target="_blank" rel="nofollow">https://github.com/furycd001/Lipstickleft</a></p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com1tag:blogger.com,1999:blog-24611040.post-65010273263582412362021-01-20T08:54:00.002+01:002021-01-20T09:10:01.412+01:00La fine di "cyberdeaf.org"<p style="text-align:justify;">Probabilmente qualcuno se n'è accorto anche prima.</p>
<p style="text-align:justify;">Non ho più un dominio. Né un sito web vero e proprio. Ho cambiato ISP ed indirizzo email. Ho fatto il backup del sito con largo anticipo, ma…</p>
<p style="text-align:justify;">…non credo proprio che rimetterò online sia il sito che il dominio. Non a breve, almeno. Forse mai.</p>
<p style="text-align:justify;">(dovrei ricordarmi pure di aggiornare anche i vari contatti, eccetera :) )</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com3tag:blogger.com,1999:blog-24611040.post-31222616871922829192020-09-15T13:57:00.001+02:002020-09-15T13:58:12.207+02:00Lapsus rivelatore<p style="text-align:justify;">Da una email della nostra responsabile di sede: «[…] nello spread<b>shit</b> che ci è stato inviato.»</p>
<p style="text-align:justify;">Non so se l’abbia scritto apposta o per sbaglio. Ma l’ho quasi amata per questo :)</p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com1tag:blogger.com,1999:blog-24611040.post-6118556230389325192020-01-13T14:45:00.000+01:002020-01-13T14:45:31.215+01:00Uhm…<p style="text-align:justify;">…C’è ancora qualcuno che mi legge(va)? :)</p>
<p style="text-align:justify;">Nel qual caso volevo solo avvisare di alcune cose:</p>
<ol><li>Sono ancora viva e vegeta, ho solo molto meno tempo libero di prima</li>
<li>Sto spostando (e aggiornando) alcuni dei contenuti dal vecchio sito a questo blog <sup><a href="*">(*)</a></sup></li>
<li>E, siccome ogni tanto mi prende la “Sindrome del Pixel Perfetto”, è possibile che pure il look del blog possa risentirne!</li>
</ol>
<p style="text-align:justify;"><sup><a name="*">(*)</a></sup> Vorrei cambiare provider e passare alla fibra, ma non voglio spendere l’iradiddio per spostare un dominio e un sito statico. Tutto qua. Spero solo che il mio “ingegnere” non faccia pasticci a mia insaputa, lasciandomi col cerino in mano e il wayback machine.</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com8tag:blogger.com,1999:blog-24611040.post-5175837738184405502018-02-07T14:46:00.002+01:002018-02-07T15:01:47.505+01:00Chrome e i certificati SSL/TLS della Symantec<p>Interessante.</p>
<p>A quanto pare, se si va a leggere "<a href="https://www.theregister.co.uk/2018/02/07/beware_the_coming_chrome_certificate_apocalypse" target="_blank">Beware the looming Google Chrome HTTPS certificate apocalypse!</a>" (È il "The Register", tranquilli) e "<a href="https://arkadiyt.com/2018/02/04/quantifying-untrusted-symantec-certificates/" target="_blank">Quantifying Untrusted Symantec Certificates</a>", è possibile che, già ad aprile di quest'anno, inizieranno ad esserci problemi ad accedere a parecchi siti.</p> <p>Problemi che <i>sicuramente</i> manderanno in panico gli utonti.</p>
<p>P.S.: <strike>Non so se sono io che sono troppo paranoica con NoScript, uBlock e uMatrix o se sia un problema anche di altri, ma mi sembra che <i>AL MOMENTO</i> non funzionino più i commenti.</strike> Prima o poi troverò il tempo (e la voglia) di farli rifunzionare. Pace.</p><p><b>EDIT:</b> Diciamo che per ora funzionano. Non come li volevo io, però. <i><small>(I commenti, non i certificati...)</small></i></p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-79940786084043564822018-01-19T16:21:00.000+01:002018-01-19T16:21:00.301+01:00Basta. Al rogo il JPEG.<p>Non se ne può più. Te lo ritrovi dove meno te lo aspetti. Nei luoghi dove meno serve. E, soprattutto, pare voglia godere abbestia nel farti vedere i peggio artefatti (che tu avevi fatto di tutto per evitare, specialmente nel caso di testo/disegni/loghi).</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com2tag:blogger.com,1999:blog-24611040.post-3064592718711626042017-04-05T14:03:00.000+02:002017-04-05T14:03:57.356+02:00Tra poco inizierà a far caldo...<p>... per cui mi sembrava logico proporre due fumetti di una disegnatrice finno-svedese :)</p>
<ul><li>A Redtail's Dream: <a href="http://www.minnasundberg.fi/comic/page00.php" target="_blank">http://www.minnasundberg.fi/comic/page00.php</a><br>(completata)</li>
<li>Stand Still, Stay Silent: <a href="http://www.sssscomic.com/" target="_blank">http://www.sssscomic.com/</a><br>(non ancora completata)</li></ul>
<p>Buona lettura!</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-52879888038816460872016-10-28T14:27:00.000+02:002016-10-28T14:27:51.370+02:00Ho-hum.<p>Ehm.</p>
<p>È parecchio che non aggiorno, vero?</p>
<p>Eh. Credo sia normale. Prima o poi, le "utontate" iniziano a ripetersi e diventa difficile scrivere qualcosa di nuovo. In più, col tempo, le mie attività si sono un po'... come dire? ... "spostate" verso altri ambiti che, con l'informatica, hanno in comune l'accendere il computer e sbattere dita sopra a una tastiera. E basta.</p>
<p>E quindi?</p>
<p>Quindi nulla. Semplicemente, scriverò qui solo quando avrò effettivamente qualcosa di utile (e pertinente) di cui scrivere. Cosa che, col tornare all'università (!), diventerà ancor più sporadica di prima.</p>
<p>:)</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-29556988448383305342016-03-07T13:06:00.000+01:002016-03-07T13:06:41.840+01:00La PotterMania continua...<p>Se "<a href="http://hpmor.com/chapter/1" target="_blank">Harry Potter and the Methods of Rationality</a>", non vi è bastato, c'è anche questo .... blog? tumblr? coso? (aiuto, non so un cazzo del gergo di tumblr) insomma, questo: <a href="http://thesetupwizard.tumblr.com/">The Setup Wizard</a> che, una volta al giorno, posta qualcosa dal dipartimento Reti di... Hogwarts :)</p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-33481142535791607512016-01-25T11:54:00.000+01:002016-01-25T11:54:13.613+01:00Come mandare a quel paese Spotlight.<p>Se vi sta altamente sulle scatole il fatto che Spotlight insista allegramente a rallentare qualsiasi vostra azione con chiavette/hd esterni USB con il suo volerli indicizzare a tutti i costi...</p>
<p><code><b>touch .metadata_never_index</b></code> nella root del hd esterno o della chiavetta USB e siete apposto.</p>
<p>Vammoriammazzà, maledetto Spotlight e la tua "Privacy" farlocca (non funziona se la chiavetta o il hd sono formattati NTFS o FAT** o ExFAT).</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com2tag:blogger.com,1999:blog-24611040.post-46943562182312893882015-04-28T17:31:00.000+02:002015-04-28T17:48:57.411+02:00Javascript e video random<p>Per motivi vari dovevo preparare dei test basati sulla somministrazione di video. Esperienze precedenti mi hanno portato a considerare $pauerpoint come qualcosa di incredibilmente ingombrante e ricco di complicazioni, specialmente se il test doveva essere usato su computer diversi (mac e/o pc, con versioni sia di SO che di $pauerpoint molto probabilmente diverse). Figurarsi voler "randomizzare" questi video.</p>
<p>Per questo ho deciso invece di usare Firefox e il formato video webm, almeno per le versioni "preliminari" di questi test (quelle che nemmeno arrivano allo 0.9.9, per capirci :)) E dato che il tutto doveva avvenire in "locale", dovevo necessariamente usare javascript.</p>
<a name='more'></a>
<p>Qui di seguito troverete il codice per randomizzare un array di video:</p>
<p><small><code><pre><!DOCTYPE html><html><head><meta charset="utf-8" />
<title>Test Video con 3 bottoni</title>
<!-- https://raw.githubusercontent.com/coolaj86/knuth-shuffle/master/index.js -->
<!-- http://bost.ocks.org/mike/shuffle/ -->
<link href="css.css" type="text/css" rel="stylesheet">
<script type="text/javascript">
var TestFilm = ["00_cor","01_cor","02_err","..."]; /* qui mettete solo il NOME dei filmati */
var Info1 = ["italiano","straniero"]; /* esempio di informazioni per dropdown menù */
/* questa è la funzione di randomizzazione usata */
function kshuffle(array) {
var m = array.length, t, i;
while (m) {
i = Math.floor(Math.random() * m--);
t = array[m];
array[m] = array[i];
array[i] = t;
}
return array;
}
var NewFilm = kshuffle(TestFilm);
var risultati = [];
/* serve per confermare il bottone premuto e salvare i risultati */
function GoAhead(reslt) {
if (reslt == "1") {var btn = ",verde";} else {var btn = ",rosso";}
if (((NewFilm[0].search("_cor") != -1) && (reslt == "1")) || ((NewFilm[0].search("_err")!= -1) && (reslt == "0")))
{esito = NewFilm[0]+" OK,1"+btn} else {esito = NewFilm[0]+" NO,0"+btn;}
document.getElementById("avanti").innerHTML = '<img src="img/avanti0.png" width="95" height="70" hspace="30"'+
' onmouseover="this.src=\'img/avanti1.png\';" onmouseout="this.src=\'img/avanti0.png\';"'+
' onclick=\'NextFilm("'+esito+'")\'>';
}
/* mostra il film presente nell'array NewFilm[0] */
function ShowFilm(){
if (NewFilm.length >= 1) {
var filmato = '<video src="webm/'+NewFilm[0]+'.webm" controls mute muted width="960" height="540" '+
'preload="auto" id="video"></video>';
document.getElementById("Test").innerHTML = '<p align="center" id="Filmato"></p>';
document.getElementById("Filmato").innerHTML = '<table align="center" width="100%">'+
'<tr align="center" valign="middle"><td width="20%">&nbsp;</td>'+
'<td align="center" width="60%">'+filmato+'</td><td align="right" width="20%" id="avanti">'+
'<img src="img/avanti_null.png" width="95" height="70" hspace="30"></td></tr><tr><td></td><td>'+
'<img src="img/si_0.png" style="vertical-align: middle; float: left;" align="left" '+
'width="80" height="85" vspace="30" hspace="90" id="giusto" onmousedown="this.src=\'img/si_1.png\';'+
' errato.src=\'img/no_0.png\';" onclick="GoAhead(1)"> &nbsp; '+
'<img src="img/no_0.png" style="vertical-align: middle; float: right;" align="right" width="80"'+
' height="85" vspace="30" hspace="90" id="errato" onmousedown="this.src=\'img/no_1.png\'; '+
'giusto.src=\'img/si_0.png\';" onclick="GoAhead(0)">'+
'</td><td></td></tr></table>';
} else {
document.getElementById("Test").innerHTML = '<h3>Il test è terminato!<br>'+
'Grazie mille per la tua collaborazione</h3>'+
'<p align="center"><form method="get" name="AltriDati" id="AltriDati">'+
'<b>Nome:</b>&nbsp;<input type="text" name="nome" value=""> '+
'<b>Cognome:</b>&nbsp;<input type="text" name="cognome" value=""> '+
'<b>Età:</b>&nbsp;<input type="text" name="età" size="4" maxlength="4"></p>'+
'<p align="center"><b>Tipologia:</b>&nbsp;<select name="tipologia" id="tipologia" size="1"></select> '+
'<b>Inizio:</b>&nbsp;<input type="text" name="inizio" value=""></p>'+
'<p align="center"><textarea name="annotazioni" rows="6" cols="60"></textarea></p>'+
'<p align="center" style="text-decoration: underline;" id="Estrazione Risultati" '+
'onclick="return ShowResults(this.form)"><b>Mostra (o aggiorna) i risultati</b></form></p>'+
'<div id="EsitoTest" align="center" valign="middle" style="text-align: center; '+
'vertical-align: middle;"></div>';
for(var i = 0; i < Info1.length; i++) {
var opt = document.createElement('option');
opt.innerHTML = Info1[i]; opt.value = Info1[i];
document.getElementById("tipologia").appendChild(opt);
}
}
}
/* mette in risultati[0] i dati passati tramite GoAhead() e toglie, se necessario, il film appena visto da NewFilm[0] */
function NextFilm(result) {
var risultato = result+",";
if (NewFilm.length >= 1) {
risultati.push(risultato); NewFilm.shift(); ShowFilm();
} else {
risultati.push(risultato);
}
}
/* ordina i risultati per film, crea un file csv e visualizza i risultati delle risposte ad ogni film */
function ShowResults(form) {
var f = document.AltriDati;
var OrdRis = risultati.sort();
var d= new Date();
var Oggi = d.getDate()+'/'+(d.getMonth()+1)+'/'+d.getFullYear()+' '+d.getHours()+':'+d.getMinutes();
var fileName = d.getFullYear()+'_'+(d.getMonth()+1)+'_'+d.getDate()+'_'+f.cognome.value+".csv";
var buffer = "Data:,"+Oggi+"\r\nNome Cognome:,"+f.nome.value+' '+f.cognome.value+"\r\nEtà:,"+
f.età.value+"\r\nTipologia:,"+f.tipologia.value+"\r\nInizio:,"+f.inizio.value+
"\r\n\r\nNote:,\""+f.annotazioni.value+'\"'+
"\r\n\r\nRisultati (ordinati per film) ⇊⬇⇊,\r\n"+OrdRis.join("\r\n");
var blob = new Blob([buffer],{type: 'text/csv;charset=utf-8;'});
var lnkcsv = document.createElement('a');
var urlcsv = URL.createObjectURL(blob);
lnkcsv.href = urlcsv;
lnkcsv.align = 'center';
lnkcsv.style = 'text-align: center';
lnkcsv.download = fileName;
lnkcsv.innerHTML = 'Salva come CSV';
document.getElementById("EsitoTest").innerHTML = '<p align="center" id="MostraRisultati">'+
'<b>Clicca sul link al CSV, oppure copia ed incolla</b><br><span id="LinkCsv"></span></p>'+
'<hr align="center" size="1" width="80%" noshade="noshade"></hr>'+
'<p align="center" style="text-align: center; -moz-column-count: 4; -moz-column-gap: 10px;'+
' -webkit-column-count: 4; -webkit-column-gap: 10px;">'+
OrdRis.join('<br>')+'</p><hr align="center" size="1" width="80%" noshade="noshade"></hr>';
document.getElementById("LinkCsv").appendChild(lnkcsv);
}
</script>
</head>
<body class="content" valign="middle" align="center" style="text-align: center; vertical-align: middle;">
<div id="Test" class="table" align="center" valign="middle" style="text-align: center; vertical-align: middle;">
<noscript><h3 align="center" style="color: #AA0000; text-decoration: blink;">Buongiorno! Fatti un caffè, disattiva NoScript e poi riprova...</h3></noscript>
<script type="text/javascript">ShowFilm();</script>
</div></body></html></pre><code></small></p>
<p>Oltre al video, questo codice prevede due risposte date mediante due bottoni separati ed una freccia per passare al filmato successivo, tutti e tre con animazioni. il "avanti_null" è semplicemente una png "vuota" delle stesse dimensioni della freccia vera e propria che compare solo DOPO che si è premuto uno o l'altro bottone. Se si cambia idea e si preme l'altro bottone, il bottone premuto precedentemente torna alla immagine originaria. Il premere la freccia "avanti" memorizza in un array, con push, la scelta effettuata, e rimuove con shift dalla prima posizione dell'array il film appena visto prima di ritornare alla funzione ShowFilm. Si arriva alla schermata di inserimento di ulteriori informazioni quando l'array NewFilm è ormai vuoto.</p>
<p>Lo metto qua perché, per essere una soluzione "home made", mi sembrava onesto metterla a disposizione di chi, per motivi vari (soldi, tempo, disponibilità), non può o non ha bisogno di roba incredibilmente più raffinata o, banalmente, abbisogna di una impalcatura di base per le versioni PRELIMINARI di un test in via di sviluppo. Fatene quel che cazzo pare a voi e alla vostra coscienza :)</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-63722376293627682312015-03-26T14:07:00.000+01:002015-03-26T14:07:00.040+01:00Du' link utili a chi deve passare da 16:9 a 4:3 o viceversa<p>Se, per motivi vari, dovete adattare "a mano" dei video, forse anche cambiarne il rapporto (da 16:9 a 4:3 o viceversa), ci sono queste due calcolatrici che vi fanno anche vedere le dimensioni a schermo: <ul><li><a href="http://size43.com/jqueryVideoTool-4x3.html" target="_new">http://size43.com/jqueryVideoTool-4x3.html</a><br /><i>(per calcolare un rapporto 4:3)</i></li><li><a href="http://size43.com/jqueryVideoTool.html" target="_new">http://size43.com/jqueryVideoTool.html</a><br /><i>(rapporto 16:9)</i></li></ul></p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-35524046622330650002014-12-02T18:00:00.000+01:002014-12-02T18:02:05.170+01:00Come scaricare al volo i sottotitoli da YouT*be<p>Col che, fino a prova contraria, la maggior parte delle estensioni per Firefox garantiscono solo il download di video ed audio, uno di questi non garantisce più il download dei sottotitoli (quando ci sono), un'altra estensione ha smesso di funzionare. E in rete si trovano solo o programmi esterni da scaricare/installare oppure tools "online" che non sempre funzionano (specie se si ha NoScript ed AdBlock Edge attivi e non si intende disattivarli).</p>
<p>Un modo più sicuro per avere in mano il file .srt del filmato è:<ol><li>Aprire il video e selezionare il file di sottotitoli desiderato</li><li>far partire un pochino il filmato e poi metterlo in pausa</li><li>aprire l'elenco di elementi bloccabili da AdBlock Edge e cercare in esse una o due url che contenga/no il testo <code><b>timedtext?</b></code></li><li>aprire queste url in un altro tab, per vedere che cosa contengano</li><li>nella barra della url contenente il testo dei sottotitoli (che sarà sicuramente in un formato diverso da .srt), aggiungere, subito dopo il punto interrogativo alla fine di "timedtext", <code><b><i>fmt=srt&</b></i></code> e pigiare invio</li></ol></p>
<p>Dovreste ora avere in mano un file .srt da salvare in locale :)</p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com4tag:blogger.com,1999:blog-24611040.post-22151137577262802152014-11-13T14:58:00.001+01:002014-11-13T14:59:54.811+01:00Conversione batch di video con VLC<p>Se avete un mucchio di filmati da convertire in .webm e farlo a mano con VLC vi appalla non poco, qui sotto c'è un file batch che potete usare anche con <code>nohup batch.sh &</code></p>
<p><code><pre>#!bin/sh
# conversione in webm senz'audio, con riduzione dimensioni a 0.75
vc="VP80"
vb="5120"
sc="0.75"
mux="webm"
fic="1000"
newdir="./webm2/"
vlc="/usr/bin/vlc"
if [ ! -e "$vlc" ]; then
echo "Command '$vlc' does not exist"
exit 1
fi
for file in "$@"; do
echo "=> Transcoding '$file'... "
dst=`dirname "$file"`
new=`basename "$file" | sed 's@\.[a-z][a-z][a-z]$@@'`.$mux
$vlc -I dummy -q "$file" --file-caching "$fic" --no-sout-avcodec-hurry-up --no-avcodec-hurry-up \
--sout "#transcode{vcodec=$vc,vb=$vb,scale=$sc,acodec=none}:std{access=file,mux=$mux,dst=$dst/$new}" \
vlc://quit
ls -lh "$file" "$dst/$new"
mv "$dst/$new" "$newdir"
echo
done
</pre></code></p>
<p>Se non era proprio quello che volevate esattamente, riaprite VLC, fate <code>CTRL+M</code>, alzate la verbosità a "2 (debug)", lasciate la finestra dei messaggi aperta, aprite uno dei filmati che volevate convertire, impostate la conversione secondo i parametri che volevate, salvate da qualche parte il filmato, eseguite la conversione. I parametri che volevate saranno presenti nelle prime righe di output della finestra dei messaggi. Si fa prima che a craniarsi contro una documentazione (sia online che offline) non proprio <i>aggiornatissima</i>.</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com1tag:blogger.com,1999:blog-24611040.post-88857749074940644582014-11-11T14:30:00.000+01:002016-03-07T12:59:45.042+01:00Harry Potter e...<p>...i metodi della razionalità.</p>
<p>Oggi mi sento cattiva. La rete qua in ufficio mi rimanda ai giorni della commutata e dei modem a 28.8 Kbps.</p>
<p>Per cui vi lascio con un link ad una ECCELLENTE fanfic: <a href="http://hpmor.com/chapter/1" target="_blank">Harry Potter and the Methods of Rationality</a></p>
<p>Buona lettura. E no. Non mi scuso per non aver fatto lavorare anche voi. ;)</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-73147406400660816992014-09-09T10:05:00.001+02:002021-02-08T19:11:17.394+01:00Aforismi post-vacanzieri<p>È già una settimana che sono tornata al lavoro. Ma già al ritorno a casa abbiamo potuto verificare la veracità dell'<a href="https://cyberdeaf.blogspot.com/2013/12/aforisma-pre-natalizio.html">aforisma pre-natalizio</a>, con la lavastoviglie che ci rifila la sòla.</p>
<p>Indi, per allietarvi la fine delle ferie vi elargisco altri aforismi:</p>
<p><b>De ingegneribus:</b> "Quello che può essere ovvio per un ingegnere non è detto che sia altrettanto ovvio per chi ingegnere non è. E viceversa"</p>
<p><b>De acquistandibus:</b> "Tutto se rompe prima o poi. Datte un cazzo di prezzo massimo che non ti faccia rosicare troppo in caso di sfiga e muoviti entro quel limite."</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com5tag:blogger.com,1999:blog-24611040.post-11534305198899594062014-07-16T11:11:00.001+02:002014-07-16T11:11:49.034+02:00Aforisma estivo<p>Dato che l'approssimarsi delle ferie mi rende quantomeno psedudo-filosofica...</p>
<center><b><i><font size="+1">"Prima di dire che $cosa_qualsiasi fa cagare, verificare che non ci siano stitici nei paraggi"</font></i></b></center>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-52222809658989887842014-06-27T12:26:00.001+02:002014-06-27T12:26:40.558+02:00Blogspot e dominii personali<p>Cosina veloce. E, sperabilmente, utile per chi — come me — ha un blog su blogspot e lo fa puntare a un dominio o sottodominio personale.</p>
<p>Avrete visto che, nella schermata delle statistiche, in seguito al passaggio da "vostroblog.blogspot.com" a "www.vostronomeblog.com", non riuscite più ad escludere dal conteggio delle visite le <i>vostre</i> visite.</p>
<p>La soluzione è semplice: copiate ed incollate nella barra della URL "<code>http://www.vostronomeblog.com/b/statsBlockingCookie?action=SET&callback=__gwt_jsonp__.P2.onSuccess</code>". Fatelo periodicamente: quando cambiate browser, quando aggiornate il browser, quando lo fate da un altro computer o almeno una volta ogni due anni (che è la durata del cookie impostato).</p>
<p>Suggerimento preso da: <a target="_blank" href="http://www.kevinhq.com/2014/05/how-to-fix-dont-track-your-own-page-views-problem.html">http://www.kevinhq.com/2014/05/how-to-fix-dont-track-your-own-page-views-problem.html</a></p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0tag:blogger.com,1999:blog-24611040.post-89473493908328384622014-06-20T12:38:00.000+02:002014-06-20T12:38:50.460+02:00Pignolerie<p>Ma solo io devo farmi ossessionare dalla qualità di quel che vedo sul monitor LCD, fino al punto di passarci due o tre mezze giornata finché non sono soddisfatta?</p>
<p>Tra sub-pixel order, ri-riconfigurazione del fontconfig, scoperta (tardiva) dei pacchetti eselect di lcdfilter e infinality, e pure quest'ultimo suggerimento: <a href="http://docs.xfce.org/xfce/xfce4-settings/appearance#rendering" target="_new">http://docs.xfce.org/xfce/xfce4-settings/appearance#rendering</a>, come anche rismanazzamento delle impostazioni del monitor stesso, ora che sono soddisfatta (finalmente?) mi rendo conto che probabilmente, da brava informatica, devo avere dei sintomi lievi di OCD.</p>
The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com4tag:blogger.com,1999:blog-24611040.post-14483359400803799002014-06-03T10:20:00.000+02:002014-06-03T10:20:52.296+02:00conversione di n files da svg a tiff<p>Se avete un mucchio di files in .svg da convertire in .tiff, vi servono inkscape e imagemagick in primo luogo.</p>
<p>Date poi questo comando: <code>for i in *.svg; do inkscape "$i" -z -d 1200 -y 255 -e "${i%.svg}.png"; convert -antialias "${i%.svg}.png" -antialias -compress zip "${i%.svg}.tif"; done</code></p>
<p>Se non avete capito cosa fa esattamente, usate <code>man inkscape</code> e <code>man convert</code> per capire cosa fanno i vari parametri.</p>The CyberDeafhttp://www.blogger.com/profile/17588442413907270655noreply@blogger.com0