регистрация ядер в блокноте ipython/jupyter — kernel.json

В последней версии IPython ядра можно зарегистрировать, поместив файл kernel.json в ~/.ipython/kernels/<kernel-name>/.

В настоящее время я пытаюсь добавить ядра julia и R, и мне интересно, кто отвечает за создание и поддержку этих файлов kernel.json.

На данный момент я погуглил и вручную создал следующие kernel.json для julia:

{
 "display_name": "Julia",
 "language": "julia",
 "argv": [
    "julia",
    "-i",
    "-F",
    "/User/<user>/.julia/v0.3/IJulia/src/kernel.jl",
    "{connection_file}"
 ],
 "codemirror_mode":"julia"
}

Пока это работает, из-за жестко заданного пути к kernel.jl мне придется адаптировать kernel.json для каждого крупного обновления julia.

Должен ли я заботиться о создании и обслуживании этих файлов? Или они являются частью реализации ядра или других сторонних пакетов?


person cel    schedule 10.02.2015    source источник


Ответы (1)


Обычно люди создают символические ссылки, чтобы избежать зависимости от конкретных версий.

ln -s ~/.julia/v0.3 ~/.julia/latest

тогда вы можете использовать latest вместо v0.3 в kernel.json.

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

person anthonybell    schedule 28.03.2015
comment
Да, это вариант. Но IMO изменение символической ссылки или редактирование пути в файле конфигурации не имеет большого значения. - person cel; 28.03.2015
comment
но с символической ссылкой при обновлении вам нужно изменить только ссылку вместо того, чтобы пытаться изменить каждую программу, которая когда-либо ссылалась на нее. - person anthonybell; 29.03.2015
comment
Я согласен с тем, что воссоздание символической ссылки — это улучшение по сравнению с пересмотром нескольких файлов конфигурации. Но здесь у меня всего один файл конфигурации, поэтому в данном конкретном случае он может быть немного чище, но на самом деле не решает эту проблему. - person cel; 29.03.2015