и посмотреть медиа
Библиотека фронтендера - JS React
и посмотреть медиа
Все полезное для фронтенда: JavaScript, React.js, Angular.js, Vue.js в одном канале.
Все полезное для фронтенда: JavaScript, React.js, Angular.js, Vue.js в одном канале.
Комплексный ресурс по фронтенд-технологиям. Статьи, гайды и примеры по JS, React, Angular, Vue. Идеально для изучения и применения в проектах.
🤩 А что, если написать свой текстовый редактор? «VS Code слишком тяжёлый. Сделаю свой редактор!» — примерно так начался эксперимент одного разработчика. 🔘 Первый вариант — всё рисовать через . Курсор, текст, подсветка строки, ввод с клавиатуры — работает. Но почти всё приходится реализовывать самостоятельно: canvas.addEventListener("pointerdown", positionCursor); document.addEventListener("keydown", moveCursor); И быстро выясняется проблема: canvas ничего не знает о тексте. Нет нормального выделения, undo/redo, скроллинга и доступности. 🔘 Тогда появляется идея использовать contenteditable: Браузер сразу берёт на себя выделение текста, историю изменений и часть accessibility. Но на больших текстах производительность становится непредсказуемой. 🔘 Поэтому следующий кандидат — обычный : И неожиданно он оказывается лучшим вариантом для длинных файлов. Правда, синтаксическую подсветку приходится строить отдельным слоем поверх текста. 📍 А потом начинается самое интересное: Unicode. "🍋🟩".length; // 5 [..."🍋🟩"].length; // 3 const segmenter = new Intl.Segmenter("en", { granularity: "grapheme" }); [...segmenter.segment("🍋🟩")].length; // 1 Один визуальный символ может состоять из нескольких UTF-16 code units и нескольких Unicode code points. В итоге автор получил редактор, который выглядит примерно на 90% готовым, но имеет лишь 1% возможностей настоящего редактора. И именно оставшиеся 10% — выделение, виртуализация, подсветка, табуляция, скроллинг, Unicode и accessibility — превращают «простой текстовый редактор» в огромный проект. 📍 Навигация: [Вакансии] 🐸 Библиотека фронтендера #under_hood
Открыть канал и посмотреть медиаSolo los usuarios registrados pueden compartir su opinión.
¡Sé el primero en compartir tu experiencia con este recurso!
Una selección de aplicaciones móviles para smartphones.
Predicciones gratuitas para apuestas deportivas: análisis y consejos ganadores.
Un canal con recomendaciones de ranura, bonos y eventos actuales.