Emacs

From MukeWiki

2020-05

Emacs + AUCTeX
  • Obidve moznosti zapisu su rovnocenne, druha moznost je viac "zjednotena".
zapis 1 zapis 2
(eval-after-load "tex"
  '(add-to-list 'TeX-command-list
                '("mucha-make" "make" TeX-run-TeX nil ; make call latexmk
                  (latex-mode)
                  :help "Run mucha-make")))
(eval-after-load "tex"
  '(add-to-list 'TeX-command-list
                '("mucha-make-clean" "make clean" TeX-run-command nil
                  (latex-mode)
                  :help "Run mucha-make-clean")))
(add-hook 'LaTeX-mode-hook
          (lambda () (setq TeX-command-default "mucha-make")))
(add-hook 'LaTeX-mode-hook
          (lambda ()
            (add-to-list 'TeX-command-list
                         '("mucha-make" "make" TeX-run-TeX nil ; make call latexmk
                           (latex-mode)
                           :help "Run mucha-make"))
            (add-to-list 'TeX-command-list
                         '("mucha-make-clean" "make clean" TeX-run-command nil
                           (latex-mode)
                           :help "Run mucha-make-clean"))
            (setq TeX-command-default "mucha-make")
            ))
  • AUCTeX nepredpoklada priamu moznost spoluprace s latexmk. Dane riesenie vsak nie je uplne na 100% korektne, avsak nie je chybne.
  • Problem spociva v tom, ze latexmk spusta proces kompilacie ako jeden prikaz (celok), ale od potrebnosti (cislovanie referencii, citacii, bibtex, ...) spusta LaTeX vo viacerych krokoch, run-och az do pozadovaneho finale. AUCTeX vsak tento output parse-uje ako celok (vysledok jedneho prikazu), a teda, na zaciatku output-u vidi (podobne ako latexmk) rozne LaTeX Warning, ktore suvisia s potrebnostou cislovania referencii, citacii. latexmk vsak spusti znova LaTeX v 2, 3, atd. kroku, run-e a to vsetko v ramci jedneho prikazu. Prave preto pouzivanie samotneho latexmk je take vyhodne. Ak by sme "naucili" AUCTeX parse-ovat od posledneho kroku, run-u prikazu latexmk, tak je vsetko bez problemov na 100% korektne. Tento problem je vsak len "chyba na krase". V praxi sa prejavi len pri prvom spusteni kompilacie, kedy AUCTeX "chybne predpoklada" (output parse-uje od zaciatku), ze v procese kompilacie sa vyskytol LaTeX Warning a referuje nam, ze je potrebne spustit kompilaciu este raz (latexmk to vsak uz vykonal v ramci jedneho prikazu v 2, 3, atd. kroku, run-e).
  • Najdene rozne riesenia [1], [2], [3], [4], [5] v skutocnosti nie su riesenia, ale skor obchadzanie problemu. Roznymi sposobmi v podstate oklamu AUCTeX error parser. Korektne riesenie (subjektivne, bez vchadzania do hlbky) by asi bolo spravne naucit AUCTeX parse-ovat output od posledneho run-u, kroku prikazu latexmk, a nie od jeho zaciatku. Normalne AUCTeX sam vola prikaz pre LaTeX, potom (podla potreby) vola bibtex, rozhoduje sa (prave na zaklade error parser), ci je potrebne znova volat prikaz LaTeX, t.j. tam je takato funkcionalita error parser vhodna, potrebna.
  • C-c C-l (bound M-x TeX-recenter-output-buffer) zobrazuje output, vysledok kompilacie. Ak potrebujeme zobrazovat jednotlive errors, warnings najprv prepnut M-x TeX-toggle-debug-warnings (bound C-c C-t C-w), znova prekompilovat a potom volat funkciu M-x TeX-error-overview. Zobrazia sa LaTeX Warnings, aj tie, ktore AUCTeX error praser ignoruje (typicky LaTeX Warning: `h' float specifier changed to `ht'). AUCTeX na GitHub-e, napr. ako funguje error parser pozerat tex-buf.el subor.
  • Pravdepodobne existuje riesenie auctex-latexmk. Tento balik robi presne to, co je tu vyssie spomenute, re-search-backward "^Run number [0-9]+ of rule output parse-uje od posledneho run-u, kroku prikazu latexmk.

Emacs

-*- mode: name; var: value; ... -*-

-*- mode: C; coding: latin-1; -*-
-*- mode: Lisp; fill-column: 75; comment-column: 50; -*-
-*- coding: utf-8 -*-
-*- mode: LaTeX; coding: utf-8; -*-

FreeRapid Downloader

Jedina pricina preco pouzivat zastaraly Java program FreeRapid Downloader (aka FRD) je, ze aktualne je to jediny downloader funkcny aj pre iVysilani Ceskej televizie. Na druhej strane neumoznuje stahovanie TV archiv RTVS. V principe obidve moznosti stahovanie (a podstatne viac) ponuka ovela vhodnejsi yt-dlp, co je fork znameho a popularneho youtube-dl. yt-dlp umoznuje elegantne stahovanie z velkeho mnozstva podporovanych stranok, ale momentalne (kvoli issue 6539, resp. 31922 z 2023-03) neumoznuje stahovanie z iVysilani CT.

Update 2024-01 Existuje riesenie umoznujuce stahovanie z iVysilani CT yt-dlp --update-to bashonly/yt-dlp@2023.10.03.054029. Update 2024-04 bashonly/yt-dlp/releases resp. bashonly/yt-dlp/releases/tag/ceskatelevize (aktualne 2024.03.11.185131).

Posledna, resp. aktualna verzia FreeRapid Downloader je 0.9 Update 4 (aka 0.9u4) je este z 2014-05, podstatne je vsak, ze jednotlive plugins (pozor nie https stranka) su stale este udrziavane, vratane plugin-u ceskatelevize.cz (verzia 2.2.1 z 2021-12). Prave tento plugin pre FreeRapid Downloader umoznuje stahovat zo stranok iVysilani CT, pravdepodobne aktualne (2024-01) asi jedina moznost.

$ ssh -D 8080 user@server.com
$ ./yt-dlp_linux --allow-u --proxy "socks5://127.0.0.1:8080/" https://131102-tajemstvi-oceloveho-mesta/
#                --allow-u   # DRM protected

FRD on Fedora

Fedora (by default) instaluje najnovsi java-17-openjdk balik, ale FRD s touto verziou Javy nebude pracovat, resp. FRD bude fungovat, ale nie je mozne vykonat nevyhnutny Plugin Updates a preto je potrebne doinstalovat starsie java-1.8.0-openjdk (OpenJDK 8 Runtime Environment).

# dnf install java-1.8.0-openjdk
# alternatives --config java
There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.9.0.9-3.fc39.x86_64/bin/java)
   2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.392.b08-7.fc39.x86_64/jre/bin/java)

Enter to keep the current selection[+], or type selection number: 2
$ java -version 
openjdk version "1.8.0_392"
$ cd FreeRapid-0.9u4/
$ java -jar frd.jar     # or sh frd.sh

Windows size units

2024-01-16

POZOR Windows zobrazuje velkost v XY-bibytes jednotkach, t.j. v Ki-bibytes (KiB), Me-bibytes (MiB), Gi-bibytes (GiB) alebo Te-bibytes (TiB), ale oznacuje ich jednoducho ako KB, MB, Gb alebo TB ! Inymi slovami Windows pri zobrazovani pouziva tzv. binary prefix (XY-bibytes, resp. XiB), no napriek tomu ich oznacuje s tzv. decimal prefix.

velkost <   10 GB => zobrazovanie s dvoma desatinnymi ciarkami X.XX GB
velkost <  100 GB => zobrazovanie s jednou desatinou ciarkou XX.X GB
velkost < 1000 GB => zobrazovanie bez desatinnej ciarky XXX GB
velkost >    1 TB => zobrazovanie s dvoma desatinnymi ciarkami X.XX TB

POZOR Zobrazovane hodnoty sa nezaokruhluje matematicky, ale len odseknutim desatinneho miesta: 63.88 GB => 63.8 GB, 476.93 GB => 476 GB alebo 3.638 TB => 3.63 TB.

size of partitions
Device         Start       End   Sectors  Size Type
/dev/sda1       2048    206847    204800  100M EFI System
/dev/sda2     206848  21178367  20971520   10G Microsoft basic data   # +10240M
/dev/sda3   21178368  42151935  20973568   10G Microsoft basic data   # +10241M
/dev/sda4   42151936  63127551  20975616   10G Microsoft basic data   # +10242M
/dev/sda5   63127552 272842751 209715200  100G Microsoft basic data   # +102400M
/dev/sda6  272842752 482559999 209717248  100G Microsoft basic data   # +102401M
/dev/sda7  482560000 692279295 209719296  100G Microsoft basic data   # +102402M
 10 GB =  10 240 MB =  10 737 418 240 bytes =  20 971 520 sectors * 512 bytes
100 GB = 102 400 MB = 107 374 182 400 bytes = 209 715 200 sectors * 512 bytes

Vyssie uvedene partitions (vytvorene linux fdisk) a po Windows NTFS naformatovani, File Explorer zobrazuje nasledovne:

 10 240 MB => NTFS:  10 737 414 144 bytes (9.99 GB)
 10 241 MB => NTFS:  10 738 462 720 bytes (10.0 GB)
 10 242 MB => NTFS:  10 739 511 296 bytes (10.0 GB)
102 400 MB => NTFS: 107 374 178 304 bytes (99.9 GB)
102 401 MB => NTFS: 107 375 226 880 bytes (100 GB)
102 402 MB => NTFS: 107 376 275 456 bytes (100 GB)

Windows (po NTFS naformatovani) zobrazuje kapacitu vzdy o 4096 bytes = 4 KB mensiu ako ukazuje linux fdisk, a co je zaroven NTFS default cluster size.

NOTE Create 150 GB partition (+150G, linux fdisk) => 314 574 848 sectors * 512 bytes = 161 062 322 176 bytes = 153 601 MB = 150.000976562 GB. fdisk/gdisk (ale aj Windows) pri vytvarani partition pouzivaju zarovnavanie na 2048-sector, asi preto nie presna 150.00 GB hodnota. Inymi slovami, zarovnavanie na 1 MB = 1 048 576 bytes = 2048 sectors * 512 bytes.

POZOR V pripade ak Win10 instalator sam vytvara partitions, tak pri vytvoreni prvej partition (zvycajne C:) vytvori zaroven +100 MiB ESP partition +510 MiB Recovery partition a to tak, ze suma vsetkych 3 partitions je nami zadana velkost pre vytvorenie prvej partition (zvycajne C:).

summarum
  • Ak pozadujem "pekne, okruhle" cislo ako velkost NTFS partition vo Windows File Explorer, jednoducho navysim velkost partition o 1 MB, napr:
75.0 GB =>  76 801 MB
100 GB  => 102 401 MB
250 GB  => 256 001 MB
  • Pri vytvarani poslednej partition na disku nezadavam konkretnu velkost, ale -1M (linux, fdisk).

EFI notes

2024-01-16

UEFI/BIOS ponuka moznost boot-vania z lubovolnych diskov, ktore maju

  1. EFI (ESP) partition
  2. naformatovane ako FAT (FAT32) file system, resp. UEFI/BIOS musi obsahovat driver pre potrebny file system
  3. obsahuju prave tento subor EFI/boot/bootx64.efi (specifikacia EFI, presne len takyto nazov, pre x64 architekturu)

Pri splneni vsetkych 3 podmienok UEFI/BIOS umozni na-boot-vanie.

prave jeden disk s EFI partition

Po nainstalovani Windows na disk, bude vytvorena EFI partition a vytvoreny Windows Boot Manager boot entry v UEFI/BIOS. Po nasledovnom nainstalovani Linuxu, Linux prida do EFI partition "svoje subory" a do UEFI/BIOS prida Fedora boot entry. Pri starte pocitace UEFI/BIOS potom umozni boot-ovat:

  • Windows Boot Manager na-boot-uje sa priamo Windows
  • Fedora na-boot-uje sa Fedora, ktora zapusti GRUB, a ktory umoznuje vybrat medzi Windows a Linux/Fedorou.

NOTE Ak po nejakom case preinstalujem Windows, musim cez Linux recovery USB spojazdnit Fedora boot entry. !!! to asi nie je pravda !!!, resp. asi len v pripade, ak som pri preinstalovani Windows naformatoval EFI partition. Ak som neformatoval EFI partition, tak v UEFI/BIOS asi stale ostala moznost s Fedora boot entry (v EUFI/BIOS F8 a spustit Fedoru a potom grub2-mkconfig).

dva (a viac) diskov s EFI partition

Na diskW nainstalovany Windows so svojou vlastnou EFI_W partition. Potom nainstalovany na diskL aj Linux so svojou vlastnou EFI_L partition. Windows Boot Manager boot entry sa nachadza na diskW, partition EFI_W a Fedora boot entry na diskL, partition EFI_L. UEFI/BIOS potom umozni boot-ovat:

  • Windows Boot Manager na-boot-uje sa priamo Windows z EFI_W/diskW
  • Fedora na-boot-uje sa Fedora z EFI_L/diskL, ktora zapusti GRUB, a ktory umoznuje vybrat medzi Windows a Linux/Fedorou.

Po fyzickom odpojeni jedneho z dvoch diskov, stale mozem boot-ovat z disku, ktory ostal zapojeny v pocitaci.

NOTE Nie je mi jasne, ak po nejakom case preinstalujem Windows, a budu zapojene obidva disky, na ktoru EFI partition mi Windows "sahne". Obavam sa, ze moze nieco zapisat aj do EFI_L na diskL s Linuxom a teda "rozbabrat" boot-ovanie. Windows zvykne "hladat" volne miesto na lubovolnom zapojenom disku, kde by mohol vytvorit ESP partiton.
Riesenie (neoverene): V UEFI/BIOS disable vsetky disky, okrem diskW s EFI_W. Preinstalujem Windows. Potom, UEFI/BIOS enable diskL. Boot-ujem (F8) z diskL vyberam "Fedora" boot entry a v GRUB vyberam Fedora (ak by som teraz vybral Windows, neviem, ci sa na-boot-uje). Po na-boot-vani do Fedora zapustam grub2-mkconfig -o /boot/grub2/grub.cfg, ktory si check-ne uz preinstalovany, novy Windows a doda ho korektne do GRUB menu. Pozor pri mount-ovani, formatovanie meni UUID disk partition.

Memory optimize

2024-02-02

Load the preset overclock file and DRAM timing from memory SPD chip to quickly overclock to a stable frequency. Alebo inymi slovami, bezpecny tuning pamate priamo od ich vyrobcov.

  • XMP Extreme Memory Profile (Intel Platform)
  • DOCP Direct Over Clock Profile (ASUS AMD Platform), EOCP Extended Over Clock Profile (Gigabyte) or A-XMP (MSI)

Konfiguracia

Priklad konfiguracie: Pamat Kingston 16GB (2x8GB) DDR4 3200MT/s CL16 FURY Beast Black XMP, Non-ECC Unbuffered DIMM (Kit of 2) 1RX8 16-18-18 1.35V 288-pin 8GB, KF432C16BBK2/16. Tato pamat bola pouzita s AMD procesorom na ASUS doske (DOCP terminologia a nie XMP).

FACTORY TIMING PARAMETERS (from spec sheet PDF)
Default (JEDEC) DDR4-2400 CL17-17-17 @ 1.2V
XMP Profile #1 DDR4-3200 CL16-18-18 @ 1.35V
XMP Profile #2 DDR4-3000 CL15-17-17 @ 1.35V

Fan Control

2024-01-31

While fan speeds can be adjusted by using fan control programs as well, we recommend setting the fan speed via the PC's BIOS/UEFI to avoid any software issues.

DC vs. PWM Mode (3-pin vs. 4-pin)

  • DC (Direct Current) ventilatory alebo aj 3-pin ventilatory: 1) napajaci pin, zvycajne 12 V, 2) signalny a 3) GND pin. Jedina moznost zmeny rychlosti otacok je zmena vstupneho napajania. Znizenie napajania pod nominalnych 12 V ma za nasledok znizenie otacok ventilatora. Existuje vsak obmedzenie minimalnym prahovym napatim, kedy sa DC ventilator uz zacne zastavovat (zvycajne 40-50% z nominalnych otacok). Signalny pin zhromazduje informacie o rychlosti otacok (tachometer), aj ked nie je implementovana funkcia regulacia otacok.
  • PWM (Pulse Width Modulation) ventilatory su takisto DC ventilatory, ale s jednym pin-om (kablikom) navyse pre PWM, a teda su to 4-pin ventilatory. Ventilator je po celu dobu napajany 12 V, ale PWM signal rozhoduje o jeho otackach. Takato regulacia umoznuje aj relativne nizke otacky (cca 20% z nominalnych), na rozdiel od DC ventilatorov, co je pravdepodobne ich najvacsia vyhoda.

PWM ventilator v DC mode stale umoznuje regulaciu otacok, ale nie cez PWM signal, ale jednoducho zmenou napajania. Naopak, DC ventilator v PWM mode bude stale bezat na plnu rychlost bez moznosti regulacie otacok.

V pripade ak su v pocitaci napojene dva chassis ventilatory, pricom jeden DC a druhy PWM, cez jeden kabel na CHA_FAN konektor maticnej dosky, UEFI/BIOS deteguje PWM signal. Na regulaciu otacok CHA_FAN preto musim zvolit v UEFI/BIOS dosky rezim DC mode, inak pojde DC ventilator stale na plne otacky. Taka konfiguracia (DC + PWM ventilator na jeden CHA_FAN konektor) samozrejme nie je ziaduca.

Konfiguracia

Priklad konfiguracie:
  • CPU Fan: AMD Wraith Stealth Cooler, 4-pin PWM connector, dodavany standardne s AMD Ryzen procesormi, specifikacie nedostupne.
  • Chassis Fan: ARCTIC P12 PWM PST CO, 4-pin PWM connector, specifikacia uvadza: 200-1800 rpm PWM Controlled (0 rpm below 5% PWM).

Na obrazkoch su charakteristiky namerane pomocou programu ASUS Fan Xpert.
NOTE Fan Xpert je sucastou ASUS AI Suite, co je extremny "bordel", ktory sa ani neda korektne odinstalovat. Vobec to neinstalovat (jedine ak potom format C:).

Ako uz bolo spomenute vyssie, ovladanie ventilatorov je vhodne ponechat na UEFI/BIOS (a nie na rozne "fan control" programy).

ASUS UEFI BIOS

2024-05
F2 / Del UEFI BIOS setting
F8 Boot Menu
F12 Print Screen (screenshot). USB flash drive with only FAT32. NTFS, exFAT or ext4 not supported.

ASUS UEFI BIOS Utility

  • DRAM D.O.C.P. profile (AMD platform)
  • Q-Fan Control
  • Aura [Off]
  • Download & Install ASUS Armoury Crate [Disabled]
  • Boot\Boot Configuration, Boot Logo Display optional [Disabled]
  • Advanced\APM Configuration, Restore AC Power Loss optional [Power On] (see [6] or [7])
  • Advanced\APM Configuration, Power On By PCI-E optional [Enabled] (Wake On LAN function)
  • Advanced\CPU Configuration, SVM Mode optional [Enabled] (Enable/disable CPU Virtualization) virtualization for WSL (Windows Subsystem for Linux)
  • On Windows 10 optional disable fTPM (more info)
  • Disable Intel VMD controller (previously Intel RST) for RAID/Optane (Intel platform)


home PC

CPU_FAN: NOCTUA NH-L9x65 SE-AM4 4-pin PWM
CHA_FAN: Fractal Design Silent Series R3 80mm 3-pin DC (back) + NOCTUA NF-F12 PWM 4-pin PWM (top) = jeden CHA_FAN konektor !!!

Q-Fan Control Profile [Manual]

CPU FAN [PWM Mode]   15%   55%   100%   # akusticky najvacsi narast niekde medzi 40%-50% (1300-1500 rpm)
Temperature          40°C  60°C  70°C
CHA FAN [DC Mode]    40%   50%   100%

Mazda Connect

2024-02-06

Mazda svoj Infotainment System nazyva Mazda Connect a v ramci tohto systemu umoznuje aktualizovat mapy a medialnu databazu Gracenote.

USB rezim umoznuje prehravat obsah z USB flash drive. Dopatrat sa k potrebnym, technickym informaciam znacne komplikovane a v principe len na roznych uzivatelskych forach. Informacie sa mozu lisit v zavislosti od modelu, roku vyroby, verzie firmware a hlavne od "gramotnosti" uzivatela, ktory uverejnil prispevok, takze je potrebne preverovat. Relativne ucelena informacia napr. na stranke How to Play Music from a USB Drive on MZD Connect (attachment USB Music Playback).

  • Podporovane standardy USB 1.1/USB 2.0. USB 3.0 priamo nie je podporovany, ale vacsina tychto zariadeni je spätne kompatibilna s USB 2.0 a teda ho mozno pouzit ako USB 2.0 zariadenie.
  • Format USB drive as FAT32 file system.
  • Testovane formaty: mp3 (ano), ogg (ano), flac (nie), cue (nie). Mal by byt podporovany aj aac format.
  • Format MP3 prehrava v roznej kvalite, resp. s roznym bitrate, od MP3 VBR az po MP3 CBR 320 kbps.
  • Triedenie hudby (by default) podla MP3 tags (sort by Artists) a nie podla nazvu suborov.
  • Testovany rozmer (stvorcovy) cover obrazku: 1500x1500 este zobrazuje, ale nacitavanie 1-2 sekundy, obrazok 1800x1800 sa uz vobec nezobrazuje. Osobne preferujem 500x500 album art size.
  • Pouzivat MP3 ID3v2.3 tags type. S verziou ID3v2.4 su problemy, vobec nezobrazuje cover image a uzivatelia hlasia dalsie problemy.
  • Infotainment (displej) zobrazuje nasledovne tags: TITLE (track title), ARTIST (artist name), ALBUM (album title) a COVER image (album art).
  • MZD Connect appears to store a copy of music data in cache memory from the USB drive and may be confused if the tracks on the USB drive have been changed. This issue seems to be source of many problems playing back music files. Solution: The top level folder name on the USB drive should be changed every time you edit your music files (e.g. from Music_01 to Music_02).
  • MZD Connect uses the Gracenote database to complete missing music metadata. Many Mazda owners report Gracenote is particularly prone to override the music Genre tags.
  • S Gracenote database viac problemov ako uzitku. Viackrat pozorovane ako korektny tag (zapisany priamo v mp3 subore) system ignoruje a namiesto toho nespravne uvadza napr. nazov albumu z Gracenote databazy.

!!! POZOR !!! len na vlastnu zodpovednost (neoverene):

  • Resetting the Infotainment System: Reset your radio by pressing the Music, Navigation, and Volume buttons at the same time. Press the three buttons simultaneously for at least 20 seconds. To iste info aj tu.
  • Resetting the Bluetooth Connection: Hold the Volume, Back, and Navigation buttons at the same time for 10 seconds.

7-Zip

2024-03-08

tlac na obalku

2024-03-09

spotreba elektrickej energie

Merania vykonane jednoduchym digitalnym meracom spotreby el. energie Solight DT26.

Produkt Normalna spotreba [W] IDLE (necinnost) spotreba [W]
NAS Synology DS920+
+ 4 HDD [1]
25 — 26, max. 30 8
router ASUS RT-AC88U 15 — 16 15
switch D-Link DGS-1008D 1 — 2 1
internetove radio
KENWOOD CR-ST100S
2 — 3 1
tycovy aku vysavac
Electrolux Pure F9
??? (nabijanie) 0
65" OLED TV 70 — 160 (static picture 100) ~0.5
PC (old) work normal 30 — 55, max. 85 — 90 (vypnute PC ~1)
LCD monitor 24" 17 — 18 ~0.5
PC (new) work normal 30 — 40, max. 100 (vypnute PC ~2)
tlaciaren
Brother MFC-T910DW
normal 3-4, tlac 10-12 1 (vypnuta 0)
  1. Operacny system na PC prebudza NAS z IDLE rezimu (napr. pri zapnuti PC)