Vim - Чи включений Capslock?


11

Під час роботи з Vim я майже ніколи не дивлюся на свою клавіатуру (як це має бути!), І це чудово, але іноді, несвідомо, я натискаю клавішу CapsLock і змушує кричати на екран.

Бо, знаєте, jце не так, як Jу звичайному режимі (і так далі).

Тож замість цього чи картографуючи, CapsLockщоб сказати, що Ctrlя хочу відобразити повідомлення про помилку, яке попередить мене у звичайному режимі, якщо це так.

Чи є спосіб Vim сказати, чи CapsLockввімкнули ви ?

Примітка. Я віддаю перевагу рішення VimScript / VimL для портативності і тому, що я хочу, щоб Vim повідомляв про мене, а не залежав від фактичної системи.


3
Позбавтеся від блокування шапок, вам це не потрібно. Якщо вам коли-небудь знадобиться набрати всі шапки більше 60 секунд, скиньте тягар у вашому ключі.
sidyll

1
Я конкретно кажу, що я не хочу цього робити, тому немає сенсу пропонувати, що я повинен позбутися цього.

2
Я вважаю, що ключ CapsLock настільки легко потрапити, що я перевстановив його в Escape. Працює для мене. :)
dash-tom-bang

1
Поряд з перетворенням мого шапки блокування в Escape, це також управління. Так, це як втеча і контроль в той же час ! У Linux це можна зробити через xmodmap -e "add Control = Escape". Сподіваюся, вам сподобається. :-)
evaryont

CapSee виконує роботу в ОС X. Не відповідь, яку ви шукали, але це, як правило, правильна відповідь більшості користувачів Apple.
Earlio

Відповіді:


4

Ви можете використовувати такий сценарій:

; INDICATE WHEN THE CAPS LOCK IS ON WITH A SCREEN MESSAGE
Gui, +AlwaysOnTop +ToolWindow -SysMenu -Caption
Gui, Font, caf001e s30 bold ,Verdana ;changes font color, size and font
Gui, Color, af001d;changes background color
Gui +LastFound  ; Make the GUI window the last found window for use by the line below.
WinSet, TransColor,af001d
Gui, Add, Text, ,CAPS LOCK ON
; TOGGLE THE GUI ON AND OFF
~capslock::
   if(0==GetKeyState("capslock","T")){
      Gui,  hide
   }else{
      if(guilocation>0){
         guilocation=0
         Gui, Show,x600 y800 NoActivate
      }else{
         guilocation=1
         Gui, Show,x600 y400 NoActivate
      }
   }
return 

Взято звідси . Тепер Vim відображатиме функцію CAPS LOCK ON, коли увімкнено блокування шапок

Оновлення: І це сценарій для AHK (Автоматична мова швидкої клавіші). Відповідно до цієї розмови неможливо створити поведінку, яку ви описуєте, використовуючи лише vim.


2
яка мова це? Я вважаю за краще мати VimScript / VimL, ​​щоб змусити Віму подбати про це (оновлення мого питання)

1
Це для сценаріїв швидкої клавіші AHK (автоматизація автоматичних клавіш), тому для вас немає користі. Намагався шукати з Google, і не зміг знайти нічого конкретного для вашої проблеми: /

2
Ідея хороша, але як я можу це поставити, наприклад, у свій .vimrc? Як я можу це використовувати з vim? = |
Едуардо Лусіо
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.