Podświetlanie składni dla perla w Emacsie jest zepsute, czy istnieje poprawka?

Jestem programistą perla i nowym użytkownikiem emacsa. Jestem pod Windows, używając trybu cperl do edycji perla. Wersja Emacs to 24.2.1. Oto zrzut ekranu z przykładowym kodem:

http://breqwas.net/dropbox/perlsyn_emacs.png

Oczywisty błąd: podświetla tablice, skróty i nie cytowane wartości literału w listach stylów (a => „b”)wewnątrz komentarzyJeszcze jeden błąd: przypisuje pierwsze słowo w wyrażeniu regularnym jako tablicę z powodu niedomyślnego symbolu cudzysłowuNie jest to błąd, ale wygląda dziwnie: podświetla tablice i skróty za każdym razem, gdy są używane (nawet w komentarzach, huh), ale skalary są podświetlane tylko wtedy, gdy są zadeklarowaneNie jest to błąd, ale wygląda dziwnie: ta sama historia z funkcjami: podświetlona, ​​gdy jest zadeklarowana, a nie gdy jest wywoływanaNie jest to błąd, ale wygląda dziwnie: dlaczego „drukuj”, „mów” i „system” mają różne kolory?

Mogę iść dalej, ale mam nadzieję, że to całkiem dobrze wyjaśnia słowo „złamane”.

Potem nauczyłem się magicznej kombinacji klawiszy C-u C-x =, która pokazuje, między innymi, właściwości tekstu dla tekstu pod kursorem, mając nadzieję na stworzenie własnego schematu kolorowania. W tym momencie zaczęło to mieć jeszcze mniej sensu.

„drukuj” macperl-nonoverridable-face. „die” maczcionka-słowo-klucz-twarz. Tymczasem oba są funkcjami i mogą być (i często są) nadpisywane. „system” maczcionka typu blokada-twarz. Czemu? Deklaracje funkcji mająfont-lock-function-name-face - W porządku, ale także argumenty „użytkowania”. Czemu? Wywołania funkcji i skalary w ogóle nie mają właściwości twarzy i nie można ich wyróżnić. Czemu? Itd., Etc. Ponownie, mogłem iść dalej.

Czy istnieje sposób, aby to wszystko naprawić? Czy jest jakaś konfiguracja, w której mogę przemapować jednostki leksykalne na inne twarze czcionek, lub w inny sposób, aby podkreślenie składni było mniej szalone?

Aby uniknąć rozmowy „perl is unparsible”, oto zrzut ekranu edytora, z którego migruję, z tym samym kodem:http://breqwas.net/dropbox/perlsyn_pn.png. Wygląda znacznie bardziej rozsądnie.

Aktualizacja: Do tej pory (3 tygodnie po zadaniu tego pytania tutaj) nie znalazłem lekarstwa. Wiem, że wszyscy programiści Perla, którzy używają emacsa, ignorują te problemy. Wydaje się, że nie ma lepszych wyróżników perla dla emaców. Czytanie dokumentów w trybie cperl zawiera pewne wyjaśnienia (wybór twarzy dla różnych elementów wydaje się teraz mniej szalony), ale nie daje żadnych odpowiedzi. Napisałem wiadomość e-mail do opiekuna trybu cperl z tymi pytaniami i kilkoma innymi kopiącami, ale nie otrzymałem odpowiedzi.

Tak, masz rację: wydaje się, że społeczność emacsa nie była w stanie uczynić dobrej składni perla w ciągu 25 lat tym, że perl jest w pobliżu. To smutna historia.

questionAnswers(2)

yourAnswerToTheQuestion