2014-11-19 13 views
5

bookmark + pacchetto fornisce una funzione (bmkp-this-file-bmenu-list). Questo, suppongo, carica un file di segnalibri specifico per il file e filtra solo i segnalibri, che si riferiscono al file.segnalibro emacs +: come creare un file di segnalibri specifico per il file?

Domanda: come creare questo file di segnalibri specifico per un file specifico?

Il risultato dovrebbe essere un elenco filtrato di segnalibri, quando si utilizza il comando C-x p , (che è associato a (bmkp-this-file-bmenu-list) ).

Modifica: utilizzo solo un file di segnalibro predefinito ~/.emacs.d/bookmarks. Questo file contiene alcuni segnalibri per ~/.emacs file. Ora, durante la mia visita, per esempio, ~/.emacs di file, quindi eseguire C-x p ,, ottengo il seguente errore: bmkp-this-file-bmenu-list: No bookmarks for file ~/.emacs.

risposta

3

No, in realtà, comando bmkp-this-file-bmenu-list fa questo (dal doc string):

Show the bookmark list just for bookmarks for the current file. 
Set `bmkp-last-specific-file` to the current file name. 
If the current buffer is not visiting a file, prompt for the file name. 

mostra il display *Bookmark List*, elencando solo e tutti i segnalibri che hanno come target il file corrente.

Quindi, se si utilizza questo comando in un buffer di file, viene visualizzato, nel buffer *Bookmark List*, tutti i segnalibri per il file corrente e solo quei segnalibri.

Questo non ha nulla a che fare con l'utilizzo di un segnalibro diverso file.


Oltre a ciò che questo comando fa, non mi è chiaro quale comportamento desideri. Cosa intendi per esempio con "file di segnalibri specifici per un file specifico"?

+0

Io uso solo un file di segnalibro predefinito '~/.emacs.d/bookmarks'. Questo file ha alcuni segnalibri per il file '~/.emacs'. Ora, quando visito, dico, '~/.emacs' file, quindi eseguo' Cx p, ', ottengo il seguente errore:' bmkp-this-file-bmenu-list: Nessun segnalibro per file ~/.emacs. 'Ma chiaramente, ho alcuni segnalibri per questo file nel file dei segnalibri predefinito. Pertanto, 'bmkp-this-file-bmenu-list' probabilmente cercherà altrove i segnalibri, forse la mia ipotesi era, in qualche specifico file di segnalibri per il file' ~/.emacs' che sto visitando. – user3156459

+1

Quando uso 'C-x p ', quando visito un file, visualizzo un * * Segnalibro * che mostra i segnalibri che hanno come target quel file. E sembra che tu stia facendo la stessa cosa ma ricevendo un messaggio di errore. Verifica che il file del tuo segnalibro sia stato effettivamente letto (caricato) e che includa almeno un segnalibro nel file ('~/.emacs') che stai visitando. (Puoi controllare entrambi facendo 'C-x r l'.) Se è così, ti prego di inviarmi un'email di bug-report (' M-x bmkp-send-bug-report') con tutte le informazioni che puoi ricavare dal contesto. Grazie. – Drew

+0

Ciao Drew, grazie per aver corretto questo errore nell'ultima versione. Accetto la tua risposta, ma forse puoi aggiornare la tua risposta, quindi questa domanda qui ha una struttura significativa. – user3156459

2

È possibile creare un file di segnalibro diverso utilizzando il segnalibro + con M-x bookmark-load. Ti verrà richiesto un nome file. È possibile unire i segnalibri da file diversi o sostituire il set di segnalibri corrente interamente con questo set di file fornendo un argomento prefisso.

Salvataggio dei segnalibri bookmark-save scriverà tutti i segnalibri correnti sul valore corrente della variabile bmkp-current-bookmark-file oppure, se si fornisce un argomento di prefisso, è possibile scegliere un nome di file del segnalibro per salvarli.

Se si desidera un set di segnalibri in un file distinto, associato a file particolari, è possibile ottenere questo risultato eseguendo il caricamento dei segnalibri e salvando i segnalibri con i prefissi. Probabilmente potresti persino automatizzarlo con ganci per adattarlo ai tuoi contesti di editing, anche se mi aspetto che sarebbe un po 'difficile da realizzare.

Sembra che la tua domanda potrebbe essere radicata in una certa confusione sul comportamento dei segnalibri esistente e forse non hai nemmeno bisogno di mantenere separati i file dei segnalibri.

+0

Si prega di vedere il mio commento alla risposta di Drew qui sotto. Ciò fornisce un ulteriore background al mio problema. – user3156459

+0

sì - qual è il valore di 'bmkp-current-bookmark-file'? – cms

+0

'bmkp-current-bookmark-file è una variabile definita in' bookmark + -1.el '. Il suo valore è "/Users/xxx2/.emacs.d/bookmarks" ' – user3156459