Używanie vima i kofeiny na tym samym komputerze

12

tło

Pracuję w laboratorium badawczym i codziennie korzystam z trzech różnych systemów operacyjnych. Na komputerach z systemem Windows i Mac używam Caffeine, aby uniemożliwić tym urządzeniom wygaszacz ekranu podczas pracy na innym komputerze (Linux nie ma tego problemu). To bardzo denerwujące, że muszę się ponownie zalogować, kiedy się przełączam.

Problem

Kiedy vim lub gvim są w trybie wstawiania, znak <F15>sporadycznie pojawia się w dokumencie. Śledziłem to z powrotem do kofeiny po kilku badaniach. Witryna Caffeine stwierdza, że ​​oprogramowanie działa od czasu do czasu symulując <F15>kluczowe wydarzenie prasowe:

Ze wszystkich dostępnych naciśnięć klawiszy, F15 jest prawdopodobnie najmniej inwazyjny (nigdy nie widziałem klawiatury komputera z tym klawiszem!) I najmniej prawdopodobne, aby zakłócał twoją pracę.

Więc kofeina jest oczywistym winowajcą. Jednak nadal wolę używać mojego ulubionego edytora tekstu na wszystkich trzech maszynach i nie zamierzam tego zmieniać, aby dostosować go do używania Kofeiny.

Pytanie

Czy jest coś, co mogę włożyć, vimrcaby vim zignorował <F15>kluczowe zdarzenia prasowe?


Edytuj dla jasności

Nie mogę wyłączyć limitu czasu wygaszacza ekranu; jest ustawiony przez dział IT ze względów bezpieczeństwa. Tak więc, aby obejść Kofeinę, aby zachować zgodność, muszę ręcznie zablokować swoje maszyny, gdy odsuwam się od biurka. To nie takie złe; ale odblokowanie ich co kilka minut jest.

Nie napisałem też kofeiny, więc nie wiem, dlaczego programista zdecydował się kliknąć <F15>raz na minutę. Prawdopodobnie zrobiłbym to inaczej, być może z lekkim ruchem myszy lub dotknięciem touchpada, jak sugerował @ Random832.

Jonathan Landrum
źródło
4
Dlaczego po prostu nie wyłączyć wygaszaczy ekranu / limitu czasu do zablokowania na tych komputerach? Byłoby to znacznie czystsze rozwiązanie niż skonfigurowanie vima do obejścia dziwnego zachowania Caffeine. Lub przynajmniej <Ctrl>spraw, aby Kofeina symulowała coś takiego zamiast <F15>.
Ruslan
1
@ Ruslan Chodzi o <F15>to, że bardzo rzadko coś znaczy i jest na ogół ignorowany; <Ctrl>Jednak jest zrozumiałe, a po wyzwoleniu w niewłaściwym momencie może spowodować niezamierzone zachowanie.
Kyle Strand
@ Ruslan system operacyjny jest skonfigurowany przez dział IT do blokowania po okresie bezczynności; Uruchamianie kofeiny pozwala mi to ominąć, o ile ręcznie blokuję maszyny podczas odejścia od biurka. Co więcej, nie mam kodu źródłowego dla kofeiny, więc nie mogę go zmienić.
Jonathan Landrum
Dlaczego po prostu nie symuluje zdarzenia, które pojawia się po dotknięciu touchpada, gdy stukanie nie jest włączone, ale nadal skupia się na oknie, nad którym się znajdujesz - ale nad bieżącym, więc nic nie robi?
Random832
@ Random832 to dobre pytanie; Nie napisałem programu, więc nie znam logiki wyboru <F15>innej niż treść zamieszczona na stronie.
Jonathan Landrum

Odpowiedzi:

20

Możesz zamapować klucz na <nop>(skrót „brak operacji”), aby „nic nie robić”.

To powinno sprawić, że Vim zignoruje <F15>klucz we wszystkich trybach:

:noremap <F15> <nop> 
:noremap! <F15> <nop>

To będzie prawdopodobnie rozwiązać problem, ale nie testowałem go w konkretnej sytuacji, ponieważ nie mam różne maszyny Windows / OSX z zainstalowanym Kofeina stojący :-)

Martin Tournoij
źródło
Wygląda na to, że to zrobiło! Dziękuję za pomoc
Jonathan Landrum
1
Należy zauważyć, że przypuszczalnie martwe klawisze <f15>są często używane podczas mapowania szybkich kodów klawiszy w terminalu Vim . Przykładem takiej wtyczki jest rsi.vim .
Peter Rincker,