Od momentu, gdy zacząłem używać Flyspell, zawsze było bolesne w użyciu. Rzadko sprawdzam cały bufor pod kątem błędnie napisanych słów, zwykle piszę, a kiedy widzę podkreślone słowo, chcę je natychmiast poprawić i kontynuować pisanie. Jest tak po prostu dlatego, że boję się zapomnieć o poprawieniu tego słowa później i ponieważ kiedy zaczynam kompleksowe sprawdzanie bufora, iSpell podaje zbyt wiele fałszywych trafień. Tak więc prawie zawsze poprawiam słowa tak szybko, jak to możliwe podczas pisania.
Oto wbudowane funkcje, o których wiem i powody, dla których nie są one wydajne (dla mnie):
flyspell-correct-word
- Jest to związane z kliknięciem myszy. Zapomnij, nie zamierzam używać myszy.flyspell-correct-word-before-point
- Używałem tego przez jakiś czas. Ma dwie wady:Domyślnie pokazuje menu GUI, które jest trudne w obsłudze bez myszy i jest naprawdę kłopotliwe, gdy masz listę poprawek zawierających więcej niż 10 elementów.
To nie działa na słowo na długo przed punktem. Piszę szybko, a kiedy zauważam błędnie napisane słowo, zwykle mam jedno lub dwa słowa między błędnie napisanym słowem a punktem. Muszę przesunąć punkt, poprawić słowo, wrócić. O.
flyspell-auto-correct-word
- Patrz punkt 2 ↑ plus nie działa dobrze, gdy masz długą listę ukończeń (z powodu jazdy rowerem).
P: Jak mogę efektywnie korzystać z Flyspell, korzystając z klawiatury, mając możliwość wyboru z listy ukończeń bez jazdy na rowerze oraz z możliwością korygowania jeszcze mniej lub bardziej odległych słów?
Dopuszczalne odpowiedzi obejmują pakiety, które pomagają nawigować do poprzedniego błędnie napisanego słowa, poprawić go i wrócić lub coś w tym rodzaju, a także małe fragmenty, prawdopodobnie z własnego pliku konfiguracyjnego, ponieważ uważam, że inni ludzie wymyślili sposoby efektywnej interakcji z Flyspell.
ttwo
przykład, chociaż w moim menu widzę 26 proponowanych poprawek!ttwo
automatycznie poprawionetwo
przy pierwszej próbie. Ale wiem o co ci chodzi. Z praktycznego doświadczenia, w około 90% przypadków, pierwsza próba dostaje właściwe słowo, prawdopodobnie pozostałe 9% wymaga 2-3 prób, a ten ostatni 1% ma miejsce, gdy flyspell po prostu tego nie rozumie i muszę iść przez ponad 5 prób (lub ręcznie to naprawię).C-;
domyślnie powiązane i można dostosować,flyspell-auto-correct-binding
aby powiązać go z innym kluczem na mapie Flyspell. (Lub po prostu związać to normalnie, oczywiście.)Jestem pewien, że inni ludzie wymyślą różne rozwiązania, które będą przydatne dla przyszłych czytelników. Oto, jak obecnie sobie z tym poradzić.
Myślę, że
flyspell-correct-word-before-point
jest to dobre miejsce na rozpoczęcie, ponieważ przynajmniej można je wywołać za pomocą naciśnięcia klawisza i wyświetla menu możliwych korekt. Aby naprawić menu, napisałem pakiet Ace Popup Menu, który używa Avy jako backendu. Zastępuje to wyskakujące menu GUIflyspell-correct-word-before-point
(funkcja nazywa sięx-popup-menu
) wyskakującym menu tekstowym przedstawiającym elementy menu oznaczone etykietą: jedno lub dwa naciśnięcia klawiszy i gotowe.Aby rozwiązać drugi problem (niemożność poprawienia słów „na odległość”) napisałem tego pomocnika:
To wydaje się działać.
źródło
Dzięki Helm-Flyspell możesz efektywnie wybierać z listy poprawek. Używam następującego kodu, aby przejść do błędów i poprawić je za pomocą tego, zapisuje pozycję punktu do
mark-ring
, abyś mógł wrócić do pozycji, w której wcześniej zacząłeś lub poprawiałeś słowa:źródło