2011-06-27 10 views
8

M-x < TAB> drukuje wszystkie zdefiniowane funkcje.Jak wydrukować wszystkie zdefiniowane zmienne w emacs?

Aby sprawdzić, czy zmienna jest zdefiniowana lub nie jest następującą wartością wyrażenia, (nazwa zmiennej "nazwa zmiennej") C-x C-e wyświetli t, jeśli nazwa zmiennej jest zdefiniowana jako nill.

Jak wydrukować wszystkie zdefiniowane zmienne w emacs.

+0

Dlaczego chcesz to zrobić? –

+1

Co masz na myśli przez "M-x drukuje wszystkie zdefiniowane funkcje"?'M-x' monituje o wprowadzenie nazwy interaktywnego polecenia, a następnie jego wykonanie. (Jeśli masz na myśli to, że możesz nacisnąć klawisz TAB, aby wyświetlić listę automatycznego uzupełniania ... cóż, to tylko funkcje interaktywne, a nie "wszystkie zdefiniowane funkcje".) – phils

+0

Opublikowałem jako Mx , który nie jest wyświetlany, edytowałem go do Mx < TAB \>, który działa –

Odpowiedz

8

Nie jest jasne, co dokładnie chcesz zrobić z pełną listą symboli, ponieważ sposób wyświetlania nazw funkcji jest nieco wyspecjalizowany.

Zakładając, że chcesz programowo uzyskać listę wszystkich zdefiniowanych symboli, oto jak auto-complete.el robi:

(loop for x being the symbols 
    if (boundp x) 
    collect (symbol-name x)) 

pamiętać, że można również wprowadzić M-x describe-var RET, a następnie naciśnij TAB uzyskać posortowaną listę zaawansowania wszystkie symbole.

+1

Tak więc, prawdopodobnie chcesz, jest 'Mx customize-group RET org RET'. – sanityinc

+0

Dziękuję za to, zdecydowanie pomaga mi w zrozumieniu przykładowych konfiguracji trybu org. –

4

Zakładam, że (apropos-variable "." t) wyświetli wszystkie zmienne zdefiniowane w tym momencie.

edytuj: Zakładam, że wydawało mi się to niesłuszne.

Co ciekawe, pokazuje to znacznie mniej wyników niż automatyczne uzupełnianie z describe-var.

Czy ktoś może rzucić na to światło?

np. Różnice między tymi przy winner-mode zostało włączone:

  • C-uM xapropos-variableRETwinner-RET
  • CHVwinner-TAB

edit 2: Ah ... wygląda na to, że osoby zainteresowane mogą zignorować dowolny symbol, który nie ma ciągu dokumentacji.

Jeśli to możliwe, sugeruję ponowne przybranie zaakceptowanej odpowiedzi.

2

Ekstrapolowanie (ciężko!) O to, o co się pyta, oto sposób na uzyskanie ładnie wydrukowanego alistu wszystkich zmiennych lokalnych z ich wartości. Jest to bardzo wygodne, aby dowiedzieć się, dlaczego na przykład tryb nie zachowuje się tak, jak się tego oczekuje.

Aby uzyskać tę listę, należy:

M-x pp-eval-expression RET (buffer-local-variables) RET 

Istotne fragmenty z tej listy można dodać niemal dosłownie do pliku .dir-locals.el do pracy z wieloma plikami.

Powiązane problemy