journalctl -u micro – Telegram
journalctl -u micro
93 subscribers
2.17K photos
210 videos
287 files
1.44K links
Esperienze e consigli di uno sviluppatore tech−unenthusiast

creation — 2021-04-29
owner — @Microeinstein

networks
@sigma_hub Σ
@ageiroumena
Download Telegram
cdecl.org as a cli tool
Istruzioni di compilazione nel sorgente C++ stesso

#!/usr/bin/env -S bash -c "set -x; tail -n+2 \$0 | g++ -x c++ -std=c++20 - && ./a.out"
#include <iostream>
...

$ chmod +x file.cpp
$ ./file.cpp
+ tail -n+2 ./file.cpp
+ g++ -x c++ -std=c++20 -
+ ./a.out
Hello World
🤯3
Per non avere un one-liner illeggibile, con binfmt_misc di Linux [non so altri kernel] è possibile registrare un tipo di file tramite magic o estensione per essere eseguito con un interprete arbitrario — è quello che fa Wine per permettere l'esecuzione scrivendo solo
./program.exe

• enable support for Windows executables using wine:
echo ':DOSWin:M::MZ::/usr/local/bin/wine:' > /proc/sys/fs/binfmt_misc/register

Quindi immagino
echo ':CPP:E::cpp::/etc/compiler.g++.sh:P' > /proc/sys/fs/binfmt_misc/register
Forwarded from The Archivists Domain (🦊 Axyl/LodzieNZ 🇳🇿 (R4V3F0X))
😭😭😭
🤝2
Forwarded from The Meme Colander
🤡1
La funzione di cui abbiamo bisogno
👏2
Bash — eseguire l'output di un comando nella stessa shell
eval -- "$(cmd \"$subst1\" ...)"
✔️ source <(cmd "$subst1" ...)
https://thirtydollar.website/
sans particle accelerator
🤯1
Il sangue umano non le basta più, vuole abbandonare la fragile chitina per la certezza dell'acciaio
#transmosquitism
🔥1🤯1
Ennesimo mini-progetto: sto provando a riscrivere il mio prompt Bash in C++

Di norma il formato del prompt viene salvato in PS1, e appena prima della sua stampa viene eseguito ogni volta PROMPT_COMMAND. È sufficiente aggiungere un source <(prog) a quest'ultima variabile — e poi stampare codice bash in prog — per far funzionare tutto.

Sono riuscito a replicare l'effetto 🌈 (ogni prompt cambia colore in ordine) salvando uno stato negli argomenti di prog, che quindi vado ad aggiornare ogni volta.

Ora vorrei capire se si possa avere un prompt dinamico in caso di ridimensionamento: esiste il segnale SIGWINCH che comunica una nuova dimensione del terminale; esso è catturato da Bash per comunicare alla libreria readline di ristampare il prompt con l'input attuale invariato — es: provate a inviare printf 'ok', preparare un comando qualsiasi senza inviarlo e poi ridimensionare il terminale.

È possibile impostare un handler personalizzato con trap 'myfunc' SIGWINCH, ma in tal caso Bash non ristamperà più il prompt... In caso di ristampa manuale, non esiste alcun modo di catturare l'input parziale. Ho anche provato ad aggiornare PS1 per poi rimuovere/rimettere l'handler re-inviando il segnale a Bash, ma con tutta probabilità non si aspetta un cambio di contenuto, infatti ristampa il prompt precedente...

Ho già speso troppo tempo su questa feature, immagino che dovrò rinunciarci
journalctl -u micro
🔍 "ANSI escapes" 🔍 "ctlseqs" Qui c'è letteralmente tutto https://invisible-island.net/xterm/ctlseqs/ctlseqs.pdf https://invisible-island.net/xterm/ctlseqs/ctlseqs.html
Vi sarà sicuramente capitato di premere tasti freccia, backspace o quant'altro durante l'input di programmi stupidi che non gestiscono tali tasti — es: cat.

Avete presente quel testo che esce tipo ^[[A^[[B^[[H ..?
Ecco, sono escape ansi, inviati dal terminale in stdin per comunicare al programma di gestire il cursore — non a caso sono le stesse sequenze presenti qui.
👍2
Bash prompt + libreadline debugging
stdbuf -o0 -e0 bash -i \
|& stdbuf -o0 -e0 xxd -c1
Latest univr experience

> prenoto per ritirare la pergamena
> 1 week later
> faccio >40min di autobus
> attendo la prenotazione
> non va internet in tutto l'ateneo
> tengono le pergamene in un archivio di 8000 cassetti
> non possono cercare a mano
> non possono rilasciare pergamene
image_2023-07-09_20-09-53.png
67 KB
Sperimentando con powerline custom su Konsole — senza toccare i parametri fontconfig compaiono disallineamenti fastidiosi

https://github.com/powerline/fonts/issues/31#issuecomment-1023622834

/etc/fonts/conf.d/99-konsole.conf
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<test name="prgname" compare="contains">
<string>konsole</string>
</test>
<edit name="lcdfilter" mode="assign">
<const>lcdlegacy</const>
</edit>
</match>
</fontconfig>