/usr/share/doc/vim/html/farsi.html is in vim-doc 2:8.0.1453-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 | <HTML>
<HEAD>
<META HTTP-EQUIV="Content-type" content="text/html; charset=ISO-8859-1">
<TITLE>Vim documentation: farsi</TITLE>
</HEAD>
<BODY BGCOLOR="#ffffff">
<H1>Vim documentation: farsi</H1>
<A NAME="top"></A>
<A HREF="index.html">main help file</A>
<HR>
<PRE>
*<A NAME="farsi.txt"></A><B>farsi.txt</B>* For Vim version 8.0. Last change: 2015 Aug 29
VIM REFERENCE MANUAL by Mortaza Ghassab Shiran
Right to Left and <A HREF="#Farsi">Farsi</A> Mapping for Vim *<A NAME="farsi"></A><B>farsi</B>* *<A NAME="Farsi"></A><B>Farsi</B>*
{Vi does not have any of these commands}
*<A NAME="E27"></A><B>E27</B>*
In order to use right-to-left and <A HREF="#Farsi">Farsi</A> <A HREF="map.html#mapping">mapping</A> support, <A HREF="motion.html#it">it</A> is necessary to
compile Vim with the |<A HREF="various.html#+farsi">+farsi</A>| feature.
These functions have been made by Mortaza G. Shiran <A HREF="mailto:shiran@jps.net"><shiran@jps.net></A>
Introduction
In right-to-left oriented files the characters appear on the screen from right
to left. This kind of file is most useful when <A HREF="editing.html#writing">writing</A> <A HREF="#Farsi">Farsi</A> documents,
composing faxes or <A HREF="editing.html#writing">writing</A> <A HREF="#Farsi">Farsi</A> memos.
The commands, prompts and help files are not in <A HREF="#Farsi">Farsi</A>, therefore the user
interface remains the standard <A HREF="intro.html#Vi">Vi</A> interface.
Highlights
<A HREF="insert.html#o">o</A> Editing left-to-right files <A HREF="motion.html#as">as</A> in the original Vim, no change.
<A HREF="insert.html#o">o</A> Viewing and editing files in right-to-left <A HREF="windows.html#windows">windows</A>. File orientation is
per <A HREF="windows.html#window">window</A>, so <A HREF="motion.html#it">it</A> is possible to <A HREF="starting.html#view">view</A> the same file in right-to-left and
left-to-right modes, simultaneously.
<A HREF="insert.html#o">o</A> Compatibility to the original Vim. Almost all features work in
right-to-left mode (see bugs below).
<A HREF="insert.html#o">o</A> Changing keyboard <A HREF="map.html#mapping">mapping</A> and reverse insert modes using a single
command.
<A HREF="insert.html#o">o</A> Backing from reverse insert mode to the correct place in the file
(if possible).
<A HREF="insert.html#o">o</A> While in <A HREF="#Farsi">Farsi</A> mode, numbers are entered from left to right. Upon entering
a none number character, that character will be inserted just into the
left of the last number.
<A HREF="insert.html#o">o</A> No special <A HREF="terminal.html#terminal">terminal</A> with right-to-left capabilities is required. The
right-to-left changes are completely hardware independent. Only
<A HREF="#Farsi">Farsi</A> font is necessary.
<A HREF="insert.html#o">o</A> <A HREF="#Farsi">Farsi</A> keymapping on the command line in reverse insert mode.
<A HREF="insert.html#o">o</A> Toggling between left-to-right and right-to-left via F8 function key.
<A HREF="insert.html#o">o</A> Toggling between <A HREF="#Farsi">Farsi</A> ISIR-3342 standard encoding and Vim <A HREF="#Farsi">Farsi</A> via F9
function key. Since this makes sense only for the text written in
right-to-left mode, this function is also supported only in right-to-left
mode.
<A HREF="#Farsi">Farsi</A> Fonts *<A NAME="farsi-fonts"></A><B>farsi-fonts</B>*
The following files are found in the subdirectories of the '$VIM/farsi/fonts'
directory:
+ far-a01.pcf X Windows fonts for <A HREF="os_unix.html#Unix">Unix</A> including Linux systems
+ far-a01.bf X Windows fonts for SunOS
+ far-a01.f16 a screen fonts for <A HREF="os_unix.html#Unix">Unix</A> including Linux systems
+ far-a01.fon a monospaced fonts for Windows NT/95/98
+ far-a01.com a screen fonts for <A HREF="os_dos.html#DOS">DOS</A>
Font Installation
<A HREF="insert.html#o">o</A> Installation of fonts for MS Window systems (NT/95/98)
From 'Control Panel' folder, start the 'Fonts' program. Then from 'file'
menu item select 'Install New Fonts ...'. Browse and select the
'far-a01.fon', then follow the installation guide.
NOTE: several people have reported that this does not work. The solution
is unknown.
<A HREF="insert.html#o">o</A> Installation of fonts for X Window systems (Unix/Linux)
Depending on your system, copy far-a01.pcf.Z or far-a01.pcf.gz into a
directory of your choice. Change to the directory containing the <A HREF="#Farsi">Farsi</A>
fonts and execute the following commands:
<A HREF="change.html#>">></A> mkfontdir
<A HREF="change.html#>">></A> xset +fp path_name_of_farsi_fonts_directory
<A HREF="insert.html#o">o</A> Installation of fonts for X Window systems (SunOS)
Copy far-a01.bf font into a directory of your choice.
Change to the directory containing the far-a01.fb fonts and
execute the following commands:
<A HREF="change.html#>">></A> fldfamily
<A HREF="change.html#>">></A> xset +fp path_name_of_fonts_directory
<A HREF="insert.html#o">o</A> Installation of ASCII screen fonts (Unix/Linux)
For Linux system, copy the far-a01.f16 fonts into /usr/lib/kbd/consolefonts
directory and execute the setfont program <A HREF="motion.html#as">as</A> "setfont far-a01.f16". For
other systems (e.g. SCO Unix), please refer to the fonts installation
section of your system administration manuals.
<A HREF="insert.html#o">o</A> Installation of ASCII screen fonts (DOS)
After system power on, prior to the first use of Vim, upload the <A HREF="#Farsi">Farsi</A>
fonts by executing the far-a01.com font uploading program.
Usage
Prior to starting Vim, the environment in which Vim can run in <A HREF="#Farsi">Farsi</A> mode,
must be set. In addition to installation of <A HREF="#Farsi">Farsi</A> fonts, following points
refer to some of the system environments, which you may need to set:
Key code <A HREF="map.html#mapping">mapping</A>, loading graphic card in ASCII screen mode, setting the IO
driver in 8 bit clean mode <A HREF="eval.html#...">...</A> .
<A HREF="insert.html#o">o</A> Setting the <A HREF="#Farsi">Farsi</A> fonts
+ For Vim <A HREF="gui.html#GUI">GUI</A> set the <A HREF="options.html#'guifont'">'guifont'</A> to far-a01. This is done by entering
':set guifont=far-a01' in the Vim <A HREF="windows.html#window">window</A>.
You can have <A HREF="options.html#'guifont'">'guifont'</A> set to far-a01 by Vim during the Vim <A HREF="starting.html#startup">startup</A>
by appending the ':set guifont=far-a01' into your <A HREF="starting.html#.vimrc">.vimrc</A> file
(in <A HREF="change.html#case">case</A> of NT/95/98 platforms <A HREF="starting.html#_vimrc">_vimrc</A>).
Under the X Window environment, you can also start Vim with the
'-fn far-a01' option.
+ For Vim within a xterm, start a xterm with the <A HREF="#Farsi">Farsi</A> fonts (e.g.
kterm <A HREF="gui_x11.html#-fn">-fn</A> far-a01). Then start Vim inside the kterm.
+ For Vim under <A HREF="os_dos.html#DOS">DOS</A>, prior to the first usage of Vim, upload the <A HREF="#Farsi">Farsi</A>
fonts by executing the far-a01.com fonts uploading program.
<A HREF="insert.html#o">o</A> <A HREF="#Farsi">Farsi</A> Keymapping Activation
To activate the <A HREF="#Farsi">Farsi</A> keymapping, set either <A HREF="options.html#'altkeymap'">'altkeymap'</A> or <A HREF="options.html#'fkmap'">'fkmap'</A>.
This is done by entering ':set akm' or ':set fk' in the Vim <A HREF="windows.html#window">window</A>.
You can have <A HREF="options.html#'altkeymap'">'altkeymap'</A> or <A HREF="options.html#'fkmap'">'fkmap'</A> set <A HREF="motion.html#as">as</A> default by appending ':set akm'
or ':set fk' in your <A HREF="starting.html#.vimrc">.vimrc</A> file or <A HREF="starting.html#_vimrc">_vimrc</A> in <A HREF="change.html#case">case</A> of NT/95/98 platforms.
To turn off the <A HREF="#Farsi">Farsi</A> keymapping <A HREF="motion.html#as">as</A> a default second language keymapping,
reset the <A HREF="options.html#'altkeymap'">'altkeymap'</A> by entering ':set noakm'.
<A HREF="insert.html#o">o</A> right-to-left <A HREF="#Farsi">Farsi</A> Mode
By default Vim starts in Left-to-right mode. Following are ways to change
the <A HREF="windows.html#window">window</A> orientation:
+ Start Vim with the <A HREF="starting.html#-F">-F</A> option (e.g. vim <A HREF="starting.html#-F">-F</A> <A HREF="eval.html#...">...</A>).
+ Use the F8 function key to toggle between left-to-right and right-to-left.
+ While in Left-to-right mode, enter 'set rl' in the command line ('rl' is
the abbreviation for rightleft).
+ Put the 'set rl' line in your '<A HREF="starting.html#.vimrc">.vimrc</A>' file to start Vim in
right-to-left mode permanently.
Encoding
The <A HREF="print.html#letter">letter</A> encoding used is the Vim extended ISIR-3342 standard with a built
in function to convert between Vim extended ISIR-3342 and ISIR-3342 standard.
For document portability reasons, the <A HREF="print.html#letter">letter</A> encoding is kept the same across
different platforms (i.e. UNIX's, NT/95/98, MS <A HREF="os_dos.html#DOS">DOS</A>, <A HREF="eval.html#...">...</A>).
<A HREF="insert.html#o">o</A> Keyboard
+ CTRL-_ in insert/replace modes toggles between Farsi(akm)/Latin
mode <A HREF="motion.html#as">as</A> follows:
+ CTRL-_ moves the cursor to the end of the typed text in edit mode.
+ CTRL-_ in command mode only toggles keyboard <A HREF="map.html#mapping">mapping</A> between Farsi(akm)/
Latin. The <A HREF="#Farsi">Farsi</A> text is then entered in reverse insert mode.
+ F8 - Toggles between left-to-right and right-to-left.
+ F9 - Toggles the encoding between ISIR-3342 standard and Vim extended
ISIR-3342 (supported only in right-to-left mode).
+ Keyboard <A HREF="map.html#mapping">mapping</A> is based on the Iranian ISIRI-2901 standard.
Following table shows the keyboard <A HREF="map.html#mapping">mapping</A> while Farsi(akm) mode set:
-------------------------------------
` 1 2 3 4 5 6 7 8 9 0 - =
� � � � � � � � � � � � �
-------------------------------------
~ ! @ # $ <A HREF="motion.html#%">%</A> ^ <A HREF="change.html#&">&</A> * ( ) _ +
~ � � � � � � � � � � � �
-------------------------------------
<A HREF="repeat.html#q">q</A> <A HREF="motion.html#w">w</A> <A HREF="motion.html#e">e</A> <A HREF="change.html#r">r</A> t <A HREF="index.html#z">z</A> <A HREF="undo.html#u">u</A> <A HREF="insert.html#i">i</A> <A HREF="insert.html#o">o</A> <A HREF="change.html#p">p</A> [ ]
� � � � � � � � � � � �
-------------------------------------
<A HREF="intro.html#Q">Q</A> <A HREF="motion.html#W">W</A> <A HREF="motion.html#E">E</A> <A HREF="change.html#R">R</A> <A HREF="motion.html#T">T</A> Z <A HREF="undo.html#U">U</A> I <A HREF="insert.html#O">O</A> <A HREF="change.html#P">P</A> { }
� � � � � � � � [ ] { }
-------------------------------------
a <A HREF="change.html#s">s</A> <A HREF="change.html#d">d</A> <A HREF="motion.html#f">f</A> <A HREF="index.html#g">g</A> <A HREF="motion.html#h">h</A> <A HREF="motion.html#j">j</A> <A HREF="motion.html#k">k</A> <A HREF="motion.html#l">l</A> ; '' \
� � á � � � � � � � � �
-------------------------------------
A <A HREF="change.html#S">S</A> <A HREF="change.html#D">D</A> <A HREF="motion.html#F">F</A> <A HREF="motion.html#G">G</A> <A HREF="motion.html#H">H</A> <A HREF="change.html#J">J</A> <A HREF="various.html#K">K</A> <A HREF="motion.html#L">L</A> : " |
� �� � � � � � � � � � �
-------------------------------------
<A HREF="change.html#<"><</A> <A HREF="change.html#y">y</A> <A HREF="change.html#x">x</A> <A HREF="change.html#c">c</A> <A HREF="visual.html#v">v</A> <A HREF="motion.html#b">b</A> <A HREF="pattern.html#n">n</A> <A HREF="motion.html#m">m</A> , . /
� � � � � � � � � � �
-------------------------------------
<A HREF="change.html#>">></A> <A HREF="change.html#Y">Y</A> X C <A HREF="visual.html#V">V</A> <A HREF="motion.html#B">B</A> N <A HREF="motion.html#M">M</A> <A HREF="change.html#<"><</A> <A HREF="change.html#>">></A> ?
� � � � � � � � � � �
-------------------------------------
Note:
� stands for <A HREF="#Farsi">Farsi</A> PSP (break without space)
� stands for <A HREF="#Farsi">Farsi</A> PCN (for HAMZE attribute)
Restrictions
<A HREF="insert.html#o">o</A> In insert/replace mode and fkmap (Farsi mode) set, <A HREF="scroll.html#CTRL-B">CTRL-B</A> is not
supported.
<A HREF="insert.html#o">o</A> If you change the character <A HREF="map.html#mapping">mapping</A> between Latin/Farsi, the <A HREF="undo.html#redo">redo</A> buffer
will be reset (emptied). That is, <A HREF="undo.html#redo">redo</A> is valid and will function (using
'<A HREF="repeat.html#.">.</A>') only within the mode you are in.
<A HREF="insert.html#o">o</A> While numbers are entered in <A HREF="#Farsi">Farsi</A> mode, the <A HREF="undo.html#redo">redo</A> buffer will be reset
(emptied). That is, you cannot <A HREF="undo.html#redo">redo</A> the last changes (using '<A HREF="repeat.html#.">.</A>') after
entering numbers.
<A HREF="insert.html#o">o</A> While in left-to-right mode and <A HREF="#Farsi">Farsi</A> mode set, <A HREF="undo.html#CTRL-R">CTRL-R</A> is not supported.
<A HREF="insert.html#o">o</A> While in right-to-left mode, the search on 'Latin' <A HREF="pattern.html#pattern">pattern</A> does not work,
except if you enter the Latin search <A HREF="pattern.html#pattern">pattern</A> in reverse.
<A HREF="insert.html#o">o</A> In command mode there is no support for entering numbers from left
to right and also for the sake of flexibility the keymapping logic is
restricted.
<A HREF="insert.html#o">o</A> Under the X Window environment, if you want to run Vim within a xterm
<A HREF="terminal.html#terminal">terminal</A> emulator and <A HREF="#Farsi">Farsi</A> mode set, you need to have an ANSI compatible
xterm <A HREF="terminal.html#terminal">terminal</A> emulator. This is because the <A HREF="print.html#letter">letter</A> codes above 128 decimal
have certain meanings in the standard xterm <A HREF="terminal.html#terminal">terminal</A> emulator.
Note: Under X Window environment, Vim <A HREF="gui.html#GUI">GUI</A> works fine in <A HREF="#Farsi">Farsi</A> mode.
This eliminates the need of any xterm <A HREF="terminal.html#terminal">terminal</A> emulator.
Bugs
While in insert/replace and <A HREF="#Farsi">Farsi</A> mode set, if you repeatedly change the
cursor position (via cursor <A HREF="intro.html#movement">movement</A>) and enter new text and then try to <A HREF="undo.html#undo">undo</A>
the last change, the <A HREF="undo.html#undo">undo</A> will lag one change behind. But <A HREF="motion.html#as">as</A> you continue to
<A HREF="undo.html#undo">undo</A>, you will reach the original line of text. You can also use <A HREF="undo.html#U">U</A> to <A HREF="undo.html#undo">undo</A> all
changes made in the current line.
For more information about the bugs refer to <A HREF="rileft.html#rileft.txt">rileft.txt</A>.
<A HREF="#top">top</A> - <A HREF="index.html">main help file</A>
</PRE>
</BODY>
</HTML>
|