2014-05-10 12 views
6

In vim ho questo nel mio Vimrc:Come ottenere semplici movimenti della finestra di navigazione in modalità malvagia?

" Easy window navigation 
map <C-h> <C-w>h 
map <C-j> <C-w>j 
map <C-k> <C-w>k 
map <C-l> <C-w>l 

Come faccio ad avere il semplice finestra di navigazione nel male-mode?

Inoltre, in vim "+ copierà al mio appunti di sistema? Questo non sembra funzionare in emacs.

$ emacs --version 

GNU Emacs 24.3.1 Copyright (C) 2013 Free Software Foundation, Inc. GNU Emacs viene fornito con ASSOLUTAMENTE nESSUNA GARANZIA. Si può ridistribuire copie di Emacs sotto i termini della GNU General Public License. Per ulteriori informazioni su questi argomenti, vedere il file chiamato COPYING.

$ cat .emacs 

;;;

;; Package manager and better repos 
(require 'package) 
(add-to-list 'package-archives 
       '("marmalade" . 
         "http://marmalade-repo.org/packages/")) 
(add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/")) 
(package-initialize) 

(setq backup-directory-alist `(("." . "~/.emacs.d/saves"))) 

;; Indents, tab as spaces 
(setq-default indent-tabs-mode nil) 
(setq default-tab-width 2) 

;; evil-mode 
(eval-after-load "evil" 
    '(progn 
    (define-key evil-normal-state-map (kbd "C-h") 'evil-window-left) 
    (define-key evil-normal-state-map (kbd "C-j") 'evil-window-down) 
    (define-key evil-normal-state-map (kbd "C-k") 'evil-window-up) 
    (define-key evil-normal-state-map (kbd "C-l") 'evil-window-right))) 
(require 'evil) 
(evil-mode 1) 
;(setcdr evil-insert-state-map nil) 
;(define-key evil-insert-state-map [escape] 'evil-normal-state) 

;; Fun stuff 
(require 'jabber-autoloads) 
(require 'jabber) 

risposta

9

È possibile aggiungere le combinazioni di tasti che si desidera utilizzare per evil-normal-state-map:

(eval-after-load "evil" 
    '(progn 
    (define-key evil-normal-state-map (kbd "C-h") 'evil-window-left) 
    (define-key evil-normal-state-map (kbd "C-j") 'evil-window-down) 
    (define-key evil-normal-state-map (kbd "C-k") 'evil-window-up) 
    (define-key evil-normal-state-map (kbd "C-l") 'evil-window-right))) 

Avvolgendo il codice in eval-after-load è necessario garantire che evil-normal-state-map è definito/disponibile quando si effettuano le chiamate a define-key.

Se si desidera rendere disponibili gli stessi binding in altri "stati" (come lo stato di "Movimento"), basta aggiungerli alle corrispondenti mappe chiave come mostrato sopra (nel caso dello stato "Movimento", la mappa corrispondente è chiamata evil-motion-state-map).


avere Emacs di utilizzare il sistema di appunti, provare a impostare x-select-enable-clipboard ad un valore non nil:

(setq x-select-enable-clipboard t) 

Ci sono anche comandi specifici per l'abbattimento e strattoni che utilizzano gli appunti. Dalla documentazione:

  • clipboard-kill-region:

    uccidere la regione, e salvarlo nella X appunti.

  • clipboard-kill-ring-save:

    Copia regione per uccidere l'anello, e salvare nel X appunti.

+0

M-x male-window-up opere, ma C-k, ecc non lo fanno. Ottieni un errore quando provo a tirare il testo ora dopo aver impostato x-select-enable-clipboard. –

+0

Poiché questa soluzione funziona sul mio sistema, non posso aiutarti se non fornisci ulteriori informazioni. Per favore aggiungi il contenuto del tuo file '.emacs' alla tua domanda. Hai un errore quando colpisci 'C-k'? Inoltre, qual è l'errore che ricevi quando provi a strappare del testo? I comandi alternativi che ho elencato ('clipboard-kill-region' /' clipboard-kill-ring-save') funzionano? – itsjeyd

+0

Salvato in alto. Ho provato a richiedere la modalità malvagia in diversi punti. Basta lanciare le freccette cieche piegate. –