Hacker News Digest

Тег: #neovim

Постов: 9

Nordwand Mono – A monospace font for coders and adventurers (github.com) 🔥 Горячее

Разработчик, не нашедший «идеальный» шрифт для терминала и Neovim, спроектировал собственный с нуля на Python. Nordwand Mono — компактный моноширинный неогротеск, переносящий элементы классического «Univers» Адриана Фрутигера в пропорции «JetBrains Mono». Название отсылает к Швейцарии и её типографике, а также к суровой атмосфере северных стен Альп. Среди источников вдохновения также указаны «SF Pro» и «SF Mono» от Apple, «Alpes Mono» от Sharp Type и «Ubuntu Mono» от Dalton Maag.

Шрифт предлагает альтернативные начертания отдельных символов, переключаемые через теги OpenType, и всего две минимальные лигатуры — для «->» и «=>»; полный набор лигатур автор обещает, возможно, добавить позже, но сам пользоваться ими не собирается. Поскольку каждый глиф рисуется Python-классом с внедряемым контекстом отрисовки, можно менять метрики — например, высоту строчных или прописных знаков — через файл конфигурации: отдельные глифы просматриваются командой python -m visualize, а полный шрифт собирается командой python -m generate_font в папку ./custom-fonts. Автор предупреждает: при изменении метрик вид шрифта не гарантирован, а некоторые глифы потребуют ручной правки.

В репозитории есть образцы символов, начертаний и примеры кода на Python, C++ и Haskell, а также альтернативный кириллический алфавит.

by noriax86 • 18 октября 2026 г. в 14:48 • 314 points

Оригинал • HN

#c++#font#github#haskell#neovim#opentype#python#terminal

Комментарии (96)

Обсуждение дополняет статью практическими отзывами. Пользователи rootlocus, delta_p_delta_x и pookieinc считают Nordwand Mono почти идентичным JetBrains Mono или Berkeley Mono, отмечая различия лишь в отдельных знаках ($ и &). @fercircularbuf указывает на схожесть круглых и квадратных скобок, что затрудняет чтение кода. @bronlund ценит наличие минимального набора лигатур (→ и ⇒), так как остальные обычно отключают для разгрузки визуального потока. @JoshTriplett отмечает комфортный межсимвольный интервал, схожий с DejaVu Mono, в отличие от многих современных узких шрифтов. @abainbridge добавляет, что на мониторах с 100 DPI предпочитает bitmap-шрифты с ручным антиалиасингом для более резкой картинки и компактности текста.

Installing NeoVim caused original Vim undo files to be deleted (unsung.aresluna.org) 🔥 Горячее 💬 Длинная дискуссия

David Chisnall поделился опытом использования Vim, подчеркнув, как глубоко встроенные привычки редактирования становятся рефлекторными — он пишет, что его «высшие мозговые функции не задействованы» при работе с привычными командами, а случайные :w появляются в документах, созданных в других редакторах. Особую ценность он придаёт функции persistent undo, которая сохраняет историю изменений даже после перезагрузки системы или закрытия файла, позволяя восстановить утерянный контент спустя недели или месяцы. Эта надёжность сохранялась на протяжении двух десятилетий и крупных обновлений Vim, что, по его мнению, воплощает Первый закон Раскина: программа не должна вредить данным пользователя или, бездействуя, позволять им пострадать.

Однако его опыт с NeoVim оказался разочаровывающим: при первом использовании он обнаружил, что undo перестал работать не только в NeoVim, но и в обычном Vim после взаимодействия с ним. Оказалось, что NeoVim изменил формат файлов отката, не обеспечив обратной совместимости — он просто удалял существующие файлы undo Vim, не переименовывая их и не конвертируя, тем самым стирая всю историю изменений. Когда Чисналл поднял эту проблему, ответ разработчиков был тем, что формат «нестабилен» и пользователи не должны полагаться на сохранность данных в функции, явно названной «persistent undo». Это отношение, по его мнению, демонстрирует полное отсутствие чувства ответственности перед пользователями: удалять данные, хранящиеся в файловой системе, просто потому что формат изменился, — неприемлемо. Этот инцидент окончательно оттолкнул его от NeoVim, так как нарушение доверия к сохранности данных оказалось неприемлемым, даже если бы оно было случайной ошибкой.

by jandeboevrie • 27 сентября 2026 г. в 14:45 • 253 points

Оригинал • HN

#file-format#neovim#persistent-undo#user-data-safety#vim

Комментарии (203)

NeoVim может удалять файлы persistent undo при несовместимых форматах, но только при совместном использовании одного каталога undo с Vim. По умолчанию NeoVim сохраняет undo в $XDG_STATE_HOME/nvim/undo/, Vim — рядом с файлом (.un~) или в ~/.vim/undo/. При изменении формата NeoVim удаляет старый файл, что приводит к потере истории после обновления. Пользователь @gavinhoward подтвердил этот случай: после обновления NeoVim он не смог откатить изменения из‐за исчезнувшего undo‐файла. Чтобы избежать потери, рекомендуется задавать отдельные каталоги undo для NeoVim и Vim или отключать persistent undo. Многие считают, что persistent undo не заменяет систему контроля версий; лучше использовать git для надёжного бэкапа. Преимущества NeoVim — скорость и улучшенная подсветка синтаксиса через treesitter — часто перевешивают проблему с undo‐файлами. Критика молчаливого удаления файлов приводит к предложению добавить предупреждение или резервное копирование перед удалением. Persistent undo используется редко; многие отключают его, чтобы не засорять файловую систему. Функция появилась в Vim 7.3 в 2010 году, а не почти 20 лет назад. NeoVim воспринимается как «Vim с ломающими изменениями», что создаёт ожидание несовместимости при переходе. Пользователи отмечают, что NeoVim ощущается быстрее и имеет более современный набор функций, что делает его привлекательным, несмотря на проблемы с совместимостью undo.

Tells of a Slop UI (hereticpleb.vercel.app) 🔥 Горячее 💬 Длинная дискуссия

Slop UI — это интерфейсы, сгенерированные ИИ без чёткой дизайнерской визии, которые выглядят дешево, перегружены и лишены смысла. Главные признаки — избыточные градиенты (особенно фиолетовые), случайные радужные сочетания цветов, пульсирующие бейджи, которые ничего не значащие эмодзи и избитые элементы вроде «fingernail cards» (скруглённые карточки, напоминающие ноготь). Эти приёмы используются повсеместно в vibe-coded интерфейсах, где ИИ просто заполняет шаблоны, не учитывая контекст или пользовательскую цель. Например, в обновлённом приложении колледжа появился пульсирующий бейдж «active» на цифровом ID, хотя приложение выходит из системы при неактивности — информация полностью избыточна. Аналогично, бейдж «verified» рядом с логотипом вуза не подкреплён реальной проверкой и не несёт смысловой нагрузки.

Дополнительные признаки slop — стеклянный эффект (glassmorphism), шаблонные хайп-слоганы вроде «Elevate», «Seamless», «Next-Generation» и избыточная самореклама в интерфейсе (например, «Built with Hugo. Written from Neovim» на экране загрузки). Такие детали не улучшают usability, а лишь выдают отсутствие продуманного дизайна. Автор подчёркивает, что vibe-coding сам по себе не плох — его сайт тоже так сделан и выглядит мило — но проблема в том, что многие используют ИИ как «slop cannon»: генерируют интерфейсы без фильтра, усилий и чувства меры, получая в результате визуальный шум вместо функционального инструмента.

by theanonymousone • 27 сентября 2026 г. в 14:41 • 381 points

Оригинал • HN

#glassmorphism#hugo#llm#neovim#ui

Комментарии (241)

Slop UI — это не неизбежный результат работы ИИ, а следствие неконтролируемого использования LLM, отсутствия человеческого надзора и обучения моделей на некачественных данных. Многие его признаки (карточки, карусели, избыточные градиенты) повторяют плохие практики доэпохи ИИ, однако современные шаблоны (пульсирующие бейджи, «fingernail cards», двойные слеши) уже распознаются пользователями и снижают доверие. Существуют споры о том, является ли Slop UI ухудшением дизайна или просто сменой одного набора шаблонов на другой, а также о том, исчезнут ли эти признаки с развитием моделей или останутся из-за неквалифицированного использования. Для предотвращения Slop UI рекомендуется: — использовать четкие инструкции в промптах (например, запрет на serif-шрифты или избыточные анимации fade-in); — применять цепочку рассуждений: от бренд-гайдлайнов и вайрфреймов к интеграции; — создавать собственную дизайн-систему на CSS-токенах и Vue-компонентах, запрещая генерацию произвольного HTML; — использовать LLM только для вдохновения, не копируя макеты напрямую; — выносить тексты в отдельные файлы (i18n) и редактировать их вручную, чтобы избежать шаблонных фраз и неестественных слоганов; — запрещать вывод технических комментариев в интерфейс. Опытные пользователи отмечают, что создание качественного UI с помощью ИИ требует больше времени и усилий, чем ручной дизайн, из-за необходимости постоянной фильтрации и корректировки. Самые частые признаки Slop UI: вложенные карточки, фон «под пергамент», бесполезные дашборды и неоправданный Caps Lock.

Neovim have a ~$800k Bitcoin donation sitting untouched since 2023 🔥 Горячее 💬 Длинная дискуссия

Пересказ статьи недоступен — ниже разбор обсуждения.

by jakemanger • 17 сентября 2026 г. в 10:44 • 310 points

Оригинал • HN

#bitcoin#neovim

Комментарии (266)

Neovim имеет неиспользованный биткоин-донациональный кошелек на $800K с 2023 года, вероятно, недоступный из-за утери ключей, но продолжает отображаться на сайте, что может вводить доноров в заблуждение. Кошелек управляется через OpenCollective как 501(c)(6) организация в США, что делает проект налогово-освобожденным, поэтому отсутствие продажи биткоинов не создает налоговых обязательств. Многие участники обеспокоены, что ключи утеряны и биткоины навсегда недоступны, как часто бывает с потерянными криптокошельками. Если кошелек действительно недоступен, Neovim должен удалить его с сайта, чтобы избежать потери будущих пожертвований в неактивный адрес, и прозрачно сообщить об этом сообществу для сохранения доверия. Некоторые считают хранение биткоинов разумной стратегией накопления резервов, другие — плохой инвестицией из-за отсутствия роста. Для управления крупными криптосредствами рекомендуются пороговые подписи (например, FROST) вместо Shamir Secret Sharing, чтобы избежать централизованного восстановления ключа. Крупные биржи решают проблему утери ключей через судебные процедуры: если ключи есть — активы переходят наследникам, если нет — теряются навсегда. На практике часто используются простые механизмы восстановления (текстовые файлы, ручные церемонии), а не сложные системы. Пожертвование $3k в 2019 году позволило разработать ядро LSP-клиента Neovim, показывая, как небольшие средства ускоряют развитие. Часть биткоинов теряется ежегодно, и при текущих тенденциях активных монет со временем станет значительно меньше. Возможно, пожертвование было сделано давно и забыто, а не удерживается намеренно как резерв.

IDEmacs: A Visual Studio Code clone for Emacs (codeberg.org) 🔥 Горячее

IDEmacs представляет собой набор конфигураций для Emacs, созданный для упрощения входа в этот мощный редактор через имитацию интерфейса популярных IDE. Проект ориентирован на трех основных групп пользователей: программистов, переходящих с других IDE; начинающих Common Lisp и Scheme разработчиков, которым нужна функциональность Emacs без сложной настройки; а также непрограммистов, ищущих полнофункциональный редактор для Org, Markdown или LaTeX.

Ключевая особенность IDEmacs - это сочетание традиционного для Emacs управления с клавиатуры и поддержки GUI с мышью. В отличие от большинства стартовых комплектов для Emacs, здесь не скрываются графические элементы интерфейса, что значительно снижает порог входа для новичков. Проект позиционируется как временное решение ("заплатка") для текущей ситуации, когда Emacs с Sly/Geiser остается лучшей средой разработки для Lisp/Scheme, несмотря на его сложность для начинающих.

by nogajun • 16 ноября 2025 г. в 00:56 • 283 points

Оригинал • HN

#common-lisp#emacs#latex#markdown#neovim#org#scheme#ssh#vim#visual-studio-code

Комментарии (116)

  • Пользователи спорят о модернизации Emacs: одни хотят сохранить ядро, но обновить UI (giancarlostoro), другие считают устаревший интерфейс фичей (raincole), третьи критикуют производительность (koiueo).
  • Альтернативы Emacs обсуждаются активно: VS Code с плагинами (ruguo), OniVim (tiffanyh), Neovim с distant.nvim (pca006132), а также Electron-редакторы с Vim-подобными биндами (trenchpilgrim).
  • Удалённая работа через SSH/TRAMP в Emacs возможна (brendyn, v9v), но имеет проблемы с задержками, в отличие от VS Code Remote (pca006132, blubber).
  • Клавиатурные комбинации Emacs (C-x, C-c и др.) вызывают поляризацию мнений: одни считают их устаревшими (tom_), другие — неотъемлемой частью (ssivark).
  • Сообщество Emacs сопротивляется радикальным изменениям UI, предпочитая кастомизацию через "стартовые пакеты" (ssivark), хотя часть видит в этом контркультурное противодействие прогрессу (stackghost).

Tinkering is a way to acquire good taste (seated.ro) 🔥 Горячее 💬 Длинная дискуссия

Эксперименты — основа хорошего вкуса в программировании. Автор признается, что в детстве пробовал многое (гитару, боевые искусства), но с программированием не экспериментировал, хотя и восхищался играми. Позже он понял, что эксперименты — ключевой элемент его обучения. Примеры экспериментов: настройка чувствительности мыши в играх, конфигурация Linux, кастомизация механических клавиатур. Цитируется мнение: «Когда ты экспериментируешь и выбрасываешь результаты — это практика, которая должна быть мимолетной, исследовательской и частой».

Хороший вкус формируется через использование разных инструментов, отбор подходящих и отказ от неподходящих. Автор подчеркивает, что «никакое время, потраченное на обучение, не пропало зря». Он призывает сомневаться в общепринятых нормах, экспериментировать и ломать вещи. Важно найти баланс: автор не тратит все время на настройку neovim, но регулярно пробует новые технологии (GLSL, Rust, Swift), чтобы расширить кругозор и развить способность отличать посредственность от мастерства.

by jxmorris12 • 28 октября 2025 г. в 21:31 • 406 points

Оригинал • HN

#glsl#linux#neovim#rust#swift

Комментарии (300)

  • Обсуждение свелось к тому, что «taste» и «tinkering» — это не про элитарность, а про любознательность и готовность экспериментировать.
  • Участники обменялись историями о том, как раньше они тоже «игрались» с настройками, но со временем пришли к минимализму и перестали это делать.
  • Поднялась тема о том, что «taste» в разработке ПО — это не про эстетику, а про умение выбирать правильные инструменты и не тратить время на бессмысленные оптимизации.
  • Некоторые участники выразили обеспокоенность тем, что статья не раскрывает, что именно делает «taste» важным и почему он важен.
  • В итоге обсуждение сошлось на том, что «taste» — это не врождённое качество, а навык, который развивается с опытом и вовремя отпускает человека от бессмысленных занятий.

Notes on switching to Helix from Vim (jvns.ca) 🔥 Горячее 💬 Длинная дискуссия

Julia Evans рассказала, как за три месяца перешла с Vim на Helix. Главное, что языковые серверы работают без настройки, а поиск показывает контекст совпадений. Минусов мало: нет автоперезагрузки файлов, не хватает приёма undo и редко падает. Но она привыкла и даже не чувствует, что потеряла 20 лет мускульной памяти Vim.

by chmaynard • 10 октября 2025 г. в 14:37 • 277 points

Оригинал • HN

#helix#lsp#neovim#rust#tmux#tree-sitter#vim

Комментарии (173)

  • Пользователи обсуждают преимущества и недостатки Helix и Neovim: кто-то ценит «из коробки»-конфигурацию Helix, кто-то — гибкость Neovim; спор о том, какой редактор «лучше» ведётся в основном вокруг личных привычек и потребностей.
  • Участники обмениваются советами по настройке LSP, автосохранению и другим функциям, но в целом признают, что оба редактора требуют документации и что «из коробки»-конфигурация Helix может быть проще в использовании.
  • Некоторые участники подчеркивают, что Helix всё ещё молод и не реализует все функции, в то время как Neovim имеет 20-летнюю историю и большое сообщество плагинов и интеграций.
  • Участники также обсуждают, что Helix требует меньше конфигурации, но Neovim требует больше настройки, чтобы достичь схожего уровня функциональности.
  • Некоторые участники высказывают, что Helix не имеет столь же развитой экосистемы плагинов и интеграций, как Neovim, и что это может быть препятствием для пользователей, которые ищут расширяемость.
  • Несколько участников упоминают, что Helix написан на Rust и может быть более производительным, в то время как Neovovim может быть более «гибким» в плане настройки и конфигурации.
  • Участники также обсуждают, что Helix имеет встроенную поддержку LSP и tree-sitter, в то время как Neovim требует установки и настройки LSP и tree-sitter вручную.
  • Некоторые участники упоминают, что Helix не имеет встроенной поддержки терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки макросов, в то время как Neovim может использовать макросы для автоматизации задач.
  • Некоторые участники упоминают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для макросов, в то время как Neovim может использовать макросы для автоматизации задач.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексоры для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения окон.
  • Участники также обсуждают, что Helix не имеет встроенной поддержки для встроенного терминала, в то время как Neovim может использовать tmux или другие терминальные мультиплексора для разделения

The evolution of Lua, continued [pdf] (lua.org) 💬 Длинная дискуссия

Созданный в 1993 году в Бразилии, Lua стал одним из ведущих скриптовых языков, особенно в разработке игр. С 2007 года язык эволюционировал через серию Lua 5, добавив современные функции: сопрограммы для многопоточности, полную лексическую область видимости и метатаблицы для расширяемой семантики. Важные изменения включают введение целочисленного типа, улучшение сборки мусора с детерминированной финализацией и эволюцию глобальных переменных.

Lua сохраняет лёгкость и встраиваемость, будучи компактной C-библиотекой, что позволяет легко интегрировать его в хост-программы. Версии Lua 5.x несовместимы на уровне ABI, требуя перекомпиляции для встраивания, но сохраняют стабильность в рамках одной версии. Социальным маркером стало широкое принятие либеральной лицензии MIT и влияние LuaJIT, который продлил жизнь версии 5.1. Практический вывод: баланс между инновациями и стабильностью ключевой для долголетия языка.

by welovebunnies • 07 октября 2025 г. в 12:54 • 213 points

Оригинал • HN

#coroutines#fengari#lua#luajit#luau#metatables#mit-license#nelua#neovim#roblox

Комментарии (161)

  • Обсуждаются преимущества Lua как легкого, быстрого и удобного для встраивания языка, особенно в сравнении с JavaScript и Python.
  • Упоминаются проекты для запуска Lua в браузере (например, Fengari, Nelua) и проблемы взаимодействия с DOM.
  • Затрагивается история развития языков программирования в 90-х годах и место Lua среди них.
  • Обсуждаются особенности Lua, такие как 1-индексация, отсутствие continue, метатаблицы, а также новые версии (Lua 5.5, Luau).
  • Участники делятся ресурсами для изучения Lua и областями его применения (игры, Neovim, Roblox, скриптование в C++).

Dotfiles feel too personal to share (hamatti.org)

Я обожаю dotfiles.

“Dotfiles” — это конфигурационные файлы для программ и ОС, часто начинаются с точки: .bashrc, .tmux.conf, .zshrc. Когда софт не поддерживает настройку файлами, грустно: сложнее синхронизировать конфиги между устройствами и при настройке новых машин.

Я люблю делиться: пишу блог, веду цифровой сад заметок и выкладываю почти весь код на GitHub. И обожаю читать чужие dotfiles, учиться у них.

Но свои публиковать некомфортно: мои алиасы, кастомизации и решения кажутся слишком личными. Почему — точно не знаю.

У меня есть классный репозиторий с кучей всего: конфиг zsh и алиасы, tmux, neovim и vscode, Python startup-скрипт. Храню список пакетов Homebrew — ставлю на новый компьютер одной командой. Там же — CSS-правила для Stylus, чтобы везде получать нужный вид.

Для управления использую GNU Stow: структура папок позволяет командой stow [folder] раскидать симлинки по нужным местам, и изменения синхронизируются на всех машинах. Это очень удобно.

В сумме там 19 конфигов плюс весь мой neovim с плагинами. Но пока я «берегу их как тайну», пока не почувствую готовность делиться.

Если откликнулось — напишите на juhamattisantala at gmail dot com. В 2025 хочу больше глубоких разговоров с людьми со всего мира — буду рад вашему письму.

by speckx • 06 августа 2025 г. в 14:36 • 172 points

Оригинал • HN

#css#dotfiles#github#homebrew#neovim#python#security#tmux#vscode#zsh

Комментарии (140)

  • Участники разделились: одни считают дотфайлы слишком личными/уязвимыми для публикации, другие — ценным источником обмена знаниями и вдохновения.
  • Главные опасения: утечки секретов и контекста (хосты, пути, IP, корпоративные детали), риски социнженерии и отпечатков, а также стыд/страх оценки «неидеальной» личной конфигурации.
  • Распространенная практика — разделение на слои: публичные «универсальные» настройки, приватные оверрайды и секреты; отдельные репозитории, шифрование (age/gpg, sops), менеджеры вроде chezmoi, myba, Polykey.
  • Советы по безопасности: не хранить секреты в .bashrc и подобных, исключать их через .gitignore, использовать шифрование и хранилища (1Password ссылки, отдельные файлы, приватные репо).
  • Польза публикации: обучение через чужие конфиги (vim/zsh/emacs/nvim), улучшения качества жизни через алиасы/маппинги, возможность быстро делиться и переустанавливать окружение.
  • Практические подходы: файл-локальные приватные настройки, employer-специфические include-файлы, документирование и чистка перед открытием, минимизация зависимостей от нестандартного софта.
  • Итоговый консенсус: «делиться избирательно» — держать публичным обобщаемое и полезное, а чувствительное и слишком личное — приватным или зашифрованным.