Vim을 좋아하는 Jupyter Notebook의 초기 설정 · jj에서 빠지거나 (jupyter-vim-binding)
5939 단어 Jupyter-notebook파이썬Vim
머리
제목대로 하고 싶다. 당사의 초기 개발 환경은 아무것도 들어 있지 않고, 무의식적으로 jj가 표시되기 쉽다(vim 있다고 생각하고 있다). Jupyter에서도 기본적인 vim 환경이 들어있는 것이 개인적으로 바람직하기 때문에 이것을 설정하는 절차를 설명한다. 회사의 환경은 리눅스이지만 새로 설치한 집의 PC에서 기사를 쓰고 있기 때문에 macOS에 관한 것이다. 단, 대체로 같은 하즈.
환경·준비
방법
jupyter-vim-binding 도입
기본적으로 이 로 좋다고 생각하고 있다. 그 밖에도 있다고 생각하지만, 이번은 이것으로 쓴다.
먼저 pip에서 jupyter notebook을 설치합니다. 어차피 사용하므로 pandas도.
pip install jupyter
pip install pandas
뇌사로 github에 쓰여진 절차를 닦는다.
mkdir -p $(jupyter --data-dir)/nbextensions
cd $(jupyter --data-dir)/nbextensions
git clone https://github.com/lambdalisue/jupyter-vim-binding vim_binding
jupyter nbextension enable vim_binding/vim_binding
우선 현시점에서 jupyter를 열면 다음과 같은 것이 나온다.
cd
jupyter notebook
이것은 홈 디렉토리이지만 우선 우측 상단의 New에서 python3을 선택하여 열면,
이런 식으로 Untitled.ipynb가 생성됩니다. 크림색일 때는 normal 모드이며, i로 인서트 모드에 넣는다. 자세한 것은 본가 페이지를 볼 수 있다. 이
설정하지 않으면 jj에서 인서트 모드를 빠질 수 없어 화가 나므로 키 매핑을 편집합니다.
키 매핑 편집
이 기사에서는 nvim으로 편집한다 (적당한 편집기로 부디). ~/.jupyter에 jupyter 설정이 놓인 것 같습니다. custom.js를 작성하거나 편집하십시오.
mkdir -p ~/.juputer/custom/
nvim ~/.jupyter/custom/custom.js
편집기가 열리면 다음을 저장합니다. 이것은 공식적으로 작성된 설정 중 jj에서 일반 모드로 돌아가는 설정 이외를 삭제한 것입니다.
// Configure CodeMirror Keymap
require([
'nbextensions/vim_binding/vim_binding', // depends your installation
], function() {
CodeMirror.Vim.map("jj", "<Esc>", "insert"); // jj setting!
});
// Configure Jupyter Keymap
require([
'nbextensions/vim_binding/vim_binding',
'base/js/namespace',
], function(vim_binding, ns) {
// Add post callback
vim_binding.on_ready_callbacks.push(function(){
var km = ns.keyboard_manager;
// Allow Ctrl-2 to change the cell mode into Markdown in Vim normal mode
km.edit_shortcuts.add_shortcut('ctrl-2', 'vim-binding:change-cell-to-markdown', true);
// Update Help
km.edit_shortcuts.events.trigger('rebuild.QuickHelp');
});
});
이것으로 꽤 기분 좋게 편집을 할 수 있게 된다. 사용하면 알 수 있습니다.
마지막으로 Gif 애니메이션을 붙여 둡니다.
결론
회사의 환경이라면, 보안의 관계로 무언가와 설치가 곤란하지만, git는 갈 수 있었기 때문에 어떻게든 되었다. 또 다른 환경이 되었을 때는 우선 이 기사와 같이 하도록 한다. vimmer에게는 적어도 jkhl의 이동은 사활 문제이므로, jupyter-vim-binding만으로도 설정하면 좋다고 생각한다.
Reference
이 문제에 관하여(Vim을 좋아하는 Jupyter Notebook의 초기 설정 · jj에서 빠지거나 (jupyter-vim-binding)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/eventerharuchan/items/9488417fc6963bd73106
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
pip install jupyter
pip install pandas
mkdir -p $(jupyter --data-dir)/nbextensions
cd $(jupyter --data-dir)/nbextensions
git clone https://github.com/lambdalisue/jupyter-vim-binding vim_binding
jupyter nbextension enable vim_binding/vim_binding
cd
jupyter notebook
mkdir -p ~/.juputer/custom/
nvim ~/.jupyter/custom/custom.js
// Configure CodeMirror Keymap
require([
'nbextensions/vim_binding/vim_binding', // depends your installation
], function() {
CodeMirror.Vim.map("jj", "<Esc>", "insert"); // jj setting!
});
// Configure Jupyter Keymap
require([
'nbextensions/vim_binding/vim_binding',
'base/js/namespace',
], function(vim_binding, ns) {
// Add post callback
vim_binding.on_ready_callbacks.push(function(){
var km = ns.keyboard_manager;
// Allow Ctrl-2 to change the cell mode into Markdown in Vim normal mode
km.edit_shortcuts.add_shortcut('ctrl-2', 'vim-binding:change-cell-to-markdown', true);
// Update Help
km.edit_shortcuts.events.trigger('rebuild.QuickHelp');
});
});
회사의 환경이라면, 보안의 관계로 무언가와 설치가 곤란하지만, git는 갈 수 있었기 때문에 어떻게든 되었다. 또 다른 환경이 되었을 때는 우선 이 기사와 같이 하도록 한다. vimmer에게는 적어도 jkhl의 이동은 사활 문제이므로, jupyter-vim-binding만으로도 설정하면 좋다고 생각한다.
Reference
이 문제에 관하여(Vim을 좋아하는 Jupyter Notebook의 초기 설정 · jj에서 빠지거나 (jupyter-vim-binding)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/eventerharuchan/items/9488417fc6963bd73106텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)