최근에 Emacs를 파이썬 IDE로 사용하기 시작했는데 직관적이지는 않습니다 ... 지금 당장 고민하고있는 문제는 명령 줄 인수를 하위 클래스에 전달하는 방법입니다 버퍼가 Cc Cc로 평가 될 때 파이썬 셸. 도와 주셔서 감사합니다.Emacs : 버퍼 평가 중에 열등한 파이썬 셸에 인수 전달
6
A
답변
7
이것은 쉽게 가능하지 않습니다. python.el
모듈에 의해 관리되는 열등한 프로세스는 python-send-buffer
(및 친구들)의 많은 호출에서 지속되도록 설계되었습니다. 당신이 경우
(defun python-send-buffer-with-my-args (args)
(interactive "sPython arguments: ")
(let ((source-buffer (current-buffer)))
(with-temp-buffer
(insert "import sys; sys.argv = '''" args "'''.split()\n")
(insert-buffer-substring source-buffer)
(python-send-buffer))))
가, 다음, 당신의 *scratch*
버퍼에이 기능을 실행 및/또는 .emacs
파일에 저장 : 내가 찾은 하나의 해결책은 하부 프로세스 내에서 프로그램 sys.argv
을 설정하는 함수를 직접 작성하는 것입니다 그것을 편리한 키 시퀀스에 바인딩하십시오. C-c C-a
그래서 아마도, python-mode
에서 사용하지 않는 것 :
(global-set-key "\C-c\C-a" 'python-send-buffer-with-my-args)
명령은 인수를 사용하는 다음 sys.argv
을 설정하는 코드로 붙일 임시 버퍼에 소스 버퍼를 복사하라는 메시지를 표시합니다 입력 한 인수 목록에 입력하고 python-send-buffer
을 호출합니다.
위의 코드는 공백에 입력 한 문자열을 순진하게 분할하므로 공백이있는 인수를 제공해야하는 경우보다 정교한 알고리즘이 필요합니다.
관련 문제
- 1. 파이썬 서비스에 인수 전달
- 2. 파이썬 - 전달 함수 인수
- 3. emacs repl에 버퍼 영역 보내기
- 4. Cocoa Emacs 인쇄 버퍼
- 5. Emacs 23, emacsclient 인수?
- 6. Emacs 명령 줄 인수
- 7. : 전달 인수
- 8. 인수 전달
- 9. 인수 전달
- 10. Emacs 버퍼 내의 OpenGL 컨텍스트
- 11. 수직 분할을 사용하여 새로운 Emacs 버퍼 열기
- 12. 초기화 목록 * 인수 * 평가 순서
- 13. 파이썬 비교 평가
- 14. 파이썬 평가 순서
- 15. 왼쪽에서자를 수있는 파이썬 버퍼?
- 16. 파이썬 Mod_WSGI 출력 버퍼
- 17. Eclipse에서 TestNG로 인수 전달
- 18. Drupal6보기에 인수 전달
- 19. 전달 열거 형 인수
- 20. Excel VBA : 인수 전달
- 21. IPhone의 선택기에 인수 전달
- 22. SudzC로 인수 전달
- 23. -D를 사용하여 인수 전달
- 24. 가변 인수 목록 전달
- 25. 클래스 생성자에 인수 전달
- 26. LLVM의 인수 전달
- 27. iframe에 인수 전달
- 28. 가변 인수 전달
- 29. PHP에서 함수에 인수 전달
- 30. @selector 메서드에 인수 전달
숀 감사합니다. 아이디어가 있습니다. 그것은 트릭을합니다. 이 경우 main 함수를 호출하기 전에 sys.argv 변수를 직접 설정하여 인수를 전달할 수도 있습니다. – Sammy
+1 좋은 아이디어. –
'progn : Symbol의 함수 정의가 void : python-send-buffer'가'python-send-buffer'를'python-shell-send-buffer'로 변경하려고하면이 오류가 발생합니다. – boclodoa