texto repl python emacs ide autocomplete

texto - emacs python repl



tutorial de USO de ropemacs (4)

Bueno, primero debes seleccionar la carpeta raíz de tu proyecto. Simplemente, esta es la carpeta en el nivel superior de su proyecto, o la carpeta actual si está tratando con un solo archivo. Una vez que haya seleccionado la carpeta raíz, otras opciones funcionarán, como la asistencia del código, la documentación, saltando a otros símbolos, etc.

Para obtener el máximo beneficio de los ropemacs, sugiero obtener autocomplete.el , ponerlo en ~ / .emacs.d y luego agregar esto a su .emacs

(add-to-list ''load-path "~/.emacs.d/") (add-to-list ''load-path "~/.emacs.d/auto-complete-1.2") (autoload ''python-mode "python-mode" "Python Mode." t) (add-to-list ''auto-mode-alist ''("//.py//'" . python-mode)) (add-to-list ''interpreter-mode-alist ''("python" . python-mode)) (require ''python-mode) (autoload ''pymacs-apply "pymacs") (autoload ''pymacs-call "pymacs") (autoload ''pymacs-eval "pymacs" nil t) (autoload ''pymacs-exec "pymacs" nil t) (autoload ''pymacs-load "pymacs" nil t) (pymacs-load "ropemacs" "rope-") (setq ropemacs-enable-autoimport t) (require ''auto-complete) (global-auto-complete-mode t)

Esto supone que instales la función autocompletar en ~ / .emacs.d / auto-complete-1.2. Después de hacer esto, obtendrá la función de autocompletar automáticamente después de escribir algunos caracteres de una palabra o símbolo.

Puede modificar su archivo ROOT / .ropeproject / config.py para agregar más directorios a la ruta de búsqueda de cuerda, a fin de proporcionar una mejor autocompletar.

EDITAR: Dos de las funciones más importantes para mí son buscar documentación y saltar directamente a la definición de una función. Esto depende de establecer correctamente la ruta de búsqueda de cuerda para su proyecto como se mencionó anteriormente.

Documentación : coloque el cursor sobre un símbolo (nombre de función, nombre de clase, etc.) y haga lo siguiente:

C-c d

Esto le mostrará el docstring para el símbolo en cuestión.

Saltando a la definición : coloque el cursor sobre un símbolo (nombre de función, nombre de clase, etc.) y haga lo siguiente:

C-c g

Esto abrirá inmediatamente el archivo donde reside el símbolo y saltará al principio de la definición. Esto es ideal para los momentos en que la documentación es escasa y desea ver el código real. Además, es realmente bueno navegar dentro de tu propio código.

Encuentra ocurrencias :

C-c f

Búsqueda inteligente en todo su proyecto para el símbolo en el cursor.

Code assist :

M-/

Simplemente escriba los primeros caracteres de una función, clase, etc., y esto mostrará una lista de posibles terminaciones. Tenga en cuenta que debido a la naturaleza de Python, no siempre será una lista completa.

Refactorizaciones : hay bastantes opciones en Cuerda-> Refactor. Estos son para organizar mejor tu código. Cómo usarlos debería ser en su mayoría autoexplicativo; en general, seleccione la región de código que desea refactorizar, luego elija el comando.

Editar : en respuesta a un comentario a continuación, aquí se explica exactamente cómo agregar otras rutas a tu ruta python para que la función de autocompletar también busque esos símbolos.

prefs.add(''python_path'', ''~/path/to/virtualenv/lib/python2.6/site-packages'')

Esto va en .ropeproject/config.py

Hay muchos sitios con instrucciones sobre la instalación de macros de cuerda, pero hasta ahora no pude encontrar ninguno con instrucciones sobre cómo usarlo una vez que ya está instalado. Lo tengo instalado, o al menos eso parece, Emacs tiene el menú "Cuerda" en su barra de menú superior. ¿Ahora que? Hasta ahora podía usar solo "Mostrar documentación" (Cc d por defecto). Un intento de usar la ayuda del código (que es autocompletar, supongo?) Solo hace que Emacs pregunte sobre "Rope project root folder" (¿qué es eso?) En el minibúfer y luego no muestra nada.

Entonces, una vez que se instala ropemacs, ¿cuáles son los pasos para verlo en acción en algunos scripts de Python simples? Algo como "si tienes este script en tus emacs y colocas el cuadrado parpadeante aquí y presiona esto , eso sí" sería una respuesta.

(He estado pensando si debería preguntar esto o no durante un tiempo, porque nadie más parece tener el mismo problema)



Para el uso general de la biblioteca de cuerdas de la que depende el ropemacs, entonces mira:

Descripción de la cuerda

Describe con cierto detalle qué hace cada refactorización, como el método de extracción . Tenga en cuenta que, según el autor, este documento está un poco desactualizado. Sin embargo, debe proporcionar una introducción suficiente a las características de las cuerdas para comenzar.

Para ejecutar los comandos de ropemacs en Emacs, puede probar uno o más de los siguientes:

  1. Use la sección ''Keybinding'' en el enlace README docs de la respuesta de Freyley como guía para aprender las asignaciones.
  2. Si no puede recordar las combinaciones de teclas, ejecute Mx rope-<specific command name> y complete el nombre de refactorización relacionado. Por ejemplo, el método de extracción sería Mx rope-extract-method .
  3. Seleccione en Emacs <menu-bar> -> Rope . Por ejemplo, para extraer el método, seleccione <menu-bar> -> Rope -> Refactorings -> Extract Method . También le mostrará las combinaciones de teclas asociadas (por ejemplo, Cc rm )

Puede establecer la carpeta raíz con rope-open-project . Una vez que haya establecido el proyecto raíz, se .ropeproject un directorio .ropeproject .

Dentro de él, un archivo config.py tiene enlaces donde se puede ejecutar el código (python) una vez que se establece el proyecto. La función project_opened(project): es un buen lugar para ejecutar código. Normalmente activo el entorno virtual imp.load_source(''/path-to-env/activate_this.py'') , de modo que pueda obtener cobertura de otras libs en el entorno virtual.