Нажмите "Enter", чтобы перейти к содержанию

Windows не видит сидиром: Windows 10 не видит привод CD/DVD-ROM

Устранение неполадок :: CIDER Docs

REPL не запускается

Убедитесь, что ваша версия CIDER соответствует версии cider-nrepl . Проверять содержимое буфера *Messages* для ошибок, связанных с CIDER. Вам следует также проверьте сообщения nREPL, передаваемые между CIDER и nREPL в *nrepl-сообщений* . Если вы не видите там ничего полезного, самое время привести из больших пушек.

Отладка инициализации REPL

Для отладки инициализации REPL CIDER рекомендуется подключиться к одному из его точки входа. Добавить точку останова на cider-make-repl ( C-u C-M-x , в то время как в его теле). В следующий раз, когда вы запустите CIDER, вы попадете в отладчик и вы можете идти вперед, пока не найдете проблему.

Отсутствует

*nrepl-messages* буфер

Регистрация сообщений nREPL не включена по умолчанию. Установите nrepl-log-messages на t чтобы активировать его. В качестве альтернативы вы можете использовать M-x . nrepl-toggle-message-logging

для временного включения/отключения ведения журнала в вашем текущий сеанс Emacs. Обратите внимание, что включение ведения журнала сообщений может повлиять на производительность.

cider-debug жалуется, что «не удалось инструментировать…»

В буфере REPL введите следующее.

 your.namespace> (ns cider.nrepl.middleware.util.instrument)
cider.nrepl.middleware.util.instrument> (def verbose-debug true) 

Это заставит CIDER печатать расширенную информацию в буфер REPL, когда вы попробуйте отладить выражение (например, с помощью C-u C-M-x ). Сообщить о проблеме и скопируйте эту информацию.

REPL перестает работать, когда какая-то функция возвращает URL-адрес

Скорее всего, вы столкнулись с проблемой промежуточного программного обеспечения типа контента . Как правило, это легко подтвердить, проверив stracktrace:

 user> (java. net.URI. "mailto:[email protected]")
#object[java.net.URI 0x36966ca2 "mailto:[email protected]"]ОШИБКА: необработанное сообщение обработки исключения обработчика REPL {:op slurp, :url mailto:[email protected], :session 69c4d8e1-7bb4-45ad-8075-d21995fd50ab, :id 1579}
java.net.UnknownServiceException: протокол не поддерживает ввод
на java.base/java.net.URLConnection.getInputStream(URLConnection.java:840)
в cider.nrepl.middleware.slurp$slurp_url_to_content_PLUS_body.invokeStatic(slurp.clj:100)
на cider.nrepl.middleware.slurp$slurp_url_to_content_PLUS_body.invoke(slurp.clj:82)
в cider.nrepl.middleware.slurp$handle_slurp.invokeStatic(slurp.clj:117)
в cider.nrepl.middleware.slurp$handle_slurp.invoke(slurp.clj:109) 

Вы можете отключить промежуточное ПО следующим образом:

 (setq cider-repl-use-content-types t) 

Оно отключено по умолчанию, начиная с CIDER 0.25.

Зависания и зависания при отладке

Иногда команда CIDER может зависнуть на некоторое время (например, из-за ошибки или проблема с конфигурацией).

Такие проблемы очень раздражают, но относительно легко для отладки. Вот несколько шагов, которые вы можете предпринять в таких ситуациях:

  • Do M-x переключение-отладка-при-выходе

  • Воспроизвести проблему

  • Нажмите C-g примерно через 10 секунд после зависания

Это вызовет обратную трассировку со всем стеком функций, включая аргументы функции. Таким образом, вы должны быть в состоянии выяснить, что происходит (или в минимум того, что требуется).

Предупреждение о том, что вы должны использовать более новый nREPL

В настоящее время CIDER требует для правильной работы как минимум nREPL 0.6. Когда приходит nREPL в комплекте с Leiningen и Boot, время от времени вам, возможно, придется переопределять предоставленную ими версию (например, если вы вынуждены использовать более старую версию Leiningen, или еще нет релиза, объединяющего требуемую версию nREPL).

Лейнинген пользователи могут добавить это к своим profiles.clj , чтобы установить правильную зависимость:

 {:repl {:dependencies [[nrepl/nrepl "x.y.z"]]}} 

Процедура для Boot очень похожа.

Убедитесь, что вы добавили более новую зависимость nREPL к ключу :dependencies вместо этого. of :plugins (где находится плагин cider-nrepl Lein). Это довольно распространенное ошибка.

Как правило, рекомендуется использовать новейшую версию nREPL с CIDER, поскольку ошибки исправляются. практически в каждом выпуске.

Отсутствует функция clojure-…​ после обновления CIDER

Скорее всего, вы обновили CIDER, не обновив также clojure-mode .

CIDER зависит от clojure-mode

, и вы всегда должны обновлять их вместе, т.к. последняя версия CIDER может зависеть от функциональности, присутствующей только в последней версия clojure-mode .

Я обновил CIDER, используя

package.el , и он сломался

Встроенный менеджер пакетов не идеален и иногда дает сбои. Если вы только что обновился и обнаружил ошибку, вы должны попробовать следующее, прежде чем открытие вопроса: перейти в Каталог .emacs.d/elpa , удалите все папки связанных с CIDER, перезапустите Emacs, а затем переустановите отсутствующие пакеты. Примечание что порядок здесь имеет значение.

Я обновил CIDER с помощью

package.el и ничего не изменилось

Emacs не загружает новые файлы, он только устанавливает их на диск. Чтобы увидеть эффект изменений вы должны перезапустить Emacs.

CIDER жалуется на версию

cider-nrepl

Это предупреждение отображается в буфере REPL при его запуске и обычно выглядит так:

ВНИМАНИЕ: CIDER 0.18.0 требует cider-nrepl x.y.z, но в настоящее время вы используете cider-nrepl a.b.c. Некоторые функции могут работать некорректно!

, где a. b.c может быть актуальной версией, например 0.17.0 , или может быть не установлен или nil . Решение этой проблемы зависит от того, что вы видите и что делаете.

Вы видите число вроде
X.X.X и начинаете REPL с cider-connect

В вашем проекте указана неверная версия промежуточного программного обеспечения cider-nrepl. См. инструкции в разделе «Настройка промежуточного программного обеспечения».

Вы видите
не установлен или nil , и вы запускаете REPL с cider-connect

Чтобы использовать cider-connect , вам нужно добавить промежуточное ПО cider-nrepl в свой проект. См. инструкции в разделе «Настройка промежуточного программного обеспечения».

Вы видите
не установлен или nil , и вы начинаете REPL с cider-jack-in
  • Выполните C-h v cider-inject-dependencies-at-jack-in

    и убедитесь, что эта переменная не равна нулю.

  • Убедитесь, что ваш проект зависит как минимум от Clojure 1.7.0 .

  • Если вы используете Leiningen, убедитесь, что ваш lein --version не ниже 2.9.0 .

  • Если вы используете Boot и изменили cider-boot-parameters , вероятно, причина в этом.

Если вышеуказанное не работает, вы можете попробовать указать промежуточное ПО cider-nrepl вручную, согласно инструкции в разделе «Настройка промежуточного программного обеспечения».

Вы видите число вроде
X.X.X , и вы запускаете REPL с cider-jack-in

Это означает, что вы вручную добавляете промежуточное ПО cider-nrepl в свой проект, но не стоит этого делать, потому что сидр-джек-ин уже делает это для ты. Просмотрите следующие файлы и убедитесь, что вы удалили все ссылки на

cider-nrepl и nrepl : project.clj , build. boot , ~/.lein/profiles.clj и ~/.boot/profile.boot .

Пакет clj-refactor обычно внедряет собственное ПО промежуточного слоя в cider-jack-in , как и сам CIDER. Обычно это не проблема, если вы используете совместимые версии CIDER и clj-refactor , но если вы получаете какую-то ошибку, вероятно, это не так дело. У вас есть два варианта, чтобы решить эту проблему:

 (setq cljr-inject-dependencies-at-jack-in nil) 

Номера столбцов друг за другом

Emacs и Clojure различаются индексацией номеров столбцов — Emacs начинается считая с 0, а Clojure — с 1. Соответственно, cider-nrepl ПО промежуточного слоя использует индексацию, основанную на 1, и все преобразования в индексацию, основанную на 0, должны обрабатываться на стороне клиента. См. https://github.com/clojure-emacs/cider/issues/2852.

Пустые трассировки стека Java

Иногда JVM может удалить некоторые фреймы стека, что приводит к отсутствию трассировки стека информация, отображаемая в буфере ошибок CIDER.

Это вызвано оптимизацией JVM ( OmitStackTraceInFastThrow , включено default), который оптимизирует «встроенные» исключения, которые выбрасываются достаточно часто. быть кэшированным и не иметь трассировки стека.

Вы можете отключить оптимизацию, добавив флаг JVM -XX:-OmitStackTraceInFastThrow на что угодно команду, которую вы используете для запуска nREPL.

В частности, добавив его в файл deps.edn под псевдонимом (например, :dev )

--- {: псевдонимы {:dev {:jvm-opts ["-XX:-OmitStackTraceInFastThrow"] ...}}} ---

Или настроив параметры подключения.

 ---
(setq cider-clojure-cli-параметры "-J-XX:-OmitStackTraceInFastThrow")
--- 
Лейнинген отключает OmitStackTraceInFastThrow по умолчанию.

Если вы получаете какие-либо ошибки, связанные с rich-classpath при выполнении cider-jack-in , вы можете отключить интеграция обогащения-класса выглядит следующим образом:

 (setq cider-enrich-classpath nil) 

Навигация к источникам JDK не работает

Во-первых, убедитесь, что вы используете обогащение-класса. cider-enrich-classpath должен быть правдивым. Если вы запускаете свой собственный процесс repl, он должен иметь подключаемый модуль rich-classpath Leiningen или

clojure обертка.

Если вы работаете в Linux и по-прежнему не можете перейти к источнику встроенных методов, таких как .toUpperCase , вы возможно, не установлены исходники JDK. Пока вы на нем — это хорошо также установите Javadocs JDK. В Debian/Ubuntu:

 $ sudo apt install openjdk-17-source openjdk-17-doc 

В Red Hat/Fedora/CentOS:

 $ sudo dnf install java-17-openjdk-src java-17-openjdk-javadoc 

В Guix:

 $ guix package -i openjdk:jdk 

В Windows и macOS исходный код JDK поставляется вместе с JDK.

Нажатие

RET в REPL не оценивает формы

Вы пользователь Paredit? Вы включили буферы REPL?

В последних версиях Paredit (25+) RET привязан к paredit-RET . Это может вызвать неожиданное поведение в repl, когда paredit-mode включен, например. кажется, что он зависает после удара RET вместо оценки последней формы.

Вы можете отключить это поведение Paredit, добавив в файл init.el следующее:

 (define-key paredit-mode-map (kbd «RET») nil) 

Cider — альтернативный клиент Apple Music для Windows и Linux

Apple Music теперь предлагается на несколько платформ, включая не только операционные системы Apple, но также Android и Windows. Однако в Windows возможности Apple Music далеко не самые лучшие, поскольку пользователи по-прежнему полагаются на iTunes. Имея это в виду, группа разработчиков создала Cider — новый клиент Apple Music с открытым исходным кодом для Windows, Linux и даже macOS.

Как и многие другие клиенты Apple Music, Cider основан на официальном Apple MusicKit API. Приложение было создано с помощью Electron и Vue.js, поэтому оно может работать как на Windows, так и на macOS. Хотя пользователи Mac могут не чувствовать необходимости иметь альтернативный клиент Apple Music, те, у кого есть ПК с Windows, могут попробовать приложение.

iTunes для Windows предлагает только базовые возможности Apple Music. Например, в нем отсутствуют синхронизированные по времени тексты песен, которые были добавлены в Apple Music на iOS, macOS и даже Android много лет назад.

Cider не только предоставляет эти функции, но также имеет современный и настраиваемый интерфейс, который выглядит намного лучше, чем iTunes. У него даже есть некоторые функции, которых нет даже в официальном приложении Apple Music, например, возможность следить за исполнителями, легкий доступ к недавно воспроизведенным песням и интеграция с Apple Podcasts.

Приложение даже поставляется с опцией дистанционного управления, поэтому вы можете воспроизводить, приостанавливать или пропускать песню с любого другого устройства (Эй, Apple, пожалуйста, добавь это в Apple Music). Также есть поддержка Chromecast, встроенный общий доступ к Song. link и многое другое.

9to5Mac’s Take

Стоит отметить, что Cider все еще находится в стадии «альфа»-приложения, что означает, что оно находится в стадии разработки, поэтому вы, вероятно, найдете несколько ошибок здесь и там. Тем не менее, это интересное приложение для тех, кто недоволен iTunes или веб-приложением Apple Music в Windows. И поверьте мне, Apple давно пора заменить iTunes на Windows чем-то лучшим.

Вы можете скачать Cider на GitHub. Для пользователей Windows приложение доступно бесплатно в Магазине Microsoft (и вы можете заплатить небольшую дополнительную плату за поддержку разработчиков).

Читайте также:

  • Лучшие приложения для iPhone, которые расширят ваши возможности использования Apple Music

FTC: Мы используем автоматические партнерские ссылки для получения дохода. Подробнее.

Вы читаете 9to5Mac — экспертов, которые день за днем ​​сообщают новости об Apple и окружающей ее экосистеме. Обязательно заходите на нашу домашнюю страницу, чтобы быть в курсе всех последних новостей, и следите за новостями 9to5Mac в Twitter, Facebook и LinkedIn, чтобы оставаться в курсе событий.

Ваш комментарий будет первым

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *