2011-12-17 17 views
8

Mi sono imbattuto in un pacchetto interessante che esegue la navigazione veloce per carattere, ma non riesco a trovarlo più e non riesco a ricordare il suo nome. Apparentemente l'idea è venuta da Vim. C'è sicuramente una pagina di emacswiki per questo.Emacs navigazione veloce per carattere?

Fondamentalmente, si preme un tasto per accedere a una modalità secondaria, immettere un termine di ricerca, attenua la finestra e mette in sequenza in sequenza tutte le occorrenze del termine di ricerca nella finestra. Quindi puoi premere 'a' per andare al primo, 'b' per il secondo, ecc.

Qualsiasi aiuto?

Modifica: aggiungerò il tag vim, poiché il nome del pacchetto vim sarà sufficiente per trovarlo.

+0

Si noti che il 'Mx occurr' incorporato fornisce parti di tale funzionalità, così come lo standard' Cs' che evidenzia tutte le occorrenze del termine di ricerca dato e consente di scorrere le corrispondenze digitando 'Cs' di nuovo, o 'Cr' per il ciclismo all'indietro. Inoltre, prova 'C-u C-s' per le espressioni regolari nello stesso modo. – Thomas

+0

Si tratta di velocità. I miei occhi sono puntati su dove voglio che sia il punto, non voglio dover saltare le partite intermedie. Se una partita è chiusa, quindi iy-go-to-char salva i tratti chiave da isearch. –

+0

Devo anche aggiungere che ho reimplementato iy-go-to-char in cima a isearch per l'evidenziazione delle partite pigre , integrazione con acejump e vari altri miglioramenti . http://github.com/lewang/jump-char –

risposta

14

ace-jump-mode sembra essere quello che stai cercando.

L'ispirazione per AceJump proviene da un plug-in vim chiamato EasyMotion. EasyMotion offre un modo molto più semplice per utilizzare i movimenti in vim. Lo standard prende la spunta di wof {char} di evidenziando tutte le possibili scelte e consentendo di premere un tasto per passare direttamente alla destinazione. Così ho deciso di scrivere qualcosa simile per Emacs.

questo modo minore si dà la possibilità di:

  • salto per una parola
  • salto per tutti i caratteri in una parola
  • salto ad una linea

Il wiki la pagina è disponibile anche su Emacswiki.

+2

Puoi aggiungere qualche dettaglio in più a questa risposta, oltre un link? Anche se ti sei collegato a un sito web piuttosto stabile, questo ti aiuterà a ridurre le possibilità di link rot, e migliorerà la qualità di questa domanda per i futuri visitatori. – jwiscarson

+1

Per un'origine indipendente dal repository GitHub, ecco il link EmacsWiki: http://www.emacswiki.org/emacs/AceJump –

+0

Anche in IntelliJ IDEA, esiste un plug-in per Acejump. http://plugins.jetbrains.com/plugin/?idea_ce&pluginId=7163 – whunmr

1

Si chiama iy-go-to-char.el e probabilmente lo avete visto nel this EmacsRocks screencast. L'ho caricato anche a marmalade-repo.org un po 'di tempo fa, che potrebbe aiutarti se stai usando package.el.

+2

Ho e uso questo. Ma il pacchetto che ho visto funziona in modo diverso. Invece di tenere premuto un tasto per attraversare le partite, premi una lettera corrispondente alla partita che vuoi. Sembra che potrebbe essere più veloce. –

+0

Aha, mio ​​errore. Ho appena provato 'ace-jump-mode', come suggerito da @Daimrod, e penso che sia più lento di' iy-go-to-char': le corrispondenze sono "numerate" a partire dall'inizio del buffer, non dalla posizione del cursore , quindi ci sarà sempre un ritardo mentre leggi il buffer cercando il marcatore "a", "b" ecc. – sanityinc

+0

Ho aggiunto 'iy-goto-char' qualche tempo fa, ma non è ancora nel mio flusso di lavoro. Sembra che dovrebbe essere implementato sopra isearch per ottenere le altre chicche, come evidenziare gli obiettivi. –

2

Se il nome del pacchetto Vim sarà sufficiente: penso che ti stai riferendo a EasyMotion.

Problemi correlati