今日已更新 240 条资讯 | 累计 23823 条内容
关于我们

标签:#editor

找到 3 篇相关文章

AI 资讯

GFM Tables in Payload's Lexical Editor Without Data Loss

Managing payload cms lexical tables in a content-heavy site means enabling EXPERIMENTAL_TableFeature — but the real trap is the markdown import that strips tables without warning. We lost a whole batch of production blog posts to this exact hole before we found the fix. Here’s why it happens and the step-by-step configuration that keeps your tables intact. The Silent Table Eater: Payload CMS Lexical Tables and Markdown Conversion The default markdown-to-Lexical conversion helper completely ignores your editor’s feature list. So even when you’ve added the table feature to your editor config, every GFM table in imported markdown is silently dropped. Here’s the code that ate our data: import { editorConfigFactory , defaultFeatures } from ' @payloadcms/richtext-lexical ' // ❌ This uses a plain config that doesn’t know about tables const mdConverter = editorConfigFactory . default ({ features : defaultFeatures , }) const lexicalData = mdConverter . parse ( ' # Hello \n\n | A | B | \n |---|---| \n | 1 | 2 | ' ) // result: { root: … } — no table node anywhere The problem: editorConfigFactory.default builds a conversion pipeline from a static feature set, not from your actual editor config. Any experimental or custom feature you’ve wired into the editor simply isn’t there during markdown parsing. Fix It: Wire EXPERIMENTAL_TableFeature Into the Conversion Config Switch to editorConfigFactory.fromFeatures , which actually reads the feature array you provide. Include the table feature alongside the defaults, and the markdown converter will start producing proper Lexical table nodes. import { editorConfigFactory , defaultFeatures , EXPERIMENTAL_TableFeature , } from ' @payloadcms/richtext-lexical ' const mdConverter = editorConfigFactory . fromFeatures ({ features : [... defaultFeatures , EXPERIMENTAL_TableFeature ()], }) Takeaway: You must add EXPERIMENTAL_TableFeature() to both your editor’s features array and to every markdown conversion config. Missing one side silently eat

2026-07-21 原文 →
AI 资讯

The Difference Between a Review and an Advert

The line between editorial content and paid promotion has been eroding for years. On most major retail platforms, in countless lifestyle publications and across the breadth of social media, content that presents itself as independent assessment is frequently underwritten by the very brands being assessed. This is not a new problem, but it is a worsening one. The consequences are practical. Consumers who believe they are reading a review and acting accordingly may be making purchasing decisions on the basis of what is, in effect, an advertisement. The financial cost of that mistake is modest in most individual cases. The cumulative effect on consumer trust is not. Understanding what separates a genuine review from disguised promotional content requires more than checking for a disclosure label. It requires looking at structure, incentive, methodology and language - and recognising that some of the most effective adverts are those that most convincingly resemble reviews. What a Review Is Actually Supposed to Do A review serves one primary function: to help a reader make an informed decision about a product, service or brand. That function is incompatible with advocacy. A reviewer who is trying to help a reader decide cannot simultaneously be trying to persuade that reader to buy. This distinction sounds obvious. In practice, it collapses quickly when the person writing the review has a financial relationship with the brand, when the product was provided free of charge without conditions, or when the publication depends on advertising revenue from the sector it covers. None of those arrangements automatically invalidates the content produced. But each one creates a structural incentive that pushes in a specific direction - and that direction is rarely towards harder scrutiny. The Disclosure Problem Regulatory frameworks in the UK, including guidance from the Advertising Standards Authority and the Competition and Markets Authority, require that paid-for content be clea

2026-07-19 原文 →
AI 资讯

An Editor Built Like a Video Game

On April 29, 2026, Nathan Sobo published the Zed 1.0 announcement post on Zed's blog. The post landed on Hacker News at 2,047 points and 663 comments — the highest-engagement HN story in the present cache by a substantial margin. The launch announcement is a milestone marker after five years of development, roughly a million lines of Rust, and a custom GPU-accelerated UI framework called GPUI that the Zed team built from scratch rather than building atop Electron, Chromium, or any other browser engine. The structural argument Zed has been making for the last several years is condensed in one sentence from Sobo's post: "Instead of building Zed like a web page, we built it like a video game, organizing the entire application around feeding data to shaders running on the GPU." The video-game framing is not metaphorical. Zed's editor surface is composited by feeding glyph atlases, syntax-tree-derived color spans, and pane-layout geometry into GPU shaders the way a video-game engine composites its frames. The reason this matters is the reason the Zed team gave for starting over from the Atom era: Atom was built as a fork of Chromium, and the same team that built Atom is the team that spawned Electron. The Atom-Electron-VSCode lineage is, in the historical-causal sense, Zed's own. Sobo's post is unusually direct about the inherited limitation: "Electron eventually became the foundation of VS Code (which today seems to be forked into a new AI code editor every other week). Web technology offered an easy path to shipping flexible software, but it also imposed a ceiling. No matter how hard we worked, we couldn't make Atom better than the platform it was built on." The 1.0 announcement is, in part, a statement that the rebuild from scratch has finally cleared that ceiling. Who built it Zed's three co-founders all worked on Atom at GitHub before founding Zed Industries in 2021. Nathan Sobo led the Atom team from 2011 to 2018; he also co-led Teletype for Atom, one of the first

2026-06-24 原文 →