Come automatizzare le operazioni di un programma Windows 10

Quando usavo Linux ho sempre tenuto diversi widget attivi per monitorare le attività del computer.

Anche in Windows 10 esiste qualcosa di simile, si chiama Gestione Attività, ma se lo lanciamo all’avvio non lo si riesce a far scomparire dalla barra delle applicazioni attive. Per farlo scomparire bisogna aprirlo e poi ridurlo ad icona (dopo aver impostato questo comportamento nelle configurazioni).

Inutile dire che la cosa è abbastanza fastidiosa.

Per il risolvere il problema ho usato AutoHotKey (che uso anche per impostare le scorciatoie per le lettere accentate maiuscole e i caratteri speciali).

Mi è bastato aggiungere le righe seguenti allo script di configurazione eseguito all’avvio:

WinWait, Gestione attività
Sleep, 300
WinRestore, Gestione attività
Sleep, 300
WinMinimize, Gestione attività

Se ti serve qualche indicazione su come eseguire lo script di configurazione all’avvio la puoi trovare nel post sulle lettere accentate e i caratteri speciali.

Disabilitare il plugin All In One SEO di WordPress in una singola pagina

Per aggiungere la sezione link a questo sito ho usato due plugin che mi hanno permesso di lavorare sempre dalla dashboard senza bisogno di scrivere nuovi plugin (trovi i dettagli in questo post).

Con il passaggio alla versione 4 del plugin All In One SEO, però, è stata eliminata la possibilità di poterne disabilitare le funzioni in una singola pagina (che io usavo per modificare titolo e proprietà dell’OpenGraph di Facebook) e, in più, è stata anche modificata la riscrittura dei titoli delle pagine.

Queste modifiche hanno reso non più completamente funzionante la mia sezione link ed ecco dunque le modifiche che ho dovuto fare.

Continua a leggere Disabilitare il plugin All In One SEO di WordPress in una singola pagina

Incorporare un sito Odoo 12 in un iframe di un sito esterno

In un gestionale che ho scritto in Web2py incorporo alcune pagine di un’installazione di Odoo 12 che risiede su un server diverso.

Le recenti politiche di sicurezza dei browser hanno reso impossibile questo comportamento a meno di una autorizzazione esplicita del sito incorporato.

Il problema è che né Odoo 12 né la versione installata del server Nginx che uso come reverse proxy gestiscono questa possibilità.

Come fare?

Continua a leggere Incorporare un sito Odoo 12 in un iframe di un sito esterno

Come programmare una scheda ESP8266 NodeMCU con l’IDE di Arduino

Per prima cosa bisogna configurare l’IDE di Arduino.
Andiamo in

File > Impostazioni

e nel campo

“URL aggiuntive per il Gestore schede”

aggiungiamo:

http://arduino.esp8266.com/stable/package_esp8266com_index.json.

Se sono già presenti altri URL usiamo la virgola come separatore.

Poi andiamo in

Strumenti > Scheda > Gestore schede

e installiamo il modulo esp8266 di ESP8266 Community (se ce ne sono molte il campo di ricerca permette di filtrare i risultati).

Ora possiamo tornare in

Strumenti > Scheda

e poter scegliere “NodeMCU 1.0 (ESP-12E Module)“.

Colleghiamo la scheda al computer e impostiamo la corretta porta seriale da

Strumenti > Porta (l’elenco dipenderà dal vostro computer).

Se a questo punto non vedi nessuna porta seriale e stai usando Windows 10 potresti avere bisogno di installare il driver del convertitore dei segnali TTL/USB che è installato sulla scheda.

Ora siamo pronti per caricare il primo programma!

Nel physical computing la classica stampa della stringa “Hello World” è sostituita dal lampeggio del LED che di solito si trova a bordo della scheda.

Andiamo dunque in “File > Esempi > ESP8266 > Blink”. Il programma caricato sarà simile a questo:

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);     // Initialize the LED_BUILTIN pin as an output
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, LOW);   // Turn the LED on (Note that LOW is the voltage level
  // but actually the LED is on; this is because
  // it is active low on the ESP-01)
  delay(1000);                      // Wait for a second
  digitalWrite(LED_BUILTIN, HIGH);  // Turn the LED off by making the voltage HIGH
  delay(2000);                      // Wait for two seconds (to demonstrate the active low LED)
}

Successivamente possiamo eseguire il comando “Carica”. Ci sarà la fase di compilazione e poi quella vera e propria di caricamento, segnalata da brevi lampeggi del led vicino all’antenna della scheda.

Terminato il caricamento inizierà l’esecuzione del programma con un lampeggio più lento del LED.
Possiamo anche provare a variare i valori indicati nelle due istruzioni delay() per modificare il tipo di lampeggio.

Ora siamo pronti per passare a programmi più complessi! 🙂

Rendere accessibile da Internet un server connesso tramite protocollo NAT o firewall con IP dinamico

Può essere necessario dover accedere ad un server che sia collegato ad Internet ma che non disponga di un indirizzo IP pubblico e statico. Potrebbe avere un indirizzo IP dinamico oppure potrebbe capitare di dover utilizzare un router per telefonia mobile che spesso usa il protocollo NAT, condividendo quindi lo stesso indirizzo IP con altri router.

Se abbiamo a disposizione un secondo server con indirizzo IP pubblico e statico lo possiamo usare come ponte per collegarci al primo server.

Continua a leggere Rendere accessibile da Internet un server connesso tramite protocollo NAT o firewall con IP dinamico

Scrivere un plugin WordPress direttamente dalla Dashboard andando subito al nòcciolo e saltando tutte le parti noiose

Aggiornamento del 29/01/2021: i dettagli sono prima della conclusione.

Volevo aggiungere una sezione link a questo sito per archiviare le notizie interessanti che incontro in giro per la Rete e per avere un unico indirizzo da condividere su Facebook e Linkedin.

Potevo installare un plugin già pronto, ma avrei dovuto cercarne e trovarne uno adatto, oppure potevo scriverne uno io, ma avrei dovuto preparare la struttura di cartelle e file necessari per il codice che spesso contiene ripetizioni di blocchi simili {chi lo ha già fatto sa di cosa sto parlando ;-)}.
Entrambe le soluzioni hanno dunque qualche punto debole.

Ho deciso quindi di provare ad usare i plugin Pods e Code Snippets per prendere il meglio da ciascuna delle due opzioni precedenti: ottenere un plugin che faccia esattamente quello che mi serve concentrandomi solo sul codice che implementa il comportamento del modulo.

Continua a leggere Scrivere un plugin WordPress direttamente dalla Dashboard andando subito al nòcciolo e saltando tutte le parti noiose

Come ottenere lettere accentate e caratteri speciali senza tastierino numerico su Windows 10

Dopo una decina di anni di uso di Linux anche come desktop ho ricominciato ad usare Windows come desktop {solo come desktop! La maggior parte dei miei progetti continua ad essere in ambiente Linux tramite WSL2}.

Nel normale uso di un editor di testo ci sono due punti in cui ancora Windows 10 è rimasto un po’ carente:

  • nell’inserimento delle lettere accentate maiuscole (ad esempio la È) nei testi in italiano
  • nella possibilità di usare caratteri speciali come ~ (tilde) o ` (backtick o apice rovesciato) specialmente nelle sessioni Linux.

Se disponiamo di una tastiera con tastierino numerico possiamo sempre usare la combinazione di tasti ALT + <codice numerico del carattere> per inserire il carattere che desideriamo ma se la tastiera non prevede tastierino numerico come si fa?

Continua a leggere Come ottenere lettere accentate e caratteri speciali senza tastierino numerico su Windows 10