commands - emacs ubuntu
Emacs: Ansi-term no tab-complete (2)
Recientemente instalé algunos paquetes para poder programar aplicaciones iOS desde emacs, pero estoy teniendo algunos problemas. Uno de los paquetes (estoy bastante seguro de que está autocompletado) está impidiendo que la finalización de pestañas funcione a plazo fijo. Cada vez que trato de completar la pestaña, aparece el error "Argumento de tipo incorrecto: caracterp, pestaña".
Aquí está mi archivo .emacs:
; Add packages
(add-to-list ''load-path "~/.emacs.d/elpa")
(add-to-list ''load-path "~/.emacs.d/packages")
(require ''package)
; Package sources
(add-to-list ''package-archives
''("marmalade" .
"http://marmalade-repo.org/packages/"))
(add-to-list ''package-archives
''("melpa" .
"http://melpa.milkbox.net/packages/") t)
(package-initialize)
; Check packages were loaded
(require ''linum-relative)
(require ''git-gutter-fringe)
(require ''yasnippet)
(require ''auto-complete-config)
; Enable packages
(elscreen-start)
; Config
; Color scheme
(load-file "~/.emacs.d/themes/color-theme-wombat.el")
; Enable snippets
(yas-global-mode 1)
; Copy/paste with the system clipboard
(setq x-select-enable-clipboard t)
; Enable relative line numbers
(global-linum-mode t)
; Enable git gutter
(global-git-gutter-mode t)
(setq git-gutter-fr:side ''left-fringe)
; Darker git gutter colors
(set-face-foreground ''git-gutter-fr:modified "#ccaa8f")
(set-face-foreground ''git-gutter-fr:added "#333366")
(set-face-foreground ''git-gutter-fr:deleted "#e5786d")
; C-x -> arrow changes windows
(global-set-key (kbd "C-x <up>") ''windmove-up)
(global-set-key (kbd "C-x <down>") ''windmove-down)
(global-set-key (kbd "C-x <right>") ''windmove-right)
(global-set-key (kbd "C-x <left>") ''windmove-left)
; Hide everything that isn''t text
(tool-bar-mode -1)
(scroll-bar-mode -1)
(menu-bar-mode -1)
; Move backups
(setq backup-directory-alist
`((".*" . ,"~/.emacsbackups")))
(setq auto-save-file-name-transforms
`((".*" ,"~/.emacstemps" t)))
(setq backup-by-copying t)
; Autocomplete settings
;when to use autocomplete (note yasnippits)
(setq-default ac-sources ''(ac-source-yasnippet ac-source-abbrev ac-source-dictionary ac-source-words-in-same-mode-buffers))
(global-auto-complete-mode t)
(add-to-list ''ac-modes ''objc-mode) ; For iOS dev
El método proporcionado por el usuario 1539179 funciona al desactivar el modo yasnippets mientras se usa el modo shell. Hay un pequeño problema que ya no puedo usar el modo yasnippet después de abrir ansi-term. Por ejemplo, si se abre un archivo de rebajas después del término ansi-term, el yasnippet no funcionará. Mi solución no es usar yasnippet globalmente, sino que se engancha al modo que queremos. Aquí está mi configuración de emacs para yasnippet que solo la vinculo al prog-mode
ess-mode
markdown-mode
, y la función de completar la pestaña en ansi-term.
(require ''yasnippet)
(yas-reload-all)
(add-hook ''prog-mode-hook ''yas-minor-mode)
(add-hook ''ess-mode-hook ''yas-minor-mode)
(add-hook ''markdown-mode-hook ''yas-minor-mode)
Está bien, lo arreglé. El problema fue con yasnippets, pero la sugerencia en el enlace no funcionó. Por alguna razón, establecer yas-modo menor en -1 no funcionó. Lo que tenía que hacer era configurar yas-no-activar a algo.
Solución sugerida que NO me funcionó:
(add-hook ''term-mode-hook (lambda()
(yas-minor-mode -1)))
¿Qué trabajo hizo para mí:
(add-hook ''term-mode-hook (lambda()
(setq yas-dont-activate t)))
Estoy corriendo emacs 23.4.1