неделя, 18 януари 2026 г.

ChromeOS + VS Code (Crostini) - как да оправиш кирилица и Ctrl+Space, когато в ChromeOS работи, а във VS Code не

 Проблемът е прост: в ChromeOS Ctrl+Space сменя езика, но когато фокусът е във VS Code (който е Linux приложение в Crostini), комбинацията може да бъде “открадната” от VS Code или да не стигне до ChromeOS. Ето какво да провериш, подредено по вероятност да реши проблема.


1) Провери дали VS Code краде Ctrl+Space (най-често това е причината)

Как да провериш

  • VS Code -> File -> Preferences -> Keyboard Shortcuts

  • Натисни иконата Record Keys

  • Натисни Ctrl+Space

Ако видиш, че Ctrl+Space е вързан към една или повече команди (например suggest/autocomplete или terminal actions) - това е конфликтът.

Как да оправиш

  • В същия списък премахни всички keybindings за Ctrl+Space (Remove Keybinding).

  • Тествай: Ctrl+Space трябва да сменя езика от ChromeOS, докато пишеш във VS Code.


2) Рестарт на Crostini VM (termina) - чисти stuck състояния

Понякога дори след махане на keybinding-а, входният слой остава “зациклен”, докато VM не се рестартира.

Как

  • Отвори Crosh: Ctrl+Alt+T

  • Напиши:

vmc stop termina
  • Стартирай пак Linux (Terminal или VS Code).


3) Не пипай “Crostini IME support” ако ти чупи Linux

Някои устройства/версии на ChromeOS имат проблеми с този флаг и Crostini може да откаже да стартира. Ако след промяна на flags видиш грешки от типа RESTART_FAILED - връщай назад.


4) Ако Ctrl+Space пак не минава - смени autocomplete shortcut-а на VS Code на друго

Да не губиш удобството на Ctrl+Space за предложения, но да не пречи на езика:

  • Намери “Trigger Suggest” и му сложи друг клавиш, например:

    • Ctrl+Alt+Space

    • Alt+/

Така Ctrl+Space остава за ChromeOS езика.


5) Ако и това не помогне - приеми реалността: ChromeOS не винаги forward-ва системни shortcut-и към Linux apps

Това е ограничение на Crostini. Има workaround:

  • натискаш Launcher/Search (само да излезеш от Linux фокуса)

  • Ctrl+Space

  • връщаш се във VS Code

Работи винаги, но е по-досадно.


6) “Истинско” решение вътре в Linux (ако искаш независим toggle само за VS Code)

Ако искаш езикът да се сменя вътре в Linux, без ChromeOS да участва, ползваш input method в Linux (примерно fcitx5). Това е най-стабилното, ако често работиш в Linux приложения.

Минимално:

sudo apt update sudo apt install -y fcitx5

После го настройваш да има EN + BG и да сменя с Alt+Shift или друга комбинация. (Това вече е “Linux-first” подход.)


7) Не губи време със сомелиер хакове, ако не знаеш точно какво правиш

Има трикове със SOMMELIER_ACCELERATORS, но:

  • може да не работят на всички устройства

  • може да се чупят при update

  • лесно се влиза в странни VM състояния

Първо минаваш през стъпки 1 и 2 - те решават проблема в огромния процент случаи.


Най-кратката рецепта

  1. VS Code: махни всички Ctrl+Space keybindings

  2. vmc stop termina и рестарт на Linux

  3. Тест: Ctrl+Space сменя езика във VS Code

Това е.