Невозможно сопоставить функциональные клавиши со сдвигом в Vim [дубликат]

В соответствии с вашим кодом

<$php
     $val = $myService->getValue(); // makes an api and db call
     echo '<span id="value">'.$val.'</span>';
$>

Теперь вы можете получить значение с помощью DOM, используйте innerHTML идентификатора span, в этом случае вам не нужно делать вызов на сервер или ajax или любую другую вещь.

Ваша страница будет печатать его с помощью php, и ваш javascript получит значение с помощью DOM.

26
задан if __name__ is None 3 May 2013 в 14:19
поделиться

4 ответа

Я также хотел отобразить & lt; S-CR> и обнаружил, что я не мог заставить его работать в режиме CLI, пока я не добавил второе сопоставление, используя Ctrl + V, а затем & lt; Shift + Enter> для отображаемого нажатия клавиши. Тем не менее сопоставление & lt; S-CR> все еще необходимо для того, чтобы GVIm работал, как ожидалось. Это сделает ваш фрагмент .vimrc следующим образом:

nnoremap <CR> o<Esc>
nnoremap <S-CR> i<CR><Esc> " Needed for GVIm
nnoremap ^[0M i<CR><Esc>   " Needed for CLI VIm (Note: ^[0M was created with Ctrl+V Shift+Enter, don't type it directly)

Я тестировал это на Ubuntu 12.04. Happy Vimming!

11
ответ дан Coren 22 August 2018 в 03:51
поделиться
  • 1
    Спасибо за :nmap vs :noremap, очень полезно знать. Я, вероятно, привяжу его к чему-то еще. – if __name__ is None 3 May 2013 в 17:44
  • 2
    Я взял на себя смелость исправить «черные линии». :-) О, и +1 по неослабевающей рекомендации. Фактически, у меня есть собственная альтернатива в плагине LineJuggler , так как мне не нравится, как Тим собрал беспорядок несвязанной функциональности, просто сгруппированный с помощью общих префиксов сопоставления. – Ingo Karkat 3 May 2013 в 19:15
  • 3
    Благодарим вас за изменения и отметили ваш плагин LineJuggler. Мне нравится иметь множество плагинов на выбор. Ура! – Peter Rincker 3 May 2013 в 19:30
  • 4
    Привет, спасибо большое !. Я просто понял, почему я получаю это странное поведение (я установил nnoremap <cr> : = P). Кстати, как вы это нашли? – Pablo Olmos de Aguilera C. 5 December 2014 в 02:36

Мне удалось исправить мой ключ-код терминала для Shift + Enter, отправив код-код, который, по-видимому, ожидает Vim. В зависимости от вашего терминала, (добавление Ctrl + Enter в качестве бонуса!) [/ ​​G3]

iTerm2 , откройте Настройки Профили Клавиши [+] (Добавить)

  • Комбинация клавиш: (Хит Shift + Enter)
  • Действие: Отправить последовательность эвакуации
  • Esc + [[13;2u Повторите для Ctrl + Enter с последовательностью: [[13;5u

urxvt , добавьте в свой файл .Xresources:

URxvt.keysym.S-Return:     \033[13;2u
URxvt.keysym.C-Return:     \033[13;5u

Alacritty , под key_bindings, добавьте следующее к вашему ~/.config/alacritty/alacritty.yml:

- { key: Return,   mods: Shift,   chars: "\x1b[13;2u" }
- { key: Return,   mods: Control, chars: "\x1b[13;5u" }
5
ответ дан Rafi B. 22 August 2018 в 03:51
поделиться

Вы не можете сопоставить <S-CR> в CLI Vim, как бы вы ни старались, потому что Vim не может отличить <S-CR> от <CR>.

Вы должны найти другое отображение или палку с помощью GVim / MacVim.

изменить

Некоторые эмуляторы терминала, такие как iTerm.app или Terminal.app в Mac OS X, позволяют настраивать ярлыки для отправки определенных символов в оболочку. Если у вас есть такая возможность, возможно, стоит попробовать, но вы быстро привыкнете к определенному платформе gyzmo, который нельзя портировать так, ну ... Я действительно не рекомендую его.

5
ответ дан romainl 22 August 2018 в 03:51
поделиться
  • 1
    С iTerm можно, вероятно, отобразить любую сумасшедшую комбинацию, которую вы хотите, и использовать пользовательские escape-последовательности, если у вас заканчиваются стандартные. И с помощью, например, PuTTY вы можете скомпилировать на своих ключевых картах, как я сделал с F10 и Backspace. – Steven Lu 9 August 2013 в 22:49
Другие вопросы по тегам:

Похожие вопросы: