2013-03-28 21 views
11

Używam notesu IPython i chcę edytować programy w zewnętrznym edytorze. Jak uzyskać %edit file_name.py, aby otworzyć edytor taki jak Notepad ++.Edytor zewnętrzny dla notebooka IPython

+0

Aby sprawdzić aktualną ustaw edytor z IPython, uruchom '% config TerminalInteractiveShell.editor'. – anishpatel

Odpowiedz

12

Po uruchomieniu %edit? otrzymasz pomoc dotyczącą magicznej funkcji %edit.

Musisz ustawić c.TerminalInteractiveShell.editor, który znajduje się w twoim ipython_config.py. Nie jestem do końca pewien, gdzie znajduje się w systemie Windows; w systemie OS X i Linux jest w ~/.ipython. Będziesz chciał ustawić zmienną tak, aby była pełną ścieżką edytora.

Alternatywnie można utworzyć zmienną środowiskową EDITOR w samym systemie Windows i ustawić ją jako pełną ścieżkę edytora. iPython powinien tego użyć.

+1

to działa, ale po prostu aby dodać komentarz: aby uzyskać ipython_config.py musisz uruchomić 'ipython profile create' first –

6

Używam Windows 7 i 8 (oraz 10TP) i Python 3.4.2.

Zacząłem od ipython locate, aby powiedzieć mi, gdzie ipython myśli pliki konfiguracyjne sugerowane gdzie indziej. Kiedy zobaczyłem było inaczej czytam dookoła i podszedł z następujących czynności:

  • Na moim systemie, ipython locate dał mi c:\users\osmith\.ipython, nie _ipython zobaczysz wymienioną w filmach YouTube wykonanych z Windows XP,
  • Spójrz w katalogu ipython locate określa dla katalogu profilu; jeśli nie są aktywnie robi coś z profili ipython powinno być .ipython\profile_default, jeśli używasz profili, potem zostawiam to do ciebie do s/profile_default/$ {YOUR_PROFILE_NAME}/g
  • Sprawdź katalog profile_default dla plik ipython_config.py, jeśli go tam nie ma, powiedz ipython zainicjować się: ipython profile create
  • Otwórz plik config w edytorze tekstowym,

Jeśli jesteś osobą, która nie zawiedli wokół ich konsoli zbyt wiele i instaluje rzeczy w standardowych miejscach, możesz przejść od razu do tego kroku, wpisując: ipython profile create, a następnie start notepad .ipython\profile_default\ipython_config.py.

  • Szukaj ciąg c.TerminalInteractiveShell.editor,
  • Komentarz powyżej oznacza to, można również użyć zmiennej środowiskowej EDITOR, ale ciężko kodowania ścieżki plików nigdy nie zaszkodzi nikomu więc zróbmy EET:
  • skopiować linię i usuń wiodący skrót i spacje z kopii.
  • Zamień tekst między apostrofami ('notepad') na ścieżkę naszego pożądanego edytora, np.

    c.TerminalInteractiveShell.editor = 'c: Pliki/programów (x86) /noddyeditor/noddy.exe'

Jest tu haczyk, choć; niektóre nowoczesne edytory stają się nieco wymyślne i automatycznie, a po wywołaniu w ten sposób odłączają się od konsoli. Na przykład Notepad ++ i Sublime Text.Sublime akceptuje opcję "--wait", która działa przez pewien czas; dzięki temu wywołanie komendy będzie się kręcić, dopóki nie zamkniesz pliku, z pewną definicją until i inną definicją close.

Jednak następujące ustawienie będzie działać większość czasu na Sublime Text:

c.TerminalInteractiveShell.editor = '"c:/program files/sublime text 3/subl.exe" --wait' 

(zakładając, c: \ program files \ jest gdzie wzniosły tekst 3 katalog jest)

+1

Dzięki za podpowiedź z --wait! – maggie

Powiązane problemy