Введите справа налево

13

Есть ли команда для создания типа Vim справа налево? Если не мы, кто-нибудь знает об этом плагине?

MageProspero
источник
9
Вы говорите в контексте языка справа налево, такого как арабский язык фарси, или вы просто хотите переместить курсор влево при вводе нормальных символов западного алфавита? Пожалуйста, отредактируйте ваш вопрос, чтобы быть более конкретным.
Калеб

Ответы:

21

Конечно!

:set rightleft

Или просто rl. Однако при этом файл будет сохранен с символами в том порядке, в котором вы их напечатали. Если вы хотите, чтобы он сохранялся, его нужно перевернуть, введите :%!revперед сохранением.

Редактировать:

Если вы используете опцию revinsили ri, вставка выполняется в обратном направлении. Возможно, вы могли бы сопоставить это с комбинацией клавиш, но это зависит от вас.

Вот соответствующий раздел справки vim:

o  Typing backwards                 *ins-reverse*
----------------
In lieu of using full-fledged the 'rightleft' option, one can opt for
reverse insertion.  When the 'revins' (reverse insert) option is set,
inserting happens backwards.  This can be used to type right-to-left
text.  When inserting characters the cursor is not moved and the text
moves rightwards.  A <BS> deletes the character under the cursor.
CTRL-W and CTRL-U also work in the opposite direction.  <BS>, CTRL-W
and CTRL-U do not stop at the start of insert or end of line, no matter
how the 'backspace' option is set.

There is no reverse replace mode (yet).

If the 'showmode' option is set, "-- REVERSE INSERT --" will be shown
in the status line when reverse Insert mode is active.
amphetamachine
источник
Был не тот эффект, который я искал, но, безусловно, правильный ответ на вопрос, который я задал. Я на самом деле работаю в файле слева направо. Иногда мне нравится задавать свои утверждения задом наперед. Есть ли способ просто ввести несколько символов справа налево, не меняя поток документа?
MageProspero
Ты за обновление, которое я пропустил. Я признателен за это.
MageProspero