Vor kurzem habe ich während des Studiums der Datenwissenschaft ein Statistikbuch gelesen, aber es kann schwierig sein, sich vorzustellen, nur ein Buch zu lesen. Deshalb wollte ich mit dem Jupyter-Notizbuch Code zur Hand schreiben. habe gedacht. Wenn ich Code mit Jupyter Notebook schreibe, möchte ich vim verwenden können, da die Spannung nur dann ansteigt, wenn ich die Schlüsselbindung von vim verwenden kann, aber ich war ein wenig süchtig danach, also habe ich die Methode zusammengefasst.
Ausführung | |
---|---|
Mac | 10.15.3 |
Docker | 19.03.4 |
docker-compose | 1.24.1 |
Starten Sie Jupyter Notebook mit vim-Tastenkombinationen mit Dockerfile und Docker-Compose.
$ mkdir notebooks
Dockerfile
FROM jupyter/minimal-notebook:latest
USER root
RUN pip install jupyter_contrib_nbextensions && \
jupyter contrib nbextension install --user && \
git clone https://github.com/lambdalisue/jupyter-vim-binding /home/jovyan/.local/share/jupyter/nbextensions/vim_binding && \
jupyter nbextension enable vim_binding/vim_binding
EXPOSE 10000
CMD ["bash"]
jupyter --path
überprüfen.)docker-compose.yml
version: '3'
services:
data-science:
restart: always
build: .
container_name: 'data-science'
ports:
- "10000:10000"
working_dir: '/root/'
tty: true
volumes:
- ./notebooks:/root/notebooks/
$ docker-compose up -d --build
$ docker-compose exec data-science bash
/root# jupyter notebook --port 10000 --allow-root
Greifen Sie auf das angezeigte http: //127.0.0.1: 10000 /? Token = xxxxxxxxxxxxxxxxx
zu.
Standardmäßig ist "Deaktivieren" in den Erweiterungseinstellungen aktiviert. Deaktivieren Sie es daher, um es zu aktivieren.
Jetzt können Sie vim auf Ihrem Notebook verwenden
Die Methode, Vim-Schlüsselbindungen in Jupyter Notebook verfügbar zu machen, war recht gut organisiert, aber ich war süchtig danach, außer wenn ich verschiedene Dinge ausprobierte, also versuchte ich, sie selbst zusammenzufassen. Jetzt können Sie ein bequemes Notizbuch schreiben! (Diesmal habe ich jedoch alle Benutzer zum Rooten gebracht, daher ist es möglicherweise besser, diesen Bereich zu ändern.)
Recommended Posts