Mercurial > vim
annotate runtime/doc/rileft.txt @ 31022:9a5e540510cf v9.0.0846
patch 9.0.0846: using assert_fails() may cause hit-enter prompt
Commit: https://github.com/vim/vim/commit/f220643c260d55d21a841a3c4032daadc41bc50b
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Nov 9 00:44:30 2022 +0000
patch 9.0.0846: using assert_fails() may cause hit-enter prompt
Problem: Using assert_fails() may cause hit-enter prompt.
Solution: Set no_wait_return. (closes https://github.com/vim/vim/issues/11522)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 09 Nov 2022 01:45:03 +0100 |
parents | 3295247d97a5 |
children | 4635e43f2c6f |
rev | line source |
---|---|
30875 | 1 *rileft.txt* For Vim version 9.0. Last change: 2022 Oct 12 |
7 | 2 |
3 | |
4 VIM REFERENCE MANUAL by Avner Lottem | |
5 updated by Nadim Shaikli | |
6 | |
7 | |
8 Right to Left display mode for Vim *rileft* | |
9 | |
10 | |
11 These functions were originally created by Avner Lottem: | |
12 E-mail: alottem@iil.intel.com | |
13 Phone: +972-4-8307322 | |
14 | |
15 *E26* | |
2570
71b56b4e7785
Make the references to features in the help more consistent. (Sylvain Hitier)
Bram Moolenaar <bram@vim.org>
parents:
2561
diff
changeset
|
16 {only available when compiled with the |+rightleft| feature} |
7 | 17 |
18 | |
19 Introduction | |
20 ------------ | |
21 Some languages such as Arabic, Farsi, Hebrew (among others) require the | |
22 ability to display their text from right-to-left. Files in those languages | |
23 are stored conventionally and the right-to-left requirement is only a | |
24 function of the display engine (per the Unicode specification). In | |
25 right-to-left oriented files the characters appear on the screen from | |
26 right to left. | |
27 | |
28 Bidirectionality (or bidi for short) is what Unicode offers as a full | |
29 solution to these languages. Bidi offers the user the ability to view | |
30 both right-to-left as well as left-to-right text properly at the same time | |
31 within the same window. Vim currently, due to simplicity, does not offer | |
32 bidi and is merely opting to present a functional means to display/enter/use | |
33 right-to-left languages. An older hybrid solution in which direction is | |
34 encoded for every character (or group of characters) are not supported either | |
35 as this kind of support is out of the scope of a simple addition to an | |
236 | 36 existing editor (and it's not sanctioned by Unicode either). |
7 | 37 |
30789
c11da68d1a32
patch 9.0.0729: the rightleft and arabic features are disabled
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
38 As many people working on the code do not use the right-to-left mode, this |
c11da68d1a32
patch 9.0.0729: the rightleft and arabic features are disabled
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
39 feature may not work in some situations. If you can describe what is wrong |
c11da68d1a32
patch 9.0.0729: the rightleft and arabic features are disabled
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
40 and how it would work when fixed, please create an issue on github, see |
c11da68d1a32
patch 9.0.0729: the rightleft and arabic features are disabled
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
41 |bug-reports|. |
c11da68d1a32
patch 9.0.0729: the rightleft and arabic features are disabled
Bram Moolenaar <Bram@vim.org>
parents:
29314
diff
changeset
|
42 |
7 | 43 |
44 Highlights | |
45 ---------- | |
46 o Editing left-to-right files as in the original Vim, no change. | |
47 | |
48 o Viewing and editing files in right-to-left windows. File orientation | |
49 is per window, so it is possible to view the same file in right-to-left | |
50 and left-to-right modes, simultaneously. (Useful for editing mixed files | |
51 in which both right-to-left and left-to-right text exist). | |
52 | |
53 o Compatibility to the original Vim. Almost all features work in | |
54 right-to-left mode (see Bugs below). | |
55 | |
56 o Backing from reverse insert mode to the correct place in the file | |
57 (if possible). | |
58 | |
59 o No special terminal with right-to-left capabilities is required. The | |
60 right-to-left changes are completely hardware independent. | |
61 | |
62 o Many languages use and require right-to-left support. These languages | |
63 can quite easily be supported given the inclusion of their required | |
64 keyboard mappings and some possible minor code change. Some of the | |
65 current supported languages include - |arabic.txt|, |farsi.txt| and | |
66 |hebrew.txt|. | |
67 | |
68 | |
69 Of Interest... | |
70 -------------- | |
71 | |
72 o Invocations | |
73 ----------- | |
74 + 'rightleft' ('rl') sets window orientation to right-to-left. | |
75 + 'delcombine' ('deco'), boolean, if editing UTF-8 encoded languages, | |
76 allows one to remove a composing character which gets superimposed | |
21499 | 77 on those that preceded them (some languages require this). |
7 | 78 + 'rightleftcmd' ('rlc') sets the command-line within certain modes |
79 (such as search) to be utilized in right-to-left orientation as well. | |
80 | |
81 o Typing backwards *ins-reverse* | |
82 ---------------- | |
25056 | 83 In lieu of using the full-fledged 'rightleft' option, one can opt for |
7 | 84 reverse insertion. When the 'revins' (reverse insert) option is set, |
85 inserting happens backwards. This can be used to type right-to-left | |
86 text. When inserting characters the cursor is not moved and the text | |
87 moves rightwards. A <BS> deletes the character under the cursor. | |
88 CTRL-W and CTRL-U also work in the opposite direction. <BS>, CTRL-W | |
89 and CTRL-U do not stop at the start of insert or end of line, no matter | |
90 how the 'backspace' option is set. | |
91 | |
92 There is no reverse replace mode (yet). | |
93 | |
94 If the 'showmode' option is set, "-- REVERSE INSERT --" will be shown | |
95 in the status line when reverse Insert mode is active. | |
96 | |
97 o Pasting when in a rightleft window | |
98 ---------------------------------- | |
99 When cutting text with the mouse and pasting it in a rightleft window | |
100 the text will be reversed, because the characters come from the cut buffer | |
101 from the left to the right, while inserted in the file from the right to | |
102 the left. In order to avoid it, toggle 'revins' before pasting. | |
103 | |
104 | |
105 Bugs | |
106 ---- | |
107 o Does not handle CTRL-A and CTRL-X commands (add and subtract) correctly | |
108 when in rightleft window. | |
109 | |
110 o Does not support reverse insert and rightleft modes on the command-line. | |
111 However, functionality of the editor is not reduced, because it is | |
112 possible to enter mappings, abbreviations and searches typed from the | |
113 left to the right on the command-line. | |
114 | |
115 o Somewhat slower in right-to-left mode, because right-to-left motion is | |
116 emulated inside Vim, not by the controlling terminal. | |
117 | |
118 o When both 'rightleft' and 'revins' are on: 'textwidth' does not work. | |
119 Lines do not wrap at all; you just get a single, long line. | |
120 | |
121 o There is no full bidirectionality (bidi) support. | |
122 | |
123 | |
14421 | 124 vim:tw=78:ts=8:noet:ft=help:norl: |