3 คะแนน โดย GN⁺ 2024-07-21 | 2 ความคิดเห็น | แชร์ทาง WhatsApp
  • Typst คือ ระบบจัดรูปเล่มแบบอิงมาร์กอัป ที่ตั้งเป้าให้ทรงพลังระดับ LaTeX แต่เรียนรู้และใช้งานได้ง่ายกว่า และรีโพซิทอรีนี้มีคอมไพเลอร์กับ CLI ที่จำเป็นสำหรับคอมไพล์เอกสารในเครื่อง
  • มี มาร์กอัปในตัว สำหรับงานจัดรูปแบบพื้นฐาน ฟังก์ชันที่ยืดหยุ่น ระบบสคริปต์ที่ผสานรวม การจัดวางสมการ การจัดการบรรณานุกรม และข้อความผิดพลาดที่เป็นมิตร
  • มุ่งให้คอมไพล์ได้รวดเร็วผ่าน incremental compilation โดย typst watch จะเฝ้าดูการเปลี่ยนแปลงของซอร์สและคอมไพล์ใหม่ได้เร็วกว่าการคอมไพล์ตั้งแต่ต้นทุกครั้ง
  • CLI สามารถติดตั้งได้ผ่านไบนารีรีลีส, package manager, cargo, Nix และ Docker; สร้าง PDF ด้วย typst compile file.typ และสามารถระบุพาธฟอนต์แบบกำหนดเองได้
  • หลักการออกแบบคือทำให้เรียบง่ายด้วย ความสอดคล้อง, ทรงพลังด้วยการประกอบกันได้ และได้ประสิทธิภาพจาก incremental compilation โดยตั้งเป้าความเร็วที่แสดงตัวอย่างได้ทันที

สิ่งที่ Typst มอบให้

  • Typst คือ ระบบจัดรูปเล่มแบบอิงมาร์กอัป ที่ออกแบบมาให้ทรงพลังเทียบเท่า LaTeX แต่เรียนรู้และใช้งานง่ายกว่า
  • ฟีเจอร์หลักมีดังนี้
    • มาร์กอัปในตัว สำหรับงานจัดรูปแบบที่ใช้บ่อย
    • ฟังก์ชันที่ยืดหยุ่นสำหรับงานอื่น ๆ
    • ระบบสคริปต์ที่ผสานรวมอย่างแนบแน่น
    • การจัดวางสมการ การจัดการบรรณานุกรม และอื่น ๆ
    • เวลาคอมไพล์ที่รวดเร็วบนพื้นฐาน incremental compilation
    • ข้อความผิดพลาดที่เป็นมิตรเมื่อเกิดปัญหา
  • รีโพซิทอรีนี้มี คอมไพเลอร์และ CLI ของ Typst ที่จำเป็นสำหรับคอมไพล์เอกสาร Typst ในเครื่อง
  • หากต้องการประสบการณ์การเขียนที่ดีกว่า สามารถใช้ เอดิเตอร์ออนไลน์แบบทำงานร่วมกัน ฟรีได้

ไวยากรณ์และโมเดลการเขียน

  • Typst ใช้ set rule อย่าง #set เพื่อตั้งค่าคุณสมบัติขององค์ประกอบ เช่น ขนาดหน้า หรือการใส่เลขลำดับหัวข้อ
    • หากตั้งความสูงของ page เป็น auto ขนาดจะปรับตามเนื้อหา
    • หากต้องการควบคุมอย่างสมบูรณ์ยิ่งขึ้น สามารถใช้ show rules เพื่อกำหนดรูปลักษณ์ขององค์ประกอบใหม่ทั้งหมดได้
  • หัวข้อเขียนด้วยไวยากรณ์ = Heading
    • = หนึ่งตัวสร้างหัวข้อระดับบนสุด ส่วน == สร้างหัวข้อย่อย
    • ดูรายการมาร์กอัปแบบเบาทั้งหมดได้ในเอกสาร syntax
  • สมการ ครอบด้วยเครื่องหมายดอลลาร์
    • หากเพิ่มช่องว่างรอบเนื้อหาสมการ จะจัดวางเป็นบล็อกแยกต่างหากได้
    • ตัวระบุที่มีหลายตัวอักษรจะถูกตีความเป็นนิยามและฟังก์ชันของ Typst หากไม่ครอบด้วยเครื่องหมายคำพูด
    • รายการอย่าง floor, sqrt ไม่ต้องใช้แบ็กสแลช
    • phi.alt ใช้ modifier alt กับ phi เพื่อเลือกสัญลักษณ์รูปแบบเฉพาะ
  • สคริปต์ คือการเขียน expression ต่อท้ายแฮช (#) เพื่อใส่โค้ดในเอกสาร
    • ตัวอย่างคำนวณเลข Fibonacci ลำดับที่ n ด้วยตัวแปร 2 ตัวและฟังก์ชันแบบ recursive
    • ฟังก์ชัน table รับเซลล์เป็นรายแถว
    • ใช้ตัวดำเนินการ spread .. เพื่อส่งสมาชิกของอาร์เรย์เป็นอาร์กิวเมนต์แยกกัน

การติดตั้งและการใช้ CLI

  • Typst CLI ติดตั้งได้หลายทาง
    • ซอร์สและไบนารีที่ build ไว้ล่วงหน้าของรีลีสล่าสุดรับได้จาก releases page
    • วางไบนารีไว้ในไดเรกทอรีที่อยู่ใน PATH แล้วอัปเดตภายหลังได้ด้วย typst update
    • เวอร์ชันจาก package manager อาจตามหลังรีลีสล่าสุด
  • ตัวอย่างการติดตั้งผ่าน package manager มีดังนี้
  • หากมี Rust toolchain สามารถติดตั้งด้วย cargo ได้
    • รีลีสล่าสุด: cargo install --locked typst-cli
    • เวอร์ชันพัฒนา: cargo install --git https://github.com/typst/typst --locked typst-cli
  • รองรับ Nix และ Docker ด้วย
    • Nix: nix-shell -p typst
    • Typst flake: nix run github:typst/typst-flake -- --version
    • Docker: docker run ghcr.io/typst/typst:latest --help
  • คำสั่งคอมไพล์พื้นฐานมีดังนี้
    • typst compile file.typ: สร้าง file.pdf ในไดเรกทอรีทำงาน
    • typst compile path/to/source.typ path/to/output.pdf: สร้าง PDF ที่พาธที่ระบุ
  • รันการเฝ้าดูการเปลี่ยนแปลงด้วย typst watch file.typ
    • Typst ใช้ incremental compilation จึงเร็วกว่าการคอมไพล์ตั้งแต่ต้นทุกครั้ง
  • มีคำสั่งที่เกี่ยวกับฟอนต์ให้ด้วย
    • typst compile --font-path path/to/fonts file.typ: ระบุไดเรกทอรีเพิ่มเติมสำหรับค้นหาฟอนต์
    • typst fonts --font-path path/to/fonts: แสดงรายชื่อฟอนต์ที่พบจากระบบและไดเรกทอรีที่ระบุ
    • TYPST_FONT_PATHS=path/to/fonts typst fonts: วิธีใช้ environment variable ตามไวยากรณ์ Linux
  • ดู subcommand และตัวเลือกอื่น ๆ ได้ด้วย typst help และดูวิธีใช้ของคำสั่งเฉพาะได้ด้วย typst help watch

สภาพแวดล้อมการแก้ไขและคอมมูนิตี้

  • หากต้องการประสบการณ์แบบ IDE, autocomplete และ preview ทันที สามารถใช้ เว็บแอป Typst ฟรีได้
  • language server ที่คอมมูนิตี้สร้างขึ้นชื่อ Tinymist ถูกผสานเข้ากับส่วนขยายของหลายเอดิเตอร์
  • พื้นที่คอมมูนิตี้มี Forum และ Discord server เป็นศูนย์กลาง
    • Forum เหมาะกับการถามคำถาม ช่วยผู้ใช้คนอื่น และแชร์ผลงานที่สร้างด้วย Typst
    • Discord เหมาะกับคำถามด่วน การคุยเรื่องการมีส่วนร่วม และแชตมากกว่า
  • Typst Universe เป็นพื้นที่ที่คอมมูนิตี้แชร์เทมเพลตและแพ็กเกจ
  • แพ็กเกจที่สร้างเองสามารถส่งไปยัง package repository ได้

การมีส่วนร่วมและการ build

  • หากเจอบั๊กสามารถเปิด issue ได้ และหากต้องการพัฒนาฟีเจอร์ใหม่หรือแก้บั๊ก ให้ทำตาม contribution guide
  • หากต้องการ build เอง ให้ติดตั้ง Rust stable เวอร์ชันล่าสุดแล้วรันคำสั่งต่อไปนี้
  • ไบนารีที่ optimize แล้วจะถูกเก็บไว้ใน target/release/
  • การแชร์แพ็กเกจกับคอมมูนิตี้ก็เป็นอีกวิธีหนึ่งในการมีส่วนร่วม

การออกเสียงและการเขียนชื่อ

  • การออกเสียง IPA ของ Typst คือ /taɪpst/
  • "Ty" ออกเสียงเหมือน Ty ใน Typesetting และ "pst" ออกเสียงเหมือน pst ใน Hipster
  • เมื่อเขียน Typst ให้ถือเป็นชื่อเฉพาะและใช้ตัว T ตัวพิมพ์ใหญ่

หลักการออกแบบ

  • Typst ออกแบบโดยมีเป้าหมายหลักสามอย่างคือ Power, simplicity, performance
  • เป้าหมายคือระบบที่ทรงพลังเทียบเท่า LaTeX เรียนรู้และใช้งานง่าย และเร็วพอสำหรับการ preview ทันที
  • เรียบง่ายด้วยความสอดคล้อง

    • ใน Typst หากรู้วิธีทำสิ่งหนึ่งแล้ว ควรนำความรู้นั้นไปใช้กับงานอื่นได้
    • หากมีหลายวิธีในการทำสิ่งเดียวกัน วิธีเหล่านั้นควรอยู่คนละระดับของ abstraction
    • = Introduction และ #heading[Introduction] เป็นตัวอย่างที่ยอมรับได้แม้ทำสิ่งเดียวกัน เพราะอย่างแรกเป็น syntax sugar ของอย่างหลัง
  • ทรงพลังด้วยการประกอบกันได้

    • เลือกออกแบบโดยมีองค์ประกอบจำนวนน้อยที่ประกอบกันได้หลายแบบ แทนการมีค่าตั้งสำหรับทุกอย่าง
    • TeX ก็เป็นระบบระดับต่ำที่ประกอบกันได้ แต่ผู้คนกลับใช้ LaTeX แทน
    • มองว่าใน LaTeX หลายกรณีต้องพึ่งพาแพ็กเกจอย่าง \usepackage{knob}
  • ประสิทธิภาพด้วย incremental compilation

    • ฟีเจอร์ทุกอย่างของภาษา Typst ต้องเข้ากับ incremental compilation
    • comemo จัดการงานจำนวนมากที่เกี่ยวกับ incremental compilation อยู่เบื้องหลัง

ผู้สนับสนุนและการสนับสนุน

  • การสนับสนุนหลักต่อผลงานโอเพนซอร์สของ Typst มีรายการต่อไปนี้
    • Posit: สนับสนุนเงินทุนสำหรับวิศวกรคอมไพเลอร์แบบเต็มเวลา
    • NLnet: สนับสนุนงานของ Typst ผ่านทุนหลายรายการจากกองทุน NGI Zero Core
    • Science & Startups: สนับสนุนเงินทุนสำหรับการพัฒนา Typst ตั้งแต่เดือนมกราคมถึงมิถุนายน 2023 ผ่าน Berlin Startup Scholarship
    • Zerodha: ผู้สนับสนุนแบบครั้งเดียว
  • รายการนี้รวมเฉพาะการมีส่วนร่วมต่องานโอเพนซอร์สที่มีมูลค่าเกิน €10K หรือคาดว่าจะเกินเท่านั้น

2 ความคิดเห็น

 
sebul 2025-02-28

อ่าน LeTeX ว่า LaTeX เหรอ? น่าจะอ่านว่า Reitek มากกว่านะ

 
GN⁺ 2024-07-21
ความคิดเห็นจาก Hacker News
  • Typst ยอดเยี่ยมมาก และองค์กรของเราก็พอใจมากเช่นกัน
    เราต้องสร้าง PDF มากกว่า 1.5 ล้านไฟล์ ทุกคืน จึงได้ลองมาหลายวิธี เช่น Puppeteer สำหรับแปลง HTML→PDF, pdflatex, lualatex และอื่น ๆ แต่ Typst เร็วกว่าอยู่หลายลำดับขั้นและใช้ทรัพยากรน้อยกว่ามาก
    ประสบการณ์นักพัฒนากับการทำเทมเพลต PDF ด้วย LaTeX ไม่ค่อยดีนัก แต่เทมเพลตของ Typst นั้นค่อนข้างตรงไปตรงมาและเข้าใจง่าย
    ได้เขียนรายละเอียดเพิ่มเติมเกี่ยวกับสแตกการสร้าง PDF ขนาดใหญ่นี้ไว้ในบล็อก: https://zerodha.tech/blog/1-5-million-pdfs-in-25-minutes

    • ไม่เคยได้ยินกรณีสร้างเอกสาร PDF เร็วขนาดนั้นมาก่อน
      ผมกำลังทำผลิตภัณฑ์ รายงาน PDF ปริมาณมาก ที่ใช้ Puppeteer อยู่ และถ้าใช้ทั้งงานกลางคืน แคช และการประมวลผลแบบขนาน ประสิทธิภาพก็ถือว่าโอเค
      https://www.cx-reports.com
    • สงสัยว่าเคยลอง ReportLab ไหม
      เมื่อนานมาแล้วผมเคยต้องรับมือกับปัญหาคล้ายกัน และมันเป็นทางออกที่ดี
      แม้สเกลจะไม่ถึงระดับนั้น แต่ก็ยังใช้งานได้ดี
    • สงสัยว่าองค์กรได้ ตอบแทนกลับไปด้วยการมีส่วนร่วมกับโปรเจกต์ บ้างไหม หรืออย่างน้อยได้สนับสนุนทางการเงินหรือเปล่า
    • สงสัยว่า กรณีใช้งาน อะไรถึงต้องสร้าง PDF จำนวนมากขนาดนั้น
  • ผมเขียนงานส่งด้วย Typst ไปเยอะพอสมควร และพบว่าการเขียนเชิงวิชาการกระชับขึ้น มีสมาธิมากขึ้น และพูดได้เลยว่าสนุกขึ้น
    ด้วย ลักษณะเชิงฟังก์ชัน ของไวยากรณ์ Typst ทำให้ไม่ต้องเจอพฤติกรรมแปลก ๆ คาดเดาไม่ได้แบบที่เห็นใน Microsoft Word ทุกวันนี้ หรือบางทีก็ใน Google Docs ด้วย
    ถ้าใช้ local IDE อย่าง VSCode ก็แทบจะมีฟีเจอร์ครบตามต้องการ
    เมื่อเทียบกับ LaTeX การจัดหน้าทั้งเอกสารนั้นเข้าใจง่ายกว่ามาก แต่เวลาต้องเขียนวิธีทำสมการยาว ๆ หลายหน้า ผมรู้สึกว่า LaTeX พิมพ์ได้ง่ายกว่า
    ไวยากรณ์ของ LaTeX ใกล้กับ Markdown มากกว่าจะเป็นภาษาโปรแกรมเชิงฟังก์ชัน จึงทำให้เวลาจัดสูตรที่มีฟังก์ชัน เลขยกกำลัง และเลขห้อยจำนวนมาก ไม่ต้องคิดล่วงหน้ามากนัก

    • ในฐานะคนที่เคยทำงานเขียนเชิงวิชาการ อยากให้วารสารต่าง ๆ รองรับ Typst หรือไม่ก็มีปลั๊กอินหรือสะพานเชื่อมไปยัง LaTeX/Word ที่มั่นคง
      ตอนนี้ผมคงยังไม่เขียนงานวิจัยด้วย Typst
      พอออกนอกสถาบันแล้วแทบจะต้องแปลงแน่นอน และ arXiv ก็ยังต้องการซอร์ส LaTeX
      ทุกวันนี้เครื่องมือรอบ ๆ LaTeX ก็ดีพอสมควรแล้ว และมี IDE ที่ช่วยงานอยู่มาก
      ส่วนตัวผมใช้ Org-Mode ของ Emacs ที่คอมไพล์เป็น LaTeX
    • เผื่อไม่ทราบ ตอนนี้ Typst มีการรองรับ LaTeX บางส่วนผ่าน แพ็กเกจ mitex อยู่แล้ว
      https://github.com/mitex-rs/mitex
    • สงสัยว่าสำหรับคนที่แทบไม่ต้องใช้สูตรเลย มันมีข้อดีกว่าการใช้ Markdown อย่างไร
  • มีทั้งการพูดคุยก่อนหน้าและข้อมูลที่เกี่ยวข้องหลายรายการ: https://hn.algolia.com/?q=typst
    1 ปีก่อน ความคิดเห็น 146 รายการ: https://news.ycombinator.com/item?id=35250210
    8 เดือนก่อน ความคิดเห็น 34 รายการ: https://news.ycombinator.com/item?id=38354422
    2 ปีก่อน ความคิดเห็น 53 รายการ: https://news.ycombinator.com/item?id=34423590
    2 ปีก่อน ความคิดเห็น 30 รายการ: https://news.ycombinator.com/item?id=32209794

  • น่าแปลกใจที่ การส่งออก HTML ไม่ได้เป็นฟีเจอร์หลักตั้งแต่แรก แต่ยังอยู่ระหว่างพัฒนาในตอนนี้
    เพราะ LaTeX มีความสัมพันธ์ที่ไม่ค่อยลงรอยกับเว็บอยู่แล้ว ถ้าเป็นโปรเจกต์ใหม่ที่ตั้งใจมาแข่ง ก็น่าจะพยายามแก้เรื่องนี้ให้ดีตั้งแต่ต้น
    [0] https://github.com/typst/typst/issues/721

    • Typst เป็นเครื่องมือที่ตั้งใจมาแข่งกับ LaTeX
      ทั้งสองอย่างเจอปัญหาเดียวกันคือ เว็บกับกระดาษทำงานต่างกันโดยสิ้นเชิง และมีแนวคิดบางอย่างที่แปลข้ามกันไม่ได้
      ดังนั้นจึงต้องนิยามวิธีที่ผลลัพธ์งานจัดพิมพ์จะไปลงในอีกสภาพแวดล้อมหนึ่งอย่างเป็นธรรมชาติ
      ถ้า Typst ตั้งเป้า HTML มาตั้งแต่แรก การพัฒนาคงง่ายกว่านี้มาก แต่ก็คงไม่เกินกว่าตัวสร้างเว็บไซต์ที่ซับซ้อนเกินจำเป็น
      การเลือกเป้าไปที่ PDF ก่อน แสดงให้เห็นว่าตั้งใจจะมาแข่งกับ LaTeX จริง ๆ
    • การส่งออก HTML ของ LaTeX เดี๋ยวนี้ค่อนข้างดีแล้ว แต่เป็นผลจากความพยายามอย่างกล้าหาญของคนจำนวนมากกับระบบที่เดิมไม่ได้ถูกออกแบบมาเพื่อรองรับสิ่งนี้
      ถ้าเริ่มระบบมาร์กอัปใหม่โดย ไม่ได้วางแผนสร้างเอกสารที่เข้าถึงได้ ตั้งแต่ต้น ผมมองว่าเป็นการตัดสินใจที่แย่มาก
      จนกว่า Typst จะสร้างเอกสารที่เข้าถึงได้ ผมก็จะยังไม่ใช้มัน
    • นี่เป็นหนึ่งในปัญหาใหญ่
      ผมไม่ชอบ PDF
    • ได้ยินมาว่า pandoc ทำงานได้ค่อนข้างดีสำหรับจุดประสงค์นี้
    • คิดว่าคุณก็น่าจะรู้อยู่แล้วว่า TeX เกิดก่อนเว็บหลายปี
  • ผมกำลังรอให้ LaTeX หายไปแล้วให้ Typst มาแทนที่
    ประสบการณ์ใช้งานต่างกันลิบลับ และผลลัพธ์ก็น่าประทับใจมาก
    ที่ผ่านมาผมใช้เทมเพลต Jinja2 เพื่อสร้างไฟล์ TeX แต่ Typst รับ JSON จากบรรทัดคำสั่งได้ ใช้งานง่าย และทรงพลังพอที่จะตัดขั้นตอน Python ออกไปได้เลย
    ยังไม่ต้องพูดถึงเวลาคอมไพล์ที่อยู่ในระดับ มิลลิวินาที

    • ความสามารถด้านสคริปต์ดีมาก
      ตอนแรกเพราะคุ้นกับวิธีทำแบบ LaTeX ผมเลยลองใช้ Go template สร้างเทมเพลต Typst
      แต่พอรู้ว่า Typst สามารถ ใช้ JSON ได้โดยตรงอย่างง่ายดาย ในเอนจินสคริปต์ของตัวเอง ก็รู้สึกชอบมาก
  • ตอนทำงานเป็นอินเทิร์นในปี 1999 ฉันได้รับมอบหมายให้เขียนเอกสารมาตรฐานสำหรับคณะทำงานมาตรฐานโทรศัพท์ VoIP ของ TIA
    ในองค์กรกำหนดมาตรฐานนั้นมีเทมเพลต Word ที่ทุกคนใช้กัน แต่ในฐานะนักศึกษาวิศวะ ฉันใช้ LaTeX มาพักใหญ่และชอบมันมาก เลยคิดว่า “สุดท้ายผลลัพธ์ก็ออกมาเป็น PDF อยู่ดี แถมการจัดรูปแบบก็น่าจะดีกว่า แล้วทำไมไม่ใช้ LaTeX ล่ะ?”
    ในความเป็นจริง งานที่ออกจาก LaTeX ดูดีกว่า และหัวหน้าก็ชอบผลงานมากโดยไม่รู้เลยว่าฉันไม่ได้ใช้ Word
    สมาชิกในคณะทำงานก็ตอบรับดีมาก บรรยากาศประมาณว่า “เด็กคนนี้มีพรสวรรค์จริงๆ”
    สำหรับสตาร์ตอัป การสร้างความประทับใจที่ดีกับบริษัทใหญ่ที่เข้าร่วมคณะทำงานนั้นสำคัญมากต่ออนาคตของบริษัท หรืออาจถึงขั้นความอยู่รอด
    แต่แล้ววันหนึ่งหัวหน้าก็บอกว่า “ส่งเอกสาร Word ฉบับนั้นให้ผู้บริหารระดับสูงของบริษัทใหญ่ที่อาจจะเข้าซื้อกิจการเราได้ไหม? เขาอยากเอาไปใช้เป็นเทมเพลตเอกสารใหม่” และฉันก็รู้สึกใจหายเหมือนตอนอายุสี่ขวบที่ลองฉี่ใส่ตู้เสื้อผ้ากับเพื่อนแล้วโดนแม่จับได้
    สุดท้ายก็ต้องจ้างเพื่อนมานั่งพิมพ์ใหม่เป็น Word อย่างยากลำบากตลอดทั้งสุดสัปดาห์ แล้วหัวหน้าก็ได้รับเอกสารนั้น
    บริษัทถูกซื้อกิจการในอีก 18 เดือนต่อมาด้วยมูลค่า 100 ล้านดอลลาร์
    แต่ยังไงก็ตาม LaTeX ก็ดู ดีกว่า 1000 เท่า เมื่อเทียบกับ Word

  • นี่ดูเหมือนจะเป็นคู่แข่งของบริการอย่าง Overleaf หรือ CodiMD
    แม้จะเป็นอีกไวยากรณ์หนึ่ง แต่ดูเหมือนว่า pandoc จะรองรับ
    ช่วงนี้ฉันเขียนโปรแกรมด้วย R มากขึ้น ก็เลยใช้ Quarto มากขึ้นเรื่อยๆ และมันให้ผลลัพธ์ที่ดีพอสมควร โดยเฉพาะแบบ HTML
    แต่เครื่องมือพวกนี้ก็ยังแก้ปัญหาสำคัญสองอย่างสำหรับงานวิชาการไม่ได้ คือการให้ การเปรียบเทียบความแตกต่าง ที่ดีสำหรับผู้รีวิว และการแชร์กับผู้ร่วมงานที่ไม่ใช่สายเทคนิคได้ง่ายพร้อมให้คอมเมนต์ได้
    เพราะงั้น อย่างน้อยในงานเขียนวิทยาศาสตร์ในสายของฉัน Word ก็คงยังถูกแทนที่ได้ยากไปอีกหลายปี
    [1] https://github.com/overleaf/overleaf
    [2] https://github.com/hackmdio/codimd
    [3] https://pandoc.org/typst-property-output.html
    [4] https://quarto.org/

    • ฉันใช้ Quarto อยู่บ่อยมาก
      ตอนใช้ GT ฉันรู้สึกว่า ผลลัพธ์ PDF ของ Typst ยังหยาบกว่า PDF ของ LaTeX อยู่เล็กน้อย
      หวังว่าจะได้รับการแก้ไข
  • เมื่อเทียบกับ LaTeX สิ่งที่คาใจที่สุดใน Typst คือมันยังจัดการ ฟีเจอร์ typography ละเอียดระดับพื้นฐาน ได้ไม่ดีนัก
    ตัวอย่างเช่น ใน math mode ยังขาดความสามารถในการจัดการประเภทของระยะห่าง (mathop, mathbin, mathrel ฯลฯ) หรือขนาดของวงเล็บ/ตัวคั่น (big, bigg ฯลฯ)

    • อาจเป็นไปได้ว่าฉันเข้าใจผิดว่ากำลังหาอะไรอยู่กันแน่
      ระยะห่างระหว่างสัญลักษณ์และตัวดำเนินการใน math mode ปรับได้ที่ https://typst.app/docs/reference/math/class/ และขนาดของตัวคั่นปรับหรือให้จัดการอัตโนมัติได้ที่ https://typst.app/docs/reference/math/lr#functions-lr
    • ดูจากเธรดนี้เหมือนจะมีปัญหาเรื่อง การเข้าถึง (accessibility) ด้วย: https://github.com/typst/typst/issues/133
      แต่ดูเหมือน LaTeX เองก็เป็นเหมือนกัน
  • ดูดีมากจริงๆ และฉันตั้งใจว่าจะลองใช้ดูสักครั้ง
    แต่ก็อดคิดแบบนี้ไม่ได้
    ความน่าจะเป็นที่อีก 15 ปีข้างหน้า LaTeX จะยังฟรีและยังมีการบำรุงรักษาอยู่: 99.9999%
    ความน่าจะเป็นที่อีก 15 ปีข้างหน้าเครื่องมือใหม่อื่นๆ จะยังฟรีและยังมีการบำรุงรักษาอยู่: 5%

    • นี่คือคำสาปของระบบที่ออกมาก่อนและดีพอแล้ว
      bash กับอีกหลายอย่างก็เป็นแบบเดียวกัน
      ถึงจะมีทางเลือกที่ดีกว่าอยู่มาก แต่จุดเจ็บปวดยังไม่มากพอที่จะถูกแทนที่
  • ฉันชอบ Typst
    โดยเฉพาะเวลาจัดการอินพุตที่สร้างจากการเขียนโปรแกรม และแฟลก --input ก็รับ JSON ได้
    ภายในไฟล์ก็สามารถดึง JSON เข้ามาได้ง่ายด้วยฟังก์ชัน json.decode() โดยเฉพาะ
    มันทำให้สร้างผลลัพธ์ที่เสถียรได้ง่ายมาก จนฉันเปลี่ยนโปรเจกต์ของตัวเองจาก LaTeX มาเป็น Typst แล้ว
    [0] https://typst.app/docs/reference/foundations/sys/
    [1] https://resgen.app