วันพฤหัสบดีที่ 10 กรกฎาคม พ.ศ. 2568

ซื้อไม้ขัดโถชักโครกมาลองใช้ดู

เห็นวิดีโอโฆษณาขึ้นมาในฟีด เลยตกเป็นเหยื่อการตลาดทาสโฆษณาเข้า 😆 พอกดเข้าไปดูใน Shopee แต่ร้านที่เห็นในฟีดสินค้าหมด (ไม้ขัด) เหลือแต่ตัวฟองน้ำ เลยไปหาดูจากร้านอื่น

ตอนที่เห็นในร้าน ตัวไม้ (พร้อมหัวขัด 30 ชิ้น) ราคา 199 แต่พอกดซื้อแล้วคิดเงิน มันขึ้นมาเป็น 219 และตัวหัวขัด 12 ชิ้น ราคา 58 แต่พอกดซื้อมันขึ้นราคาว่า 65

แต่ก็ไม่ได้คิดอะไรมาก ราคาไม่เท่าไหร่ รวมค่าส่งแล้ว เป็น 290 สั่งเมื่อวันที่ 7 กรกฎา มาส่งวันที่ 10 กรกฎา

ที่จริงอยากสั่งชุดที่มีน้ำยาทำความสะอาดด้วย แต่สินค้าหมด



วันเสาร์ที่ 5 กรกฎาคม พ.ศ. 2568

การเขียน Regular Expression ตรวจจับตัวอักษรภาษาจีน

ตอนทำไฟล์ ePUB แล้วตัวอักษรภาษาจีนมักจะใหญ่กว่าตัวอักษรไทย เวลาที่ทำหนังสือที่มีอักษรภาษาจีนอยู่ด้วย ถ้าอยากให้ตัวเล็กเท่ากับตัวหนังสือภาษาไทยอื่นๆ ในเล่ม ก็จะใส่ span ครอบไว้ว่าเป็นตัวจีน

แต่ถ้ามีตัวอักษรจีนแทรกอยู่ประปราย จะมานั่งใส่ด้วยมือก็เสียเวลาไม่น้อย ซึ่งใน Sigil ก็สามารถสั่งค้นหาแทนที่จาก Regular Expression ได้

วิธีการคือสั่งค้นหา

/([\x{4e00}-\x{9fff}]+)/u

ถ้าเป็น Sigil ไม่ต้องใส่ // ครอบ คือใช้เป็น

([\x{4e00}-\x{9fff}]+)

แล้วแทนที่ด้วย <span class="">\1</span> หรือ <span class="">$1</span>

แต่ text editor บางตัว จะมีฟังก์ชัน Regular Expression ไม่ครบ (เช่น VS Code, Sublime, Notepad++, Atom) ก็สั่งค้นหาด้วย

[\u4e00-\u9fff]+

หรือ Sublime บางเวอร์ชัน สามารถสั่งค้นด้วย

\p{Han}+

วันจันทร์ที่ 30 มิถุนายน พ.ศ. 2568

ReText โปรแกรมสำหรับแก้ไข markdown

การเขียนเนื้อหาเอกสาร (เช่นบทความหรือนิยาย) ด้วยภาษา markdown ทำให้ทำต้นฉบับได้ค่อนข้างสะดวก และสามารถใช้โปรแกรมเพื่อแปลงให้เป็นฟอร์แมตอื่นๆ ได้ เช่น Pandoc

บางทีถ้าต้องการใช้โปรแกรมแก้ไข markdown ที่สามารถมองเห็นผลลัพธ์ได้ โดยไม่ต้องเข้าไปใช้งานผ่านหน้าเว็บ หรือแปลงฟอร์แมตก่อน ก็มีโปรแกรมตัวเล็กที่ใช้งานง่ายอย่าง ReText

วิธีการติดตั้ง ถ้าไปโหลดไฟล์แบบ Flathub ที่เป็นรุ่นล่าสุด ตัวไฟล์จะมีขนาดใหญ่มาก แต่ถ้าโหลดเป็นไฟล์จาก repo จะได้เป็นรุ่นเก่า (7.2.3)

วิธีติดตั้งจาก terminal ผ่าน pip จะมีขนาดเล็กและได้เวอร์ชันล่าสุด (ตอนเขียนบล็อกคือ 8.1.0) โดยพิมพ์ว่า

pip3 install ReText

หรือ

pip3 install --user ReText

การติดตั้งวิธีนี้ เวลาใช้งานต้องเรียกจาก terminal โดยพิมพ์ว่า retext

ถ้าต้องการดูเวอร์ชัน ก็พิมพ์ว่า

retext --version


วันพฤหัสบดีที่ 27 มีนาคม พ.ศ. 2568

[Sigil] การทำเชิงอรรถแบบคลิกได้ใน ePUB ด้วย Sigil

โดยปกติแล้วการทำต้นฉบับหนังสือที่มีเชิงอรรถแทรกอยู่ด้วยเพื่อนำไปใช้กับไฟล์เอกสาร (docx) และเผยแพร่บนหน้าเว็บ (เช่นพวกนิยายรายตอน) ด้วยนั้น วิธีการทำแบบง่ายๆ ก็มักจะใช้การใส่ [n] แทรกลงไป แล้วในท้ายตอนแต่ละตอนก็จะใส่คำอธิบายเอาไว้ ตามที่เรามักจะเห็นจากพวกเว็บนิยายแปลจีนรายตอนทั้งหลาย

วิธีแบบนี้สามารถทำต้นฉบับได้สะดวกก็จริง แต่เวลาที่เราอ่านในรูปแบบ ePUB แล้วจะไม่สะดวกตรงที่เมื่อเจอการอ้างเชิงอรรถแล้วเราอยากรู้ความหมาย ก็ต้องเลื่อนไปท้ายตอนเพื่ออ่าน พออ่านเสร็จก็ต้องย้อนกลับไปยังจุดที่อ่านค้างไว้อีกที

ที่จริงแล้วไฟล์ ePUB นั้นมีฟีเจอร์ทำต้นฉบับที่สามารถคลิกลิงก์ได้ พอเราคลิกที่ข้อความที่ทำเชิงอรรถไว้ คำอธิบายที่เกี่ยวข้องก็จะแสดงขึ้นมาในหน้านั้นๆ เลย โดยไม่ต้องย้อนกลับไปกลับมาอีก

วันพุธที่ 12 มีนาคม พ.ศ. 2568

ติดตั้งไดรเวอร์เครื่องพิมพ์ Brother HL-1110 บน Linux elementary OS

ปกติแล้วผมจะใช้เครื่องพิมพ์อิงก์เจ็ตของ Canon เพราะแยกหัวพิมพ์จากตลับหมึก และสามารถพิมพ์กระดาษขนาดนามบัตรได้ แต่ฟีเจอร์บน Linux ไม่ค่อยสมบูรณ์เท่าไหร่ (เช่นไม่มีเมนูล้างหัวพิมพ์, ทดสอบหัวพิมพ์ ฯลฯ) เพราะ Canon ไม่ได้ทำไดรเวอร์ของ Linux ซึ่งเรื่องนี้เคยเขียนบล็อกเกี่ยวกับการติดตั้งเอาไว้สามตอน 【1. ติดตั้งเครื่องพิมพ์ Canon Pixma G2010 บน Ubuntu 20.04】 【2. ติดตั้ง Scanner บน elementary OS】 【3. ติดตั้งไดรเวอร์สแกนเนอร์ Canon Pixma G2010】 กว่าจะหาวิธีติดตั้งไดรเวอร์สแกนเนอร์ได้ก็ค่อนข้างปวดหัววุ่นวาย และหลังจากใช้ไปสองครั้ง ก็ปรากฏว่าใช้งานสแกนเนอร์อีกไม่ได้ รู้สึกเหนื่อยใจ

แล้ววันนี้มีเหตุให้ต้องติดตั้งไดรเวอร์ของเครื่องพิมพ์เลเซอร์ยี่ห้อ Brother รุ่น HL-1110 บน elementary OS 6.1 Jólnir (built on Ubuntu 20.04 LTS) โดยเข้าไปดาวน์โหลดไดรเวอร์ที่ HL-1110 | Others | Brother support website แล้วเลือกที่รายการ Downloads

วันเสาร์ที่ 31 สิงหาคม พ.ศ. 2567

[FFMpeg] แปลงวิดีโอให้เป็นรูปภาพด้วย ffmpeg

โปรแกรม ffmpeg นอกจากจะแปลงไฟล์ภาพเป็นวิดีโอ ฝังซับไตเติ้ล ฯลฯ แล้ว ก็ยังสามารถแปลงไฟล์วิดีโอให้เป็นรูปภาพได้ด้วย การสั่งงานใช้รูปแบบคำสั่งว่า

ffmpeg -i input.mp4 -vf fps=1 out-%d.png

fps=1 หมายถึงให้ทำไฟล์ภาพละ 1 วินาที ถ้าหากวิดีโอเป็นแบบ 30 fps แล้วต้องการให้สร้างไฟล์ภาพออกมาทุกเฟรม ก็ใช้ว่า fps=30

out%d คือจะสร้างภาพด้วยชื่อไฟล์ว่า out- แล้วตามด้วยตัวเลข เช่น out-1.png out-2.png out-3.png ไปเรื่อยๆ แต่ถ้าต้องการให้ใส่ตัวเลขนำหน้าด้วย เช่นทำตัวเลขให้เป็น 4 หลัก ก็เขียนเป็น %04d เช่น out-%04d.png ก็จะได้เป็น out-0001.png out-0002.png out-0003.png


[ Reference ]

FFMPEG- Convert video to images


[ Keyword ]

แปลงวิดีโอเป็นรูปภาพ, convert video to image, convert video to picture, convert video to png, convert video to jpg

วันศุกร์ที่ 30 สิงหาคม พ.ศ. 2567

แปลงเอกสารด้วย Pandoc (ตอนที่ 3)

ก่อนหน้านี้เคยเขียนบล็อกเรื่องการแปลงเอกสารด้วย Pandoc ไปทั้ง ตอนที่ 1 และ ตอนที่ 2 แล้ว หลังจากที่พบว่าโปรแกรม Pandoc ที่ผมใช้อยู่มันเป็นเวอร์ชันที่เก่าแล้ว (2.7.x) มี bug เรื่องการแปลงฟอร์แมต markdown นิดหน่อย คือตัว ~~ ไม่แปลงเป็นตัวขีดฆ่า และไม่แปลงตัวหนาตัวเอนใน docx (แต่แปลงให้ใน odt) ก็เลยไปอัปเดตให้เป็น เวอร์ชันล่าสุด (วันที่เขียนบล็อก ล่าสุดคือเวอร์ชัน 3.3.1 - 29 Jul 2024) ซึ่งเวอร์ชันนี้มีบางจุดเปลี่ยนไปจากรุ่นก่อน เลยต้องมาเขียนบันทึกเพิ่ม

ผมใช้ Linux Mint (Ubuntu based) เลยดาวน์โหลดไฟล์ pandoc-3.3-1-amd64.deb มาติดตั้ง ถ้าใช้ Windows, Mac ก็เลือกตามระบบที่ใช้

การตรวจสอบเวอร์ชันของ Pandoc ที่ติดตั้งในเครื่อง ให้พิมพ์ว่า

pandoc -v หรือ pandoc --version


ดูพารามิเตอร์คำสั่งต่างๆ ให้พิมพ์ว่า

pandoc -h หรือ pandoc --help

ถ้ามีเวอร์ชันก่อนหน้าติดตั้งเอาไว้ ต้องลบของเดิมออกถึงค่อยติดตั้งเวอร์ชันใหม่ โดยพิมพ์ในเทอร์มินัลว่า

sudo apt remove pandoc


วิธีการติดตั้ง โดยปกติจะดับเบิลคลิกไฟล์เพื่อเปิด package installer ให้ติดตั้งได้เลย แต่ถ้าไม่ได้ ก็ใช้วิธีติดตั้งผ่านเทอร์มินัล โดยพิมพ์ว่า

sudo dpkg -i ไฟล์ติดตั้งที่ดาวน์โหลด


เวอร์ชันที่ผมใช้ก่อนหน้านี้ การแปลงเป็น markdown กับ plain (text ข้อความธรรมดา) มันจะตัดแบ่งบรรทัดให้อัตโนมัติ ถ้าไม่อยากให้มันแบ่งต้องใส่ --wrap=none ไว้ด้วย เช่น

pandoc -t markdown-smart --wrap=none file-in.docx > file-out.md

หากแปลงเป็น html มันจะไม่ตัดบรรทัดให้ และผมก็เคยชินแบบนั้น แต่หลังจากที่อัปเดตมาเป็นเวอร์ชัน 3.3.1 ก็เจอว่าตอนแปลงเป็น html มันก็ตัดบรรทัดให้ด้วย ดังนั้นจึงต้องใส่แท็ก --wrap=none ไว้เช่นกัน

วันอังคารที่ 20 สิงหาคม พ.ศ. 2567

[Google Sheets] ใช้ Google Sheets สร้าง QR Code แบบง่ายๆ

เราสามารถใช้ Google Sheets สร้าง QR Code แบบง่ายๆ ด้วยบริการจากเว็บ ซึ่งมีให้ใช้หลากหลายเว็บ บางเว็บจะมีฟีเจอร์เพิ่มเติม เช่น เปลี่ยนสีหรือทำพื้นหลังโปร่งใส ซึ่งต้องไปอ่านคู่มือของแต่ละเว็บดู ตัวอย่างเว็บที่มีบริการให้ใช้งานก็เช่น

https://quickchart.io/qr?text=test

https://api.qrserver.com/v1/create-qr-code/?data=test

https://qrcode.tec-it.com/API/QRCode?data=test

[ Keywords ]

QR Code, qrcode, Google Sheet, Google Sheets


วันเสาร์ที่ 10 สิงหาคม พ.ศ. 2567

การใส่ข้อมูลหนังสือ (metadata) ในไฟล์ ePUB ด้วยโปรแกรม Sigil

การใส่ข้อมูลหนังสือ (metadata) ลงในไฟล์ ePUB ก็เพื่อให้เราค้นหาหนังสือได้ง่ายและสะดวกต่อการจัดเก็บให้เป็นหมวดหมู่ ซึ่งอันที่โปรแกรมที่เราใช้เปิดอ่านหลายๆ ตัวจะสามารถเพิ่มข้อมูลเข้าไปได้เหมือนกัน หรือเราเอาไปเพิ่มในโปรแกรม Calibre ก็ได้

แต่กรณีที่เราสร้างไฟล์ ePUB ขึ้นเองด้วย Sigil เราก็สามารถใส่ลงไปได้เลยโดยไม่ต้องไปผ่านโปรแกรมอื่นๆ อีก

ข้อมูลจำเป็นที่ควรต้องใส่คือ ชื่อหนังสือ, ชื่อผู้เขียน (ผู้แปล), ภาษาที่ใช้

ข้อมูลเพิ่มเติมอื่นๆ ก็มี สำนักพิมพ์, แท็ก, ชุด (กรณีมีหลายเล่ม)

วันพฤหัสบดีที่ 8 สิงหาคม พ.ศ. 2567

แก้ปัญหาอัปเดต libapt-pkg5.0

สั่งอัปเดต Calibre ไม่ได้อีกแล้ว (ในเครื่องโน้ตบุ๊กที่เป็น Elementary OS 5.1) มันขึ้นว่า

2024-08-08 12:52:33 URL:https://download.calibre-ebook.com/linux-installer.sh [34312/34312] -> "-" [1]

Using python executable: /usr/bin/python3

Your system has GNU libc version 2.31. The calibre binaries require at least version: 2.35 (released on 2022-02-03). Update your system.

เลยใช้วิธีเดิม  แก้ปัญหาอัปเดต Calibre ไม่สำเร็จ ที่เคยแก้ปัญหา ก็ปรากฏว่าแก้ไม่ได้