parent
2d74557da6
commit
e8b02806af
@ -0,0 +1,154 @@
|
||||
README_dos.txt for version 7.4 of Vim: Vi IMproved.
|
||||
|
||||
This file explains the installation of Vim on MS-DOS and MS-Windows systems.
|
||||
See "README.txt" for general information about Vim.
|
||||
|
||||
There are two ways to install Vim:
|
||||
A. Use the self-installing .exe file.
|
||||
B. Unpack .zip files and run the install.exe program.
|
||||
|
||||
|
||||
A. Using the self-installing .exe
|
||||
---------------------------------
|
||||
|
||||
This is mostly self-explaining. Just follow the prompts and make the
|
||||
selections. A few things to watch out for:
|
||||
|
||||
- When an existing installation is detected, you are offered to first remove
|
||||
this. The uninstall program is then started while the install program waits
|
||||
for it to complete. Sometimes the windows overlap each other, which can be
|
||||
confusing. Be sure the complete the uninstalling before continuing the
|
||||
installation. Watch the taskbar for uninstall windows.
|
||||
|
||||
- When selecting a directory to install Vim, use the same place where other
|
||||
versions are located. This makes it easier to find your _vimrc file. For
|
||||
example "C:\Program Files\vim" or "D:\vim". A name ending in "vim" is
|
||||
preferred.
|
||||
|
||||
- After selecting the directory where to install Vim, clicking on "Next" will
|
||||
start the installation.
|
||||
|
||||
|
||||
B. Using .zip files
|
||||
-------------------
|
||||
|
||||
These are the normal steps to install Vim from the .zip archives:
|
||||
|
||||
1. Go to the directory where you want to put the Vim files. Examples:
|
||||
cd C:\
|
||||
cd D:\editors
|
||||
If you already have a "vim" directory, go to the directory in which it is
|
||||
located. Check the $VIM setting to see where it points to:
|
||||
set VIM
|
||||
For example, if you have
|
||||
C:\vim\vim54
|
||||
do
|
||||
cd C:\
|
||||
Binary and runtime Vim archives are normally unpacked in the same location,
|
||||
on top of each other.
|
||||
|
||||
2. Unpack the zip archives. This will create a new directory "vim\vim74",
|
||||
in which all the distributed Vim files are placed. Since the directory
|
||||
name includes the version number, it is unlikely that you overwrite
|
||||
existing files.
|
||||
Examples:
|
||||
pkunzip -d gvim74.zip
|
||||
unzip vim74w32.zip
|
||||
|
||||
You need to unpack the runtime archive and at least one of the binary
|
||||
archives. When using more than one binary version, be careful not to
|
||||
overwrite one version with the other, the names of the executables
|
||||
"vim.exe" and "gvim.exe" are the same.
|
||||
|
||||
After you unpacked the files, you can still move the whole directory tree
|
||||
to another location. That is where they will stay, the install program
|
||||
won't move or copy the runtime files.
|
||||
|
||||
Only for the 32 bit DOS version on MS-DOS without DPMI support (trying to
|
||||
run install.exe will produce an error message): Unpack the CSDPMI4B.ZIP
|
||||
archive and follow the instructions in the documentation.
|
||||
|
||||
3. Change to the new directory:
|
||||
cd vim\vim74
|
||||
Run the "install.exe" program. It will ask you a number of questions about
|
||||
how you would like to have your Vim setup. Among these are:
|
||||
- You can tell it to write a "_vimrc" file with your preferences in the
|
||||
parent directory.
|
||||
- It can also install an "Edit with Vim" entry in the Windows Explorer
|
||||
popup menu.
|
||||
- You can have it create batch files, so that you can run Vim from the
|
||||
console or in a shell. You can select one of the directories in your
|
||||
$PATH. If you skip this, you can add Vim to the search path manually:
|
||||
The simplest is to add a line to your autoexec.bat. Examples:
|
||||
set path=%path%;C:\vim\vim74
|
||||
set path=%path%;D:\editors\vim\vim74
|
||||
- Create entries for Vim on the desktop and in the Start menu.
|
||||
|
||||
That's it!
|
||||
|
||||
|
||||
Remarks:
|
||||
|
||||
- If Vim can't find the runtime files, ":help" won't work and the GUI version
|
||||
won't show a menubar. Then you need to set the $VIM environment variable to
|
||||
point to the top directory of your Vim files. Example:
|
||||
set VIM=C:\editors\vim
|
||||
Vim version 7.4 will look for your vimrc file in $VIM, and for the runtime
|
||||
files in $VIM/vim74. See ":help $VIM" for more information.
|
||||
|
||||
- To avoid confusion between distributed files of different versions and your
|
||||
own modified vim scripts, it is recommended to use this directory layout:
|
||||
("C:\vim" is used here as the root, replace it with the path you use)
|
||||
Your own files:
|
||||
C:\vim\_vimrc Your personal vimrc.
|
||||
C:\vim\_viminfo Dynamic info for 'viminfo'.
|
||||
C:\vim\vimfiles\ftplugin\*.vim Filetype plugins
|
||||
C:\vim\... Other files you made.
|
||||
Distributed files:
|
||||
C:\vim\vim74\vim.exe The Vim version 7.4 executable.
|
||||
C:\vim\vim74\doc\*.txt The version 7.4 documentation files.
|
||||
C:\vim\vim74\bugreport.vim A Vim version 7.4 script.
|
||||
C:\vim\vim74\... Other version 7.4 distributed files.
|
||||
In this case the $VIM environment variable would be set like this:
|
||||
set VIM=C:\vim
|
||||
Then $VIMRUNTIME will automatically be set to "$VIM\vim74". Don't add
|
||||
"vim74" to $VIM, that won't work.
|
||||
|
||||
- You can put your Vim executable anywhere else. If the executable is not
|
||||
with the other Vim files, you should set $VIM. The simplest is to add a line
|
||||
to your autoexec.bat. Examples:
|
||||
set VIM=c:\vim
|
||||
set VIM=d:\editors\vim
|
||||
|
||||
- If you have told the "install.exe" program to add the "Edit with Vim" menu
|
||||
entry, you can remove it by running the "uninstal.exe". See
|
||||
":help win32-popup-menu".
|
||||
|
||||
- In Windows 95/98/NT you can create a shortcut to Vim. This works for all
|
||||
DOS and Win32 console versions. For the console version this gives you the
|
||||
opportunity to set defaults for the Console where Vim runs in.
|
||||
|
||||
1. On the desktop, click right to get a menu. Select New/Shortcut.
|
||||
2. In the dialog, enter Command line: "C:\command.com". Click "Next".
|
||||
3. Enter any name. Click "Finish".
|
||||
The new shortcut will appear on the desktop.
|
||||
4. With the mouse pointer on the new shortcut, click right to get a menu.
|
||||
Select Properties.
|
||||
5. In the Program tab, change the "Cmdline" to add "/c" and the name of the
|
||||
Vim executable. Examples:
|
||||
C:\command.com /c C:\vim\vim74\vim.exe
|
||||
C:\command.com /c D:\editors\vim\vim74\vim.exe
|
||||
6. Select the font, window size, etc. that you like. If this isn't
|
||||
possible, select "Advanced" in the Program tab, and deselect "MS-DOS
|
||||
mode".
|
||||
7. Click OK.
|
||||
|
||||
For gvim, you can use a normal shortcut on the desktop, and set the size of
|
||||
the Window in your $VIM/_gvimrc:
|
||||
set lines=30 columns=90
|
||||
|
||||
|
||||
For further information, type one of these inside Vim:
|
||||
:help dos
|
||||
:help msdos
|
||||
:help win32
|
@ -0,0 +1,83 @@
|
||||
/* vim:set ts=4 sw=4:
|
||||
* this program makes a tags file for vim_ref.txt
|
||||
*
|
||||
* Usage: doctags vim_ref.txt vim_win.txt ... >tags
|
||||
*
|
||||
* A tag in this context is an identifier between stars, e.g. *c_files*
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#define LINELEN 200
|
||||
|
||||
int
|
||||
main(argc, argv)
|
||||
int argc;
|
||||
char **argv;
|
||||
{
|
||||
char line[LINELEN];
|
||||
char *p1, *p2;
|
||||
char *p;
|
||||
FILE *fd;
|
||||
|
||||
if (argc <= 1)
|
||||
{
|
||||
fprintf(stderr, "Usage: doctags docfile ... >tags\n");
|
||||
exit(1);
|
||||
}
|
||||
printf("help-tags\ttags\t1\n");
|
||||
while (--argc > 0)
|
||||
{
|
||||
++argv;
|
||||
fd = fopen(argv[0], "r");
|
||||
if (fd == NULL)
|
||||
{
|
||||
fprintf(stderr, "Unable to open %s for reading\n", argv[0]);
|
||||
continue;
|
||||
}
|
||||
while (fgets(line, LINELEN, fd) != NULL)
|
||||
{
|
||||
p1 = strchr(line, '*'); /* find first '*' */
|
||||
while (p1 != NULL)
|
||||
{
|
||||
p2 = strchr(p1 + 1, '*'); /* find second '*' */
|
||||
if (p2 != NULL && p2 > p1 + 1) /* skip "*" and "**" */
|
||||
{
|
||||
for (p = p1 + 1; p < p2; ++p)
|
||||
if (*p == ' ' || *p == '\t' || *p == '|')
|
||||
break;
|
||||
/*
|
||||
* Only accept a *tag* when it consists of valid
|
||||
* characters, there is white space before it and is
|
||||
* followed by a white character or end-of-line.
|
||||
*/
|
||||
if (p == p2
|
||||
&& (p1 == line || p1[-1] == ' ' || p1[-1] == '\t')
|
||||
&& (strchr(" \t\n\r", p[1]) != NULL
|
||||
|| p[1] == '\0'))
|
||||
{
|
||||
*p2 = '\0';
|
||||
++p1;
|
||||
printf("%s\t%s\t/*", p1, argv[0]);
|
||||
while (*p1)
|
||||
{
|
||||
/* insert backslash before '\\' and '/' */
|
||||
if (*p1 == '\\' || *p1 == '/')
|
||||
putchar('\\');
|
||||
putchar(*p1);
|
||||
++p1;
|
||||
}
|
||||
printf("*\n");
|
||||
p2 = strchr(p2 + 1, '*'); /* find next '*' */
|
||||
}
|
||||
}
|
||||
p1 = p2;
|
||||
}
|
||||
}
|
||||
fclose(fd);
|
||||
}
|
||||
return 0;
|
||||
}
|
@ -0,0 +1,49 @@
|
||||
.TH EVIM 1 "2002 February 16"
|
||||
.SH NAME
|
||||
evim \- easy Vim, edit a file with Vim and setup for modeless editing
|
||||
.SH SYNOPSIS
|
||||
.br
|
||||
.B evim
|
||||
[options] [file ..]
|
||||
.br
|
||||
.B eview
|
||||
.SH DESCRIPTION
|
||||
.B eVim
|
||||
starts
|
||||
.B Vim
|
||||
and sets options to make it behave like a modeless editor.
|
||||
This is still Vim but used as a point-and-click editor.
|
||||
This feels a lot like using Notepad on MS-Windows.
|
||||
.B eVim
|
||||
will always run in the GUI, to enable the use of menus and toolbar.
|
||||
.PP
|
||||
Only to be used for people who really can't work with Vim in the normal way.
|
||||
Editing will be much less efficient.
|
||||
.PP
|
||||
.B eview
|
||||
is the same, but starts in read-only mode. It works just like evim \-R.
|
||||
.PP
|
||||
See vim(1) for details about Vim, options, etc.
|
||||
.PP
|
||||
The 'insertmode' option is set to be able to type text directly.
|
||||
.br
|
||||
Mappings are setup to make Copy and Paste work with the MS-Windows keys.
|
||||
CTRL-X cuts text, CTRL-C copies text and CTRL-V pastes text.
|
||||
Use CTRL-Q to obtain the original meaning of CTRL-V.
|
||||
.SH OPTIONS
|
||||
See vim(1).
|
||||
.SH FILES
|
||||
.TP 15
|
||||
/usr/local/lib/vim/evim.vim
|
||||
The script loaded to initialize eVim.
|
||||
.SH AKA
|
||||
Also Known As "Vim for gumbies".
|
||||
When using evim you are expected to take a handkerchief,
|
||||
make a knot in each corner and wear it on your head.
|
||||
.SH SEE ALSO
|
||||
vim(1)
|
||||
.SH AUTHOR
|
||||
Most of
|
||||
.B Vim
|
||||
was made by Bram Moolenaar, with a lot of help from others.
|
||||
See the Help/Credits menu.
|
@ -0,0 +1,787 @@
|
||||
BEGIN {
|
||||
# some initialization variables
|
||||
asciiart="no";
|
||||
wasset="no";
|
||||
lineset=0;
|
||||
sample="no";
|
||||
while ( getline ti <"tags.ref" > 0 ) {
|
||||
nf=split(ti,tag," ");
|
||||
tagkey[tag[1]]="yes";tagref[tag[1]]=tag[2];
|
||||
}
|
||||
skip_word["and"]="yes";
|
||||
skip_word["backspace"]="yes";
|
||||
skip_word["beep"]="yes";
|
||||
skip_word["bugs"]="yes";
|
||||
skip_word["da"]="yes";
|
||||
skip_word["end"]="yes";
|
||||
skip_word["ftp"]="yes";
|
||||
skip_word["go"]="yes";
|
||||
skip_word["help"]="yes";
|
||||
skip_word["home"]="yes";
|
||||
skip_word["news"]="yes";
|
||||
skip_word["index"]="yes";
|
||||
skip_word["insert"]="yes";
|
||||
skip_word["into"]="yes";
|
||||
skip_word["put"]="yes";
|
||||
skip_word["reference"]="yes";
|
||||
skip_word["section"]="yes";
|
||||
skip_word["space"]="yes";
|
||||
skip_word["starting"]="yes";
|
||||
skip_word["toggle"]="yes";
|
||||
skip_word["various"]="yes";
|
||||
skip_word["version"]="yes";
|
||||
skip_word["is"]="yes";
|
||||
}
|
||||
#
|
||||
# protect special chars
|
||||
#
|
||||
/[><&á]/ {gsub(/&/,"\\&");gsub(/>/,"\\>");gsub(/</,"\\<");gsub("á","\\á");}
|
||||
#
|
||||
# end of sample lines by non-blank in first column
|
||||
#
|
||||
sample == "yes" && substr($0,1,4) == "<" { sample = "no"; gsub(/^</, " "); }
|
||||
sample == "yes" && substr($0,1,1) != " " && substr($0,1,1) != " " && length($0) > 0 { sample = "no" }
|
||||
#
|
||||
# sample lines printed bold unless empty...
|
||||
#
|
||||
sample == "yes" && $0 =="" { print ""; next; }
|
||||
sample == "yes" && $0 !="" { print "<B>" $0 "</B>"; next; }
|
||||
#
|
||||
# start of sample lines in next line
|
||||
#
|
||||
$0 == ">" { sample = "yes"; print ""; next; }
|
||||
substr($0,length($0)-4,5) == " >" { sample = "yes"; gsub(/ >$/, ""); }
|
||||
#
|
||||
# header lines printed bold, colored
|
||||
#
|
||||
substr($0,length($0),1) == "~" { print "<B><FONT COLOR=\"PURPLE\">" substr($0,1,length($0)-1) "</FONT></B>"; next; }
|
||||
#
|
||||
#ad hoc code
|
||||
#
|
||||
/^"\|\& / {gsub(/\|/,"\\|"); }
|
||||
/ = b / {gsub(/ b /," \\b "); }
|
||||
#
|
||||
# one letter tag
|
||||
#
|
||||
/[ ]\*.\*[ ]/ {gsub(/\*/,"ZWWZ"); }
|
||||
#
|
||||
# isolated "*"
|
||||
#
|
||||
/[ ]\*[ ]/ {gsub(/ \* /," \\* ");
|
||||
gsub(/ \* /," \\* ");
|
||||
gsub(/ \* /," \\* ");
|
||||
gsub(/ \* /," \\* "); }
|
||||
#
|
||||
# tag start
|
||||
#
|
||||
/[ ]\*[^ ]/ {gsub(/ \*/," ZWWZ");gsub(/ \*/," ZWWZ");}
|
||||
/^\*[^ ]/ {gsub(/^\*/,"ZWWZ");}
|
||||
#
|
||||
# tag end
|
||||
#
|
||||
/[^ ]\*$/ {gsub(/\*$/,"ZWWZ");}
|
||||
/[^ \/ ]\*[ ]/ {gsub(/\*/,"ZWWZ");}
|
||||
#
|
||||
# isolated "|"
|
||||
#
|
||||
/[ ]\|[ ]/ {gsub(/ \| /," \\| ");
|
||||
gsub(/ \| /," \\| ");
|
||||
gsub(/ \| /," \\| ");
|
||||
gsub(/ \| /," \\| "); }
|
||||
/'\|'/ { gsub(/'\|'/,"'\\|'"); }
|
||||
/\^V\|/ {gsub(/\^V\|/,"^V\\|");}
|
||||
/ \\\| / {gsub(/\|/,"\\|");}
|
||||
#
|
||||
# one letter pipes and "||" false pipe (digraphs)
|
||||
#
|
||||
/[ ]\|.\|[ ]/ && asciiart == "no" {gsub(/\|/,"YXXY"); }
|
||||
/^\|.\|[ ]/ {gsub(/\|/,"YXXY"); }
|
||||
/\|\|/ {gsub(/\|\|/,"\\|\\|"); }
|
||||
/^shellpipe/ {gsub(/\|/,"\\|"); }
|
||||
#
|
||||
# pipe start
|
||||
#
|
||||
/[ ]\|[^ ]/ && asciiart == "no" {gsub(/ \|/," YXXY");
|
||||
gsub(/ \|/," YXXY");}
|
||||
/^\|[^ ]/ {gsub(/^\|/,"YXXY");}
|
||||
#
|
||||
# pipe end
|
||||
#
|
||||
/[^ ]\|$/ && asciiart == "no" {gsub(/\|$/,"YXXY");}
|
||||
/[^ ]\|[s ,.); ]/ && asciiart == "no" {gsub(/\|/,"YXXY");}
|
||||
/[^ ]\|]/ && asciiart == "no" {gsub(/\|/,"YXXY");}
|
||||
#
|
||||
# various
|
||||
#
|
||||
/'"/ {gsub(/'"/,"\\'\\"'");}
|
||||
/"/ {gsub(/"/,"\\"");}
|
||||
/%/ {gsub(/%/,"\\%");}
|
||||
|
||||
NR == 1 { nf=split(FILENAME,f,".")
|
||||
print "<HTML>";
|
||||
|
||||
print "<HEAD>"
|
||||
if ( FILENAME == "mbyte.txt" ) {
|
||||
# needs utf-8 as uses many languages
|
||||
print "<META HTTP-EQUIV=\"Content-type\" content=\"text/html; charset=UTF-8\">";
|
||||
} else {
|
||||
# common case - Latin1
|
||||
print "<META HTTP-EQUIV=\"Content-type\" content=\"text/html; charset=ISO-8859-1\">";
|
||||
}
|
||||
print "<TITLE>Vim documentation: " f[1] "</TITLE>";
|
||||
print "</HEAD>";
|
||||
|
||||
print "<BODY BGCOLOR=\"#ffffff\">";
|
||||
print "<H1>Vim documentation: " f[1] "</H1>";
|
||||
print "<A NAME=\"top\"></A>";
|
||||
if ( FILENAME != "help.txt" ) {
|
||||
print "<A HREF=\"index.html\">main help file</A>\n";
|
||||
}
|
||||
print "<HR>";
|
||||
print "<PRE>";
|
||||
filename=f[1]".html";
|
||||
}
|
||||
|
||||
# set to a low value to test for few lines of text
|
||||
# NR == 99999 { exit; }
|
||||
|
||||
# ignore underlines and tags
|
||||
substr($0,1,5) == " vim:" { next; }
|
||||
substr($0,1,4) == "vim:" { next; }
|
||||
# keep just whole lines of "-", "="
|
||||
substr($0,1,3) == "===" && substr($0,75,1) != "=" { next; }
|
||||
substr($0,1,3) == "---" && substr($0,75,1) != "-" { next; }
|
||||
|
||||
{
|
||||
nstar = split($0,s,"ZWWZ");
|
||||
for ( i=2 ; i <= nstar ; i=i+2 ) {
|
||||
nbla=split(s[i],blata,"[ ]");
|
||||
if ( nbla > 1 ) {
|
||||
gsub("ZWWZ","*");
|
||||
nstar = split($0,s,"ZWWZ");
|
||||
}
|
||||
}
|
||||
npipe = split($0,p,"YXXY");
|
||||
for ( i=2 ; i <= npipe ; i=i+2 ) {
|
||||
nbla=split(p[i],blata,"[ ]");
|
||||
if ( nbla > 1 ) {
|
||||
gsub("YXXY","|");
|
||||
ntabs = split($0,p,"YXXY");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FILENAME == "gui.txt" && asciiart == "no" \
|
||||
&& $0 ~ /\+----/ && $0 ~ /----\+/ {
|
||||
asciiart= "yes";
|
||||
asciicnt=0;
|
||||
}
|
||||
|
||||
FILENAME == "quotes.txt" && asciiart == "no" \
|
||||
&& $0 ~ /In summary:/ {
|
||||
asciiart= "yes";
|
||||
asciicnt=0;
|
||||
}
|
||||
|
||||
FILENAME == "usr_20.txt" && asciiart == "no" \
|
||||
&& $0 ~ /an empty line at the end:/ {
|
||||
asciiart= "yes";
|
||||
asciicnt=0;
|
||||
}
|
||||
|
||||
asciiart == "yes" && $0=="" { asciicnt++; }
|
||||
|
||||
asciiart == "yes" && asciicnt == 2 { asciiart = "no"; }
|
||||
|
||||
asciiart == "yes" { npipe = 1; }
|
||||
# { print NR " <=> " asciiart; }
|
||||
|
||||
#
|
||||
# line contains "*"
|
||||
#
|
||||
nstar > 2 && npipe < 3 {
|
||||
printf("\n");
|
||||
for ( i=1; i <= nstar ; i=i+2 ) {
|
||||
this=s[i];
|
||||
put_this();
|
||||
ii=i+1;
|
||||
nbla = split(s[ii],blata," ");
|
||||
if ( ii <= nstar ) {
|
||||
if ( nbla == 1 && substr(s[ii],length(s[ii]),1) != " " ) {
|
||||
printf("*<A NAME=\"%s\"></A>",s[ii]);
|
||||
printf("<B>%s</B>*",s[ii]);
|
||||
} else {
|
||||
printf("*%s*",s[ii]);
|
||||
}
|
||||
}
|
||||
}
|
||||
printf("\n");
|
||||
next;
|
||||
}
|
||||
#
|
||||
# line contains "|"
|
||||
#
|
||||
npipe > 2 && nstar < 3 {
|
||||
if ( npipe%2 == 0 ) {
|
||||
for ( i=1; i < npipe ; i++ ) {
|
||||
gsub("ZWWZ","*",p[i]);
|
||||
printf("%s|",p[i]);
|
||||
}
|
||||
printf("%s\n",p[npipe]);
|
||||
next;
|
||||
}
|
||||
for ( i=1; i <= npipe ; i++ )
|
||||
{
|
||||
if ( i % 2 == 1 ) {
|
||||
gsub("ZWWZ","*",p[i]);
|
||||
this=p[i];
|
||||
put_this();
|
||||
}
|
||||
else {
|
||||
nfn=split(p[i],f,".");
|
||||
if ( nfn == 1 || f[2] == "" || f[1] == "" || length(f[2]) < 3 ) {
|
||||
find_tag1();
|
||||
}
|
||||
else {
|
||||
if ( f[1] == "index" ) {
|
||||
printf "|<A HREF=\"vimindex.html\">" p[i] "</A>|";
|
||||
} else {
|
||||
if ( f[1] == "help" ) {
|
||||
printf "|<A HREF=\"index.html\">" p[i] "</A>|";
|
||||
} else {
|
||||
printf "|<A HREF=\"" f[1] ".html\">" p[i] "</A>|";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
printf("\n");
|
||||
next;
|
||||
}
|
||||
#
|
||||
# line contains both "|" and "*"
|
||||
#
|
||||
npipe > 2 && nstar > 2 {
|
||||
printf("\n");
|
||||
for ( j=1; j <= nstar ; j=j+2 ) {
|
||||
npipe = split(s[j],p,"YXXY");
|
||||
if ( npipe > 1 ) {
|
||||
for ( np=1; np<=npipe; np=np+2 ) {
|
||||
this=p[np];
|
||||
put_this();
|
||||
i=np+1;find_tag1();
|
||||
}
|
||||
} else {
|
||||
this=s[j];
|
||||
put_this();
|
||||
}
|
||||
jj=j+1;
|
||||
nbla = split(s[jj],blata," ");
|
||||
if ( jj <= nstar && nbla == 1 && s[jj] != "" ) {
|
||||
printf("*<A NAME=\"%s\"></A>",s[jj]);
|
||||
printf("<B>%s</B>*",s[jj]);
|
||||
} else {
|
||||
if ( s[jj] != "" ) {
|
||||
printf("*%s*",s[jj]);
|
||||
}
|
||||
}
|
||||
}
|
||||
printf("\n");
|
||||
next;
|
||||
}
|
||||
#
|
||||
# line contains e-mail address john.doe@some.place.edu
|
||||
#
|
||||
$0 ~ /@/ && $0 ~ /[a-zA-Z0-9]@[a-z]/ \
|
||||
{
|
||||
nemail=split($0,em," ");
|
||||
if ( substr($0,1,1) == " " ) { printf(" "); }
|
||||
for ( i=1; i <= nemail; i++ ) {
|
||||
if ( em[i] ~ /@/ ) {
|
||||
if ( substr(em[i],2,3) == "lt;" && substr(em[i],length(em[i])-2,3) == "gt;" ) {
|
||||
mailaddr=substr(em[i],5,length(em[i])-8);
|
||||
printf("<A HREF=\"mailto:%s\"><%s></A> ",mailaddr,mailaddr);
|
||||
} else {
|
||||
if ( substr(em[i],2,3) == "lt;" && substr(em[i],length(em[i])-3,3) == "gt;" ) {
|
||||
mailaddr=substr(em[i],5,length(em[i])-9);
|
||||
printf("<A HREF=\"mailto:%s\"><%s></A>%s ",mailaddr,mailaddr,substr(em[i],length(em[i]),1));
|
||||
} else {
|
||||
printf("<A HREF=\"mailto:%s\">%s</A> ",em[i],em[i]);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
printf("%s ",em[i]);
|
||||
}
|
||||
}
|
||||
#print "*** " NR " " FILENAME " - possible mail ref";
|
||||
printf("\n");
|
||||
next;
|
||||
}
|
||||
#
|
||||
# line contains http / ftp reference
|
||||
#
|
||||
$0 ~ /http:\/\// || $0 ~ /ftp:\/\// {
|
||||
gsub("URL:","");
|
||||
gsub("<","");
|
||||
gsub(">","");
|
||||
gsub("\\(","");
|
||||
gsub("\\)","");
|
||||
nemail=split($0,em," ");
|
||||
for ( i=1; i <= nemail; i++ ) {
|
||||
if ( substr(em[i],1,5) == "http:" ||
|
||||
substr(em[i],1,4) == "ftp:" ) {
|
||||
if ( substr(em[i],length(em[i]),1) != "." ) {
|
||||
printf(" <A HREF=\"%s\">%s</A>",em[i],em[i]);
|
||||
} else {
|
||||
em[i]=substr(em[i],1,length(em[i])-1);
|
||||
printf(" <A HREF=\"%s\">%s</A>.",em[i],em[i]);
|
||||
}
|
||||
} else {
|
||||
printf(" %s",em[i]);
|
||||
}
|
||||
}
|
||||
#print "*** " NR " " FILENAME " - possible http ref";
|
||||
printf("\n");
|
||||
next;
|
||||
}
|
||||
#
|
||||
# some lines contains just one "almost regular" "*"...
|
||||
#
|
||||
nstar == 2 {
|
||||
this=s[1];
|
||||
put_this();
|
||||
printf("*");
|
||||
this=s[2];
|
||||
put_this();
|
||||
printf("\n");
|
||||
next;
|
||||
}
|
||||
#
|
||||
# regular line
|
||||
#
|
||||
{ ntabs = split($0,tb," ");
|
||||
for ( i=1; i < ntabs ; i++) {
|
||||
this=tb[i];
|
||||
put_this();
|
||||
printf(" ");
|
||||
}
|
||||
this=tb[ntabs];
|
||||
put_this();
|
||||
printf("\n");
|
||||
}
|
||||
|
||||
|
||||
asciiart == "yes" && $0 ~ /\+-\+--/ \
|
||||
&& $0 ~ "scrollbar" { asciiart = "no"; }
|
||||
|
||||
END {
|
||||
topback();
|
||||
print "</PRE>\n</BODY>\n\n\n</HTML>"; }
|
||||
|
||||
#
|
||||
# as main we keep index.txt (by default)
|
||||
#
|
||||
function topback () {
|
||||
if ( FILENAME != "tags" ) {
|
||||
if ( FILENAME != "help.txt" ) {
|
||||
printf("<A HREF=\"#top\">top</A> - ");
|
||||
printf("<A HREF=\"index.html\">main help file</A>\n");
|
||||
} else {
|
||||
printf("<A HREF=\"#top\">top</A>\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function find_tag1() {
|
||||
if ( p[i] == "" ) { return; }
|
||||
if ( tagkey[p[i]] == "yes" ) {
|
||||
which=tagref[p[i]];
|
||||
put_href();
|
||||
return;
|
||||
}
|
||||
# if not found, then we have a problem
|
||||
print "============================================" >>"errors.log";
|
||||
print FILENAME ", line " NR ", pointer: >>" p[i] "<<" >>"errors.log";
|
||||
print $0 >>"errors.log";
|
||||
which="intro.html";
|
||||
put_href();
|
||||
}
|
||||
|
||||
function see_tag() {
|
||||
# ad-hoc code:
|
||||
if ( atag == "\"--" || atag == "--\"" ) { return; }
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
allow_one_char="no";
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { return; }
|
||||
rightchar=substr(atag,length(atag),1);
|
||||
if ( rightchar == "." \
|
||||
|| rightchar == "," \
|
||||
|| rightchar == ":" \
|
||||
|| rightchar == ";" \
|
||||
|| rightchar == "!" \
|
||||
|| rightchar == "?" \
|
||||
|| rightchar == ")" ) {
|
||||
atag=substr(atag,1,length(atag)-1);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s",rightchar);return; }
|
||||
leftchar=substr(atag,1,1);
|
||||
lastbut1=substr(atag,length(atag),1);
|
||||
if ( leftchar == "'" && lastbut1 == "'" ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,2,length(atag)-2);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
printf("%s",leftchar);
|
||||
aword=substr(atag,1,length(atag))""lastbut1""rightchar;
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s%s",lastbut1,rightchar);return; }
|
||||
}
|
||||
}
|
||||
atag=aword;
|
||||
leftchar=substr(atag,1,1);
|
||||
if ( leftchar == "'" && rightchar == "'" ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,2,length(atag)-2);
|
||||
if ( atag == "<" ) { printf(" |%s|%s| ",atag,p[2]); }
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
printf("%s",leftchar);
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s",rightchar);return; }
|
||||
printf("%s%s",atag,rightchar);
|
||||
return;
|
||||
}
|
||||
last2=substr(atag,length(atag)-1,2);
|
||||
first2=substr(atag,1,2);
|
||||
if ( first2 == "('" && last2 == "')" ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,3,length(atag)-4);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
printf("%s",first2);
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s",last2);return; }
|
||||
printf("%s%s",atag,last2);
|
||||
return;
|
||||
}
|
||||
if ( last2 == ".)" ) {
|
||||
atag=substr(atag,1,length(atag)-2);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s",last2);return; }
|
||||
printf("%s%s",atag,last2);
|
||||
return;
|
||||
}
|
||||
if ( last2 == ")." ) {
|
||||
atag=substr(atag,1,length(atag)-2);
|
||||
find_tag2();
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
if ( done == "yes" ) { printf("%s",last2);return; }
|
||||
printf("%s%s",atag,last2);
|
||||
return;
|
||||
}
|
||||
first6=substr(atag,1,6);
|
||||
last6=substr(atag,length(atag)-5,6);
|
||||
if ( last6 == atag ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
last6of7=substr(atag,length(atag)-6,6);
|
||||
if ( first6 == """ && last6of7 == """ && length(atag) > 12 ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,7,length(atag)-13);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
printf("%s",first6);
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf(""%s",rightchar); return; }
|
||||
printf("%s"%s",atag,rightchar);
|
||||
return;
|
||||
}
|
||||
if ( first6 == """ && last6 != """ ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,7,length(atag)-6);
|
||||
if ( atag == "[" ) { printf(""%s",atag); return; }
|
||||
if ( atag == "." ) { printf(""%s",atag); return; }
|
||||
if ( atag == ":" ) { printf(""%s",atag); return; }
|
||||
if ( atag == "a" ) { printf(""%s",atag); return; }
|
||||
if ( atag == "A" ) { printf(""%s",atag); return; }
|
||||
if ( atag == "g" ) { printf(""%s",atag); return; }
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf(""%s",atag);
|
||||
return;
|
||||
}
|
||||
printf("%s",first6);
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { return; }
|
||||
printf("%s",atag);
|
||||
return;
|
||||
}
|
||||
if ( last6 == """ && first6 == """ ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,7,length(atag)-12);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
printf("%s",first6);
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s",last6);return; }
|
||||
printf("%s%s",atag,last6);
|
||||
return;
|
||||
}
|
||||
last6of7=substr(atag,length(atag)-6,6);
|
||||
if ( last6of7 == """ && first6 == """ ) {
|
||||
allow_one_char="yes";
|
||||
atag=substr(atag,7,length(atag)-13);
|
||||
#printf("\natag=%s,aword=%s\n",atag,aword);
|
||||
if_already();
|
||||
if ( already == "yes" ) {
|
||||
printf("%s",aword);
|
||||
return;
|
||||
}
|
||||
printf("%s",first6);
|
||||
find_tag2();
|
||||
if ( done == "yes" ) { printf("%s%s",last6of7,rightchar);return; }
|
||||
printf("%s%s%s",atag,last6of7,rightchar);
|
||||
return;
|
||||
}
|
||||
printf("%s",aword);
|
||||
}
|
||||
|
||||
function find_tag2() {
|
||||
done="no";
|
||||
# no blanks present in a tag...
|
||||
ntags=split(atag,blata,"[ ]");
|
||||
if ( ntags > 1 ) { return; }
|
||||
if ( ( allow_one_char == "no" ) && \
|
||||
( index("!#$%&'()+,-./0:;=?@ACINX\\[\\]^_`at\\{\\}~",atag) !=0 ) ) {
|
||||
return;
|
||||
}
|
||||
if ( skip_word[atag] == "yes" ) { return; }
|
||||
if ( wasset == "yes" && lineset == NR ) {
|
||||
wasset="no";
|
||||
see_opt();
|
||||
if ( done_opt == "yes" ) {return;}
|
||||
}
|
||||
if ( wasset == "yes" && lineset != NR ) {
|
||||
wasset="no";
|
||||
}
|
||||
if ( atag == ":set" ) {
|
||||
wasset="yes";
|
||||
lineset=NR;
|
||||
}
|
||||
if ( tagkey[atag] == "yes" ) {
|
||||
which=tagref[atag];
|
||||
put_href2();
|
||||
done="yes";
|
||||
}
|
||||
}
|
||||
|
||||
function find_tag3() {
|
||||
done="no";
|
||||
# no blanks present in a tag...
|
||||
ntags=split(btag,blata,"[ ]");
|
||||
if ( ntags > 1 ) { return; }
|
||||
if ( ( allow_one_char == "no" ) && \
|
||||
( index("!#$%&'()+,-./0:;=?@ACINX\\[\\]^_`at\\{\\}~",btag) !=0 ) ) {
|
||||
return;
|
||||
}
|
||||
if ( skip_word[btag] == "yes" ) { return; }
|
||||
if ( tagkey[btag] == "yes" ) {
|
||||
which=tagref[btag];
|
||||
put_href3();
|
||||
done="yes";
|
||||
}
|
||||
}
|
||||
|
||||
function put_href() {
|
||||
if ( p[i] == "" ) { return; }
|
||||
if ( which == FILENAME ) {
|
||||
printf("|<A HREF=\"#%s\">%s</A>|",p[i],p[i]);
|
||||
}
|
||||
else {
|
||||
nz=split(which,zz,".");
|
||||
if ( zz[2] == "txt" || zz[1] == "tags" ) {
|
||||
printf("|<A HREF=\"%s.html#%s\">%s</A>|",zz[1],p[i],p[i]);
|
||||
}
|
||||
else {
|
||||
printf("|<A HREF=\"intro.html#%s\">%s</A>|",p[i],p[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function put_href2() {
|
||||
if ( atag == "" ) { return; }
|
||||
if ( which == FILENAME ) {
|
||||
printf("<A HREF=\"#%s\">%s</A>",atag,atag);
|
||||
}
|
||||
else {
|
||||
nz=split(which,zz,".");
|
||||
if ( zz[2] == "txt" || zz[1] == "tags" ) {
|
||||
printf("<A HREF=\"%s.html#%s\">%s</A>",zz[1],atag,atag);
|
||||
}
|
||||
else {
|
||||
printf("<A HREF=\"intro.html#%s\">%s</A>",atag,atag);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function put_href3() {
|
||||
if ( btag == "" ) { return; }
|
||||
if ( which == FILENAME ) {
|
||||
printf("<A HREF=\"#%s\">%s</A>",btag,btag2);
|
||||
}
|
||||
else {
|
||||
nz=split(which,zz,".");
|
||||
if ( zz[2] == "txt" || zz[1] == "tags" ) {
|
||||
printf("<A HREF=\"%s.html#%s\">%s</A>",zz[1],btag,btag2);
|
||||
}
|
||||
else {
|
||||
printf("<A HREF=\"intro.html#%s\">%s</A>",btag,btag2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function put_this() {
|
||||
ntab=split(this,ta," ");
|
||||
for ( nta=1 ; nta <= ntab ; nta++ ) {
|
||||
ata=ta[nta];
|
||||
lata=length(ata);
|
||||
aword="";
|
||||
for ( iata=1 ; iata <=lata ; iata++ ) {
|
||||
achar=substr(ata,iata,1);
|
||||
if ( achar != " " ) { aword=aword""achar; }
|
||||
else {
|
||||
if ( aword != "" ) { atag=aword;
|
||||
see_tag();
|
||||
aword="";
|
||||
printf(" "); }
|
||||
else {
|
||||
printf(" ");
|
||||
}
|
||||
}
|
||||
}
|
||||
if ( aword != "" ) { atag=aword;
|
||||
see_tag();
|
||||
}
|
||||
if ( nta != ntab ) { printf(" "); }
|
||||
}
|
||||
}
|
||||
|
||||
function if_already() {
|
||||
already="no";
|
||||
if ( npipe < 2 ) { return; }
|
||||
if ( atag == ":au" && p[2] == ":autocmd" ) { already="yes";return; }
|
||||
for ( npp=2 ; npp <= npipe ; npp=npp+2 ) {
|
||||
if ( ( (index(p[npp],atag)) != 0 \
|
||||
&& length(p[npp]) > length(atag) \
|
||||
&& length(atag) >= 1 \
|
||||
) \
|
||||
|| (p[npp] == atag) \
|
||||
) {
|
||||
# printf("p=|%s|,tag=|%s| ",p[npp],atag);
|
||||
already="yes"; return; }
|
||||
}
|
||||
}
|
||||
|
||||
function see_opt() {
|
||||
done_opt="no";
|
||||
stag=atag;
|
||||
nfields = split(atag,tae,"=");
|
||||
if ( nfields > 1 ) {
|
||||
btag="'"tae[1]"'";
|
||||
btag2=tae[1];
|
||||
find_tag3();
|
||||
if (done == "yes") {
|
||||
for ( ntae=2 ; ntae <= nfields ; ntae++ ) {
|
||||
printf("=%s",tae[ntae]);
|
||||
}
|
||||
atag=stag;
|
||||
done_opt="yes";
|
||||
return;
|
||||
}
|
||||
btag=tae[1];
|
||||
btag2=tae[1];
|
||||
find_tag3();
|
||||
if ( done=="yes" ) {
|
||||
for ( ntae=2 ; ntae <= nfields ; ntae++ ) {
|
||||
printf("=%s",tae[ntae]);
|
||||
}
|
||||
atag=stag;
|
||||
done_opt="yes";
|
||||
return;
|
||||
}
|
||||
}
|
||||
nfields = split(atag,tae,""");
|
||||
if ( nfields > 1 ) {
|
||||
btag="'"tae[1]"'";
|
||||
btag2=tae[1];
|
||||
find_tag3();
|
||||
if (done == "yes") {
|
||||
printf(""");
|
||||
atag=stag;
|
||||
done_opt="yes";
|
||||
return;
|
||||
}
|
||||
btag=tae[1];
|
||||
btag2=tae[1];
|
||||
find_tag3();
|
||||
if (done == "yes") {
|
||||
printf(""");
|
||||
atag=stag;
|
||||
done_opt="yes";
|
||||
return;
|
||||
}
|
||||
}
|
||||
btag="'"tae[1]"'";
|
||||
btag2=tae[1];
|
||||
find_tag3();
|
||||
if (done == "yes") {
|
||||
atag=stag;
|
||||
done_opt="yes";
|
||||
return;
|
||||
}
|
||||
btag=tae[1];
|
||||
btag2=tae[1];
|
||||
find_tag3();
|
||||
if (done == "yes") {
|
||||
atag=stag;
|
||||
done_opt="yes";
|
||||
return;
|
||||
}
|
||||
atag=stag;
|
||||
}
|
@ -0,0 +1,42 @@
|
||||
BEGIN { FS=" "; }
|
||||
|
||||
NR == 1 { nf=split(FILENAME,f,".")
|
||||
print "<HTML>";
|
||||
print "<HEAD><TITLE>" f[1] "</TITLE></HEAD>";
|
||||
print "<BODY BGCOLOR=\"#ffffff\">";
|
||||
print "<H1>Vim Documentation: " f[1] "</H1>";
|
||||
print "<A NAME=\"top\"></A>";
|
||||
print "<HR>";
|
||||
print "<PRE>";
|
||||
}
|
||||
|
||||
{
|
||||
#
|
||||
# protect special chars
|
||||
#
|
||||
gsub(/&/,"\\&");
|
||||
gsub(/>/,"\\>");
|
||||
gsub(/</,"\\<");
|
||||
gsub(/"/,"\\"");
|
||||
gsub(/%/,"\\%");
|
||||
|
||||
nf=split($0,tag," ");
|
||||
tagkey[t]=tag[1];tagref[t]=tag[2];tagnum[t]=NR;
|
||||
print $1 " " $2 " line " NR >"tags.ref"
|
||||
n=split($2,w,".");
|
||||
printf ("|<A HREF=\"%s.html#%s\">%s</A>| %s\n",w[1],$1,$1,$2);
|
||||
}
|
||||
|
||||
END {
|
||||
topback();
|
||||
print "</PRE>\n</BODY>\n\n\n</HTML>";
|
||||
}
|
||||
|
||||
#
|
||||
# as main we keep index.txt (by default)
|
||||
# other candidate, help.txt
|
||||
#
|
||||
function topback () {
|
||||
printf("<A HREF=\"#top\">top</A> - ");
|
||||
printf("<A HREF=\"help.html\">back to help</A>\n");
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,553 @@
|
||||
.TH VIM 1 "2006 Apr 11"
|
||||
.SH NAME
|
||||
vim \- Vi IMproved, a programmers text editor
|
||||
.SH SYNOPSIS
|
||||
.br
|
||||
.B vim
|
||||
[options] [file ..]
|
||||
.br
|
||||
.B vim
|
||||
[options] \-
|
||||
.br
|
||||
.B vim
|
||||
[options] \-t tag
|
||||
.br
|
||||
.B vim
|
||||
[options] \-q [errorfile]
|
||||
.PP
|
||||
.br
|
||||
.B ex
|
||||
.br
|
||||
.B view
|
||||
.br
|
||||
.B gvim
|
||||
.B gview
|
||||
.B evim
|
||||
.B eview
|
||||
.br
|
||||
.B rvim
|
||||
.B rview
|
||||
.B rgvim
|
||||
.B rgview
|
||||
.SH DESCRIPTION
|
||||
.B Vim
|
||||
is a text editor that is upwards compatible to Vi.
|
||||
It can be used to edit all kinds of plain text.
|
||||
It is especially useful for editing programs.
|
||||
.PP
|
||||
There are a lot of enhancements above Vi: multi level undo,
|
||||
multi windows and buffers, syntax highlighting, command line
|
||||
editing, filename completion, on-line help, visual selection, etc..
|
||||
See ":help vi_diff.txt" for a summary of the differences between
|
||||
.B Vim
|
||||
and Vi.
|
||||
.PP
|
||||
While running
|
||||
.B Vim
|
||||
a lot of help can be obtained from the on-line help system, with the ":help"
|
||||
command.
|
||||
See the ON-LINE HELP section below.
|
||||
.PP
|
||||
Most often
|
||||
.B Vim
|
||||
is started to edit a single file with the command
|
||||
.PP
|
||||
vim file
|
||||
.PP
|
||||
More generally
|
||||
.B Vim
|
||||
is started with:
|
||||
.PP
|
||||
vim [options] [filelist]
|
||||
.PP
|
||||
If the filelist is missing, the editor will start with an empty buffer.
|
||||
Otherwise exactly one out of the following four may be used to choose one or
|
||||
more files to be edited.
|
||||
.TP 12
|
||||
file ..
|
||||
A list of filenames.
|
||||
The first one will be the current file and read into the buffer.
|
||||
The cursor will be positioned on the first line of the buffer.
|
||||
You can get to the other files with the ":next" command.
|
||||
To edit a file that starts with a dash, precede the filelist with "\-\-".
|
||||
.TP
|
||||
\-
|
||||
The file to edit is read from stdin. Commands are read from stderr, which
|
||||
should be a tty.
|
||||
.TP
|
||||
\-t {tag}
|
||||
The file to edit and the initial cursor position depends on a "tag", a sort
|
||||
of goto label.
|
||||
{tag} is looked up in the tags file, the associated file becomes the current
|
||||
file and the associated command is executed.
|
||||
Mostly this is used for C programs, in which case {tag} could be a function
|
||||
name.
|
||||
The effect is that the file containing that function becomes the current file
|
||||
and the cursor is positioned on the start of the function.
|
||||
See ":help tag\-commands".
|
||||
.TP
|
||||
\-q [errorfile]
|
||||
Start in quickFix mode.
|
||||
The file [errorfile] is read and the first error is displayed.
|
||||
If [errorfile] is omitted, the filename is obtained from the 'errorfile'
|
||||
option (defaults to "AztecC.Err" for the Amiga, "errors.err" on other
|
||||
systems).
|
||||
Further errors can be jumped to with the ":cn" command.
|
||||
See ":help quickfix".
|
||||
.PP
|
||||
.B Vim
|
||||
behaves differently, depending on the name of the command (the executable may
|
||||
still be the same file).
|
||||
.TP 10
|
||||
vim
|
||||
The "normal" way, everything is default.
|
||||
.TP
|
||||
ex
|
||||
Start in Ex mode.
|
||||
Go to Normal mode with the ":vi" command.
|
||||
Can also be done with the "\-e" argument.
|
||||
.TP
|
||||
view
|
||||
Start in read-only mode. You will be protected from writing the files. Can
|
||||
also be done with the "\-R" argument.
|
||||
.TP
|
||||
gvim gview
|
||||
The GUI version.
|
||||
Starts a new window.
|
||||
Can also be done with the "\-g" argument.
|
||||
.TP
|
||||
evim eview
|
||||
The GUI version in easy mode.
|
||||
Starts a new window.
|
||||
Can also be done with the "\-y" argument.
|
||||
.TP
|
||||
rvim rview rgvim rgview
|
||||
Like the above, but with restrictions. It will not be possible to start shell
|
||||
commands, or suspend
|
||||
.B Vim.
|
||||
Can also be done with the "\-Z" argument.
|
||||
.SH OPTIONS
|
||||
The options may be given in any order, before or after filenames.
|
||||
Options without an argument can be combined after a single dash.
|
||||
.TP 12
|
||||
+[num]
|
||||
For the first file the cursor will be positioned on line "num".
|
||||
If "num" is missing, the cursor will be positioned on the last line.
|
||||
.TP
|
||||
+/{pat}
|
||||
For the first file the cursor will be positioned on the
|
||||
first occurrence of {pat}.
|
||||
See ":help search\-pattern" for the available search patterns.
|
||||
.TP
|
||||
+{command}
|
||||
.TP
|
||||
\-c {command}
|
||||
{command} will be executed after the
|
||||
first file has been read.
|
||||
{command} is interpreted as an Ex command.
|
||||
If the {command} contains spaces it must be enclosed in double quotes (this
|
||||
depends on the shell that is used).
|
||||
Example: Vim "+set si" main.c
|
||||
.br
|
||||
Note: You can use up to 10 "+" or "\-c" commands.
|
||||
.TP
|
||||
\-S {file}
|
||||
{file} will be sourced after the first file has been read.
|
||||
This is equivalent to \-c "source {file}".
|
||||
{file} cannot start with '\-'.
|
||||
If {file} is omitted "Session.vim" is used (only works when \-S is the last
|
||||
argument).
|
||||
.TP
|
||||
\-\-cmd {command}
|
||||
Like using "\-c", but the command is executed just before
|
||||
processing any vimrc file.
|
||||
You can use up to 10 of these commands, independently from "\-c" commands.
|
||||
.TP
|
||||
\-A
|
||||
If
|
||||
.B Vim
|
||||
has been compiled with ARABIC support for editing right-to-left
|
||||
oriented files and Arabic keyboard mapping, this option starts
|
||||
.B Vim
|
||||
in Arabic mode, i.e. 'arabic' is set. Otherwise an error
|
||||
message is given and
|
||||
.B Vim
|
||||
aborts.
|
||||
.TP
|
||||
\-b
|
||||
Binary mode.
|
||||
A few options will be set that makes it possible to edit a binary or
|
||||
executable file.
|
||||
.TP
|
||||
\-C
|
||||
Compatible. Set the 'compatible' option.
|
||||
This will make
|
||||
.B Vim
|
||||
behave mostly like Vi, even though a .vimrc file exists.
|
||||
.TP
|
||||
\-d
|
||||
Start in diff mode.
|
||||
There should be two, three or four file name arguments.
|
||||
.B Vim
|
||||
will open all the files and show differences between them.
|
||||
Works like vimdiff(1).
|
||||
.TP
|
||||
\-d {device}
|
||||
Open {device} for use as a terminal.
|
||||
Only on the Amiga.
|
||||
Example:
|
||||
"\-d con:20/30/600/150".
|
||||
.TP
|
||||
\-D
|
||||
Debugging. Go to debugging mode when executing the first command from a
|
||||
script.
|
||||
.TP
|
||||
\-e
|
||||
Start
|
||||
.B Vim
|
||||
in Ex mode, just like the executable was called "ex".
|
||||
.TP
|
||||
\-E
|
||||
Start
|
||||
.B Vim
|
||||
in improved Ex mode, just like the executable was called "exim".
|
||||
.TP
|
||||
\-f
|
||||
Foreground. For the GUI version,
|
||||
.B Vim
|
||||
will not fork and detach from the shell it was started in.
|
||||
On the Amiga,
|
||||
.B Vim
|
||||
is not restarted to open a new window.
|
||||
This option should be used when
|
||||
.B Vim
|
||||
is executed by a program that will wait for the edit
|
||||
session to finish (e.g. mail).
|
||||
On the Amiga the ":sh" and ":!" commands will not work.
|
||||
.TP
|
||||
\-\-nofork
|
||||
Foreground. For the GUI version,
|
||||
.B Vim
|
||||
will not fork and detach from the shell it was started in.
|
||||
.TP
|
||||
\-F
|
||||
If
|
||||
.B Vim
|
||||
has been compiled with FKMAP support for editing right-to-left
|
||||
oriented files and Farsi keyboard mapping, this option starts
|
||||
.B Vim
|
||||
in Farsi mode, i.e. 'fkmap' and 'rightleft' are set.
|
||||
Otherwise an error message is given and
|
||||
.B Vim
|
||||
aborts.
|
||||
.TP
|
||||
\-g
|
||||
If
|
||||
.B Vim
|
||||
has been compiled with GUI support, this option enables the GUI.
|
||||
If no GUI support was compiled in, an error message is given and
|
||||
.B Vim
|
||||
aborts.
|
||||
.TP
|
||||
\-h
|
||||
Give a bit of help about the command line arguments and options.
|
||||
After this
|
||||
.B Vim
|
||||
exits.
|
||||
.TP
|
||||
\-H
|
||||
If
|
||||
.B Vim
|
||||
has been compiled with RIGHTLEFT support for editing right-to-left
|
||||
oriented files and Hebrew keyboard mapping, this option starts
|
||||
.B Vim
|
||||
in Hebrew mode, i.e. 'hkmap' and 'rightleft' are set.
|
||||
Otherwise an error message is given and
|
||||
.B Vim
|
||||
aborts.
|
||||
.TP
|
||||
\-i {viminfo}
|
||||
When using the viminfo file is enabled, this option sets the filename to use,
|
||||
instead of the default "~/.viminfo".
|
||||
This can also be used to skip the use of the .viminfo file, by giving the name
|
||||
"NONE".
|
||||
.TP
|
||||
\-L
|
||||
Same as \-r.
|
||||
.TP
|
||||
\-l
|
||||
Lisp mode.
|
||||
Sets the 'lisp' and 'showmatch' options on.
|
||||
.TP
|
||||
\-m
|
||||
Modifying files is disabled.
|
||||
Resets the 'write' option.
|
||||
You can still modify the buffer, but writing a file is not possible.
|
||||
.TP
|
||||
\-M
|
||||
Modifications not allowed. The 'modifiable' and 'write' options will be unset,
|
||||
so that changes are not allowed and files can not be written. Note that these
|
||||
options can be set to enable making modifications.
|
||||
.TP
|
||||
\-N
|
||||
No-compatible mode. Reset the 'compatible' option.
|
||||
This will make
|
||||
.B Vim
|
||||
behave a bit better, but less Vi compatible, even though a .vimrc file does
|
||||
not exist.
|
||||
.TP
|
||||
\-n
|
||||
No swap file will be used.
|
||||
Recovery after a crash will be impossible.
|
||||
Handy if you want to edit a file on a very slow medium (e.g. floppy).
|
||||
Can also be done with ":set uc=0".
|
||||
Can be undone with ":set uc=200".
|
||||
.TP
|
||||
\-nb
|
||||
Become an editor server for NetBeans. See the docs for details.
|
||||
.TP
|
||||
\-o[N]
|
||||
Open N windows stacked.
|
||||
When N is omitted, open one window for each file.
|
||||
.TP
|
||||
\-O[N]
|
||||
Open N windows side by side.
|
||||
When N is omitted, open one window for each file.
|
||||
.TP
|
||||
\-p[N]
|
||||
Open N tab pages.
|
||||
When N is omitted, open one tab page for each file.
|
||||
.TP
|
||||
\-R
|
||||
Read-only mode.
|
||||
The 'readonly' option will be set.
|
||||
You can still edit the buffer, but will be prevented from accidently
|
||||
overwriting a file.
|
||||
If you do want to overwrite a file, add an exclamation mark to the Ex command,
|
||||
as in ":w!".
|
||||
The \-R option also implies the \-n option (see below).
|
||||
The 'readonly' option can be reset with ":set noro".
|
||||
See ":help 'readonly'".
|
||||
.TP
|
||||
\-r
|
||||
List swap files, with information about using them for recovery.
|
||||
.TP
|
||||
\-r {file}
|
||||
Recovery mode.
|
||||
The swap file is used to recover a crashed editing session.
|
||||
The swap file is a file with the same filename as the text file with ".swp"
|
||||
appended.
|
||||
See ":help recovery".
|
||||
.TP
|
||||
\-s
|
||||
Silent mode. Only when started as "Ex" or when the "\-e" option was given
|
||||
before the "\-s" option.
|
||||
.TP
|
||||
\-s {scriptin}
|
||||
The script file {scriptin} is read.
|
||||
The characters in the file are interpreted as if you had typed them.
|
||||
The same can be done with the command ":source! {scriptin}".
|
||||
If the end of the file is reached before the editor exits, further characters
|
||||
are read from the keyboard.
|
||||
.TP
|
||||
\-T {terminal}
|
||||
Tells
|
||||
.B Vim
|
||||
the name of the terminal you are using.
|
||||
Only required when the automatic way doesn't work.
|
||||
Should be a terminal known
|
||||
to
|
||||
.B Vim
|
||||
(builtin) or defined in the termcap or terminfo file.
|
||||
.TP
|
||||
\-u {vimrc}
|
||||
Use the commands in the file {vimrc} for initializations.
|
||||
All the other initializations are skipped.
|
||||
Use this to edit a special kind of files.
|
||||
It can also be used to skip all initializations by giving the name "NONE".
|
||||
See ":help initialization" within vim for more details.
|
||||
.TP
|
||||
\-U {gvimrc}
|
||||
Use the commands in the file {gvimrc} for GUI initializations.
|
||||
All the other GUI initializations are skipped.
|
||||
It can also be used to skip all GUI initializations by giving the name "NONE".
|
||||
See ":help gui\-init" within vim for more details.
|
||||
.TP
|
||||
\-V[N]
|
||||
Verbose. Give messages about which files are sourced and for reading and
|
||||
writing a viminfo file. The optional number N is the value for 'verbose'.
|
||||
Default is 10.
|
||||
.TP
|
||||
\-v
|
||||
Start
|
||||
.B Vim
|
||||
in Vi mode, just like the executable was called "vi". This only has effect
|
||||
when the executable is called "ex".
|
||||
.TP
|
||||
\-w {scriptout}
|
||||
All the characters that you type are recorded in the file
|
||||
{scriptout}, until you exit
|
||||
.B Vim.
|
||||
This is useful if you want to create a script file to be used with "vim \-s" or
|
||||
":source!".
|
||||
If the {scriptout} file exists, characters are appended.
|
||||
.TP
|
||||
\-W {scriptout}
|
||||
Like \-w, but an existing file is overwritten.
|
||||
.TP
|
||||
\-x
|
||||
Use encryption when writing files. Will prompt for a crypt key.
|
||||
.TP
|
||||
\-X
|
||||
Don't connect to the X server. Shortens startup time in a terminal, but the
|
||||
window title and clipboard will not be used.
|
||||
.TP
|
||||
\-y
|
||||
Start
|
||||
.B Vim
|
||||
in easy mode, just like the executable was called "evim" or "eview".
|
||||
Makes
|
||||
.B Vim
|
||||
behave like a click-and-type editor.
|
||||
.TP
|
||||
\-Z
|
||||
Restricted mode. Works like the executable starts with "r".
|
||||
.TP
|
||||
\-\-
|
||||
Denotes the end of the options.
|
||||
Arguments after this will be handled as a file name.
|
||||
This can be used to edit a filename that starts with a '\-'.
|
||||
.TP
|
||||
\-\-echo\-wid
|
||||
GTK GUI only: Echo the Window ID on stdout.
|
||||
.TP
|
||||
\-\-help
|
||||
Give a help message and exit, just like "\-h".
|
||||
.TP
|
||||
\-\-literal
|
||||
Take file name arguments literally, do not expand wildcards. This has no
|
||||
effect on Unix where the shell expands wildcards.
|
||||
.TP
|
||||
\-\-noplugin
|
||||
Skip loading plugins. Implied by \-u NONE.
|
||||
.TP
|
||||
\-\-remote
|
||||
Connect to a Vim server and make it edit the files given in the rest of the
|
||||
arguments. If no server is found a warning is given and the files are edited
|
||||
in the current Vim.
|
||||
.TP
|
||||
\-\-remote\-expr {expr}
|
||||
Connect to a Vim server, evaluate {expr} in it and print the result on stdout.
|
||||
.TP
|
||||
\-\-remote\-send {keys}
|
||||
Connect to a Vim server and send {keys} to it.
|
||||
.TP
|
||||
\-\-remote\-silent
|
||||
As \-\-remote, but without the warning when no server is found.
|
||||
.TP
|
||||
\-\-remote\-wait
|
||||
As \-\-remote, but Vim does not exit until the files have been edited.
|
||||
.TP
|
||||
\-\-remote\-wait\-silent
|
||||
As \-\-remote\-wait, but without the warning when no server is found.
|
||||
.TP
|
||||
\-\-serverlist
|
||||
List the names of all Vim servers that can be found.
|
||||
.TP
|
||||
\-\-servername {name}
|
||||
Use {name} as the server name. Used for the current Vim, unless used with a
|
||||
\-\-remote argument, then it's the name of the server to connect to.
|
||||
.TP
|
||||
\-\-socketid {id}
|
||||
GTK GUI only: Use the GtkPlug mechanism to run gvim in another window.
|
||||
.TP
|
||||
\-\-version
|
||||
Print version information and exit.
|
||||
.SH ON-LINE HELP
|
||||
Type ":help" in
|
||||
.B Vim
|
||||
to get started.
|
||||
Type ":help subject" to get help on a specific subject.
|
||||
For example: ":help ZZ" to get help for the "ZZ" command.
|
||||
Use <Tab> and CTRL-D to complete subjects (":help cmdline\-completion").
|
||||
Tags are present to jump from one place to another (sort of hypertext links,
|
||||
see ":help").
|
||||
All documentation files can be viewed in this way, for example
|
||||
":help syntax.txt".
|
||||
.SH FILES
|
||||
.TP 15
|
||||
/usr/local/lib/vim/doc/*.txt
|
||||
The
|
||||
.B Vim
|
||||
documentation files.
|
||||
Use ":help doc\-file\-list" to get the complete list.
|
||||
.TP
|
||||
/usr/local/lib/vim/doc/tags
|
||||
The tags file used for finding information in the documentation files.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/syntax.vim
|
||||
System wide syntax initializations.
|
||||
.TP
|
||||
/usr/local/lib/vim/syntax/*.vim
|
||||
Syntax files for various languages.
|
||||
.TP
|
||||
/usr/local/lib/vim/vimrc
|
||||
System wide
|
||||
.B Vim
|
||||
initializations.
|
||||
.TP
|
||||
~/.vimrc
|
||||
Your personal
|
||||
.B Vim
|
||||
initializations.
|
||||
.TP
|
||||
/usr/local/lib/vim/gvimrc
|
||||
System wide gvim initializations.
|
||||
.TP
|
||||
~/.gvimrc
|
||||
Your personal gvim initializations.
|
||||
.TP
|
||||
/usr/local/lib/vim/optwin.vim
|
||||
Script used for the ":options" command, a nice way to view and set options.
|
||||
.TP
|
||||
/usr/local/lib/vim/menu.vim
|
||||
System wide menu initializations for gvim.
|
||||
.TP
|
||||
/usr/local/lib/vim/bugreport.vim
|
||||
Script to generate a bug report. See ":help bugs".
|
||||
.TP
|
||||
/usr/local/lib/vim/filetype.vim
|
||||
Script to detect the type of a file by its name. See ":help 'filetype'".
|
||||
.TP
|
||||
/usr/local/lib/vim/scripts.vim
|
||||
Script to detect the type of a file by its contents. See ":help 'filetype'".
|
||||
.TP
|
||||
/usr/local/lib/vim/print/*.ps
|
||||
Files used for PostScript printing.
|
||||
.PP
|
||||
For recent info read the VIM home page:
|
||||
.br
|
||||
<URL:http://www.vim.org/>
|
||||
.SH SEE ALSO
|
||||
vimtutor(1)
|
||||
.SH AUTHOR
|
||||
Most of
|
||||
.B Vim
|
||||
was made by Bram Moolenaar, with a lot of help from others.
|
||||
See ":help credits" in
|
||||
.B Vim.
|
||||
.br
|
||||
.B Vim
|
||||
is based on Stevie, worked on by: Tim Thompson,
|
||||
Tony Andrews and G.R. (Fred) Walter.
|
||||
Although hardly any of the original code remains.
|
||||
.SH BUGS
|
||||
Probably.
|
||||
See ":help todo" for a list of known problems.
|
||||
.PP
|
||||
Note that a number of things that may be regarded as bugs by some, are in fact
|
||||
caused by a too-faithful reproduction of Vi's behaviour.
|
||||
And if you think other things are bugs "because Vi does it differently",
|
||||
you should take a closer look at the vi_diff.txt file (or type :help
|
||||
vi_diff.txt when in Vim).
|
||||
Also have a look at the 'compatible' and 'cpoptions' options.
|
@ -0,0 +1,428 @@
|
||||
VIM(1) VIM(1)
|
||||
|
||||
|
||||
|
||||
NAME
|
||||
vim - Vi IMproved, a programmers text editor
|
||||
|
||||
SYNOPSIS
|
||||
vim [options] [file ..]
|
||||
vim [options] -
|
||||
vim [options] -t tag
|
||||
vim [options] -q [errorfile]
|
||||
|
||||
ex
|
||||
view
|
||||
gvim gview evim eview
|
||||
rvim rview rgvim rgview
|
||||
|
||||
DESCRIPTION
|
||||
Vim is a text editor that is upwards compatible to Vi. It can be used
|
||||
to edit all kinds of plain text. It is especially useful for editing
|
||||
programs.
|
||||
|
||||
There are a lot of enhancements above Vi: multi level undo, multi win-
|
||||
dows and buffers, syntax highlighting, command line editing, filename
|
||||
completion, on-line help, visual selection, etc.. See ":help
|
||||
vi_diff.txt" for a summary of the differences between Vim and Vi.
|
||||
|
||||
While running Vim a lot of help can be obtained from the on-line help
|
||||
system, with the ":help" command. See the ON-LINE HELP section below.
|
||||
|
||||
Most often Vim is started to edit a single file with the command
|
||||
|
||||
vim file
|
||||
|
||||
More generally Vim is started with:
|
||||
|
||||
vim [options] [filelist]
|
||||
|
||||
If the filelist is missing, the editor will start with an empty buffer.
|
||||
Otherwise exactly one out of the following four may be used to choose
|
||||
one or more files to be edited.
|
||||
|
||||
file .. A list of filenames. The first one will be the current
|
||||
file and read into the buffer. The cursor will be posi-
|
||||
tioned on the first line of the buffer. You can get to the
|
||||
other files with the ":next" command. To edit a file that
|
||||
starts with a dash, precede the filelist with "--".
|
||||
|
||||
- The file to edit is read from stdin. Commands are read
|
||||
from stderr, which should be a tty.
|
||||
|
||||
-t {tag} The file to edit and the initial cursor position depends on
|
||||
a "tag", a sort of goto label. {tag} is looked up in the
|
||||
tags file, the associated file becomes the current file and
|
||||
the associated command is executed. Mostly this is used
|
||||
for C programs, in which case {tag} could be a function
|
||||
name. The effect is that the file containing that function
|
||||
becomes the current file and the cursor is positioned on
|
||||
the start of the function. See ":help tag-commands".
|
||||
|
||||
-q [errorfile]
|
||||
Start in quickFix mode. The file [errorfile] is read and
|
||||
the first error is displayed. If [errorfile] is omitted,
|
||||
the filename is obtained from the 'errorfile' option
|
||||
(defaults to "AztecC.Err" for the Amiga, "errors.err" on
|
||||
other systems). Further errors can be jumped to with the
|
||||
":cn" command. See ":help quickfix".
|
||||
|
||||
Vim behaves differently, depending on the name of the command (the exe-
|
||||
cutable may still be the same file).
|
||||
|
||||
vim The "normal" way, everything is default.
|
||||
|
||||
ex Start in Ex mode. Go to Normal mode with the ":vi" command.
|
||||
Can also be done with the "-e" argument.
|
||||
|
||||
view Start in read-only mode. You will be protected from writing
|
||||
the files. Can also be done with the "-R" argument.
|
||||
|
||||
gvim gview
|
||||
The GUI version. Starts a new window. Can also be done with
|
||||
the "-g" argument.
|
||||
|
||||
evim eview
|
||||
The GUI version in easy mode. Starts a new window. Can also
|
||||
be done with the "-y" argument.
|
||||
|
||||
rvim rview rgvim rgview
|
||||
Like the above, but with restrictions. It will not be possi-
|
||||
ble to start shell commands, or suspend Vim. Can also be
|
||||
done with the "-Z" argument.
|
||||
|
||||
OPTIONS
|
||||
The options may be given in any order, before or after filenames.
|
||||
Options without an argument can be combined after a single dash.
|
||||
|
||||
+[num] For the first file the cursor will be positioned on line
|
||||
"num". If "num" is missing, the cursor will be positioned
|
||||
on the last line.
|
||||
|
||||
+/{pat} For the first file the cursor will be positioned on the
|
||||
first occurrence of {pat}. See ":help search-pattern" for
|
||||
the available search patterns.
|
||||
|
||||
+{command}
|
||||
|
||||
-c {command}
|
||||
{command} will be executed after the first file has been
|
||||
read. {command} is interpreted as an Ex command. If the
|
||||
{command} contains spaces it must be enclosed in double
|
||||
quotes (this depends on the shell that is used). Example:
|
||||
Vim "+set si" main.c
|
||||
Note: You can use up to 10 "+" or "-c" commands.
|
||||
|
||||
-S {file} {file} will be sourced after the first file has been read.
|
||||
This is equivalent to -c "source {file}". {file} cannot
|
||||
start with '-'. If {file} is omitted "Session.vim" is used
|
||||
(only works when -S is the last argument).
|
||||
|
||||
--cmd {command}
|
||||
Like using "-c", but the command is executed just before
|
||||
processing any vimrc file. You can use up to 10 of these
|
||||
commands, independently from "-c" commands.
|
||||
|
||||
-A If Vim has been compiled with ARABIC support for editing
|
||||
right-to-left oriented files and Arabic keyboard mapping,
|
||||
this option starts Vim in Arabic mode, i.e. 'arabic' is
|
||||
set. Otherwise an error message is given and Vim aborts.
|
||||
|
||||
-b Binary mode. A few options will be set that makes it pos-
|
||||
sible to edit a binary or executable file.
|
||||
|
||||
-C Compatible. Set the 'compatible' option. This will make
|
||||
Vim behave mostly like Vi, even though a .vimrc file
|
||||
exists.
|
||||
|
||||
-d Start in diff mode. There should be two, three or four
|
||||
file name arguments. Vim will open all the files and show
|
||||
differences between them. Works like vimdiff(1).
|
||||
|
||||
-d {device} Open {device} for use as a terminal. Only on the Amiga.
|
||||
Example: "-d con:20/30/600/150".
|
||||
|
||||
-D Debugging. Go to debugging mode when executing the first
|
||||
command from a script.
|
||||
|
||||
-e Start Vim in Ex mode, just like the executable was called
|
||||
"ex".
|
||||
|
||||
-E Start Vim in improved Ex mode, just like the executable was
|
||||
called "exim".
|
||||
|
||||
-f Foreground. For the GUI version, Vim will not fork and
|
||||
detach from the shell it was started in. On the Amiga, Vim
|
||||
is not restarted to open a new window. This option should
|
||||
be used when Vim is executed by a program that will wait
|
||||
for the edit session to finish (e.g. mail). On the Amiga
|
||||
the ":sh" and ":!" commands will not work.
|
||||
|
||||
--nofork Foreground. For the GUI version, Vim will not fork and
|
||||
detach from the shell it was started in.
|
||||
|
||||
-F If Vim has been compiled with FKMAP support for editing
|
||||
right-to-left oriented files and Farsi keyboard mapping,
|
||||
this option starts Vim in Farsi mode, i.e. 'fkmap' and
|
||||
'rightleft' are set. Otherwise an error message is given
|
||||
and Vim aborts.
|
||||
|
||||
-g If Vim has been compiled with GUI support, this option
|
||||
enables the GUI. If no GUI support was compiled in, an
|
||||
error message is given and Vim aborts.
|
||||
|
||||
-h Give a bit of help about the command line arguments and
|
||||
options. After this Vim exits.
|
||||
|
||||
-H If Vim has been compiled with RIGHTLEFT support for editing
|
||||
right-to-left oriented files and Hebrew keyboard mapping,
|
||||
this option starts Vim in Hebrew mode, i.e. 'hkmap' and
|
||||
'rightleft' are set. Otherwise an error message is given
|
||||
and Vim aborts.
|
||||
|
||||
-i {viminfo}
|
||||
When using the viminfo file is enabled, this option sets
|
||||
the filename to use, instead of the default "~/.viminfo".
|
||||
This can also be used to skip the use of the .viminfo file,
|
||||
by giving the name "NONE".
|
||||
|
||||
-L Same as -r.
|
||||
|
||||
-l Lisp mode. Sets the 'lisp' and 'showmatch' options on.
|
||||
|
||||
-m Modifying files is disabled. Resets the 'write' option.
|
||||
You can still modify the buffer, but writing a file is not
|
||||
possible.
|
||||
|
||||
-M Modifications not allowed. The 'modifiable' and 'write'
|
||||
options will be unset, so that changes are not allowed and
|
||||
files can not be written. Note that these options can be
|
||||
set to enable making modifications.
|
||||
|
||||
-N No-compatible mode. Reset the 'compatible' option. This
|
||||
will make Vim behave a bit better, but less Vi compatible,
|
||||
even though a .vimrc file does not exist.
|
||||
|
||||
-n No swap file will be used. Recovery after a crash will be
|
||||
impossible. Handy if you want to edit a file on a very
|
||||
slow medium (e.g. floppy). Can also be done with ":set
|
||||
uc=0". Can be undone with ":set uc=200".
|
||||
|
||||
-nb Become an editor server for NetBeans. See the docs for
|
||||
details.
|
||||
|
||||
-o[N] Open N windows stacked. When N is omitted, open one window
|
||||
for each file.
|
||||
|
||||
-O[N] Open N windows side by side. When N is omitted, open one
|
||||
window for each file.
|
||||
|
||||
-p[N] Open N tab pages. When N is omitted, open one tab page for
|
||||
each file.
|
||||
|
||||
-R Read-only mode. The 'readonly' option will be set. You
|
||||
can still edit the buffer, but will be prevented from acci-
|
||||
dently overwriting a file. If you do want to overwrite a
|
||||
file, add an exclamation mark to the Ex command, as in
|
||||
":w!". The -R option also implies the -n option (see
|
||||
below). The 'readonly' option can be reset with ":set
|
||||
noro". See ":help 'readonly'".
|
||||
|
||||
-r List swap files, with information about using them for
|
||||
recovery.
|
||||
|
||||
-r {file} Recovery mode. The swap file is used to recover a crashed
|
||||
editing session. The swap file is a file with the same
|
||||
filename as the text file with ".swp" appended. See ":help
|
||||
recovery".
|
||||
|
||||
-s Silent mode. Only when started as "Ex" or when the "-e"
|
||||
option was given before the "-s" option.
|
||||
|
||||
-s {scriptin}
|
||||
The script file {scriptin} is read. The characters in the
|
||||
file are interpreted as if you had typed them. The same
|
||||
can be done with the command ":source! {scriptin}". If the
|
||||
end of the file is reached before the editor exits, further
|
||||
characters are read from the keyboard.
|
||||
|
||||
-T {terminal}
|
||||
Tells Vim the name of the terminal you are using. Only
|
||||
required when the automatic way doesn't work. Should be a
|
||||
terminal known to Vim (builtin) or defined in the termcap
|
||||
or terminfo file.
|
||||
|
||||
-u {vimrc} Use the commands in the file {vimrc} for initializations.
|
||||
All the other initializations are skipped. Use this to
|
||||
edit a special kind of files. It can also be used to skip
|
||||
all initializations by giving the name "NONE". See ":help
|
||||
initialization" within vim for more details.
|
||||
|
||||
-U {gvimrc} Use the commands in the file {gvimrc} for GUI initializa-
|
||||
tions. All the other GUI initializations are skipped. It
|
||||
can also be used to skip all GUI initializations by giving
|
||||
the name "NONE". See ":help gui-init" within vim for more
|
||||
details.
|
||||
|
||||
-V[N] Verbose. Give messages about which files are sourced and
|
||||
for reading and writing a viminfo file. The optional num-
|
||||
ber N is the value for 'verbose'. Default is 10.
|
||||
|
||||
-v Start Vim in Vi mode, just like the executable was called
|
||||
"vi". This only has effect when the executable is called
|
||||
"ex".
|
||||
|
||||
-w {scriptout}
|
||||
All the characters that you type are recorded in the file
|
||||
{scriptout}, until you exit Vim. This is useful if you
|
||||
want to create a script file to be used with "vim -s" or
|
||||
":source!". If the {scriptout} file exists, characters are
|
||||
appended.
|
||||
|
||||
-W {scriptout}
|
||||
Like -w, but an existing file is overwritten.
|
||||
|
||||
-x Use encryption when writing files. Will prompt for a crypt
|
||||
key.
|
||||
|
||||
-X Don't connect to the X server. Shortens startup time in a
|
||||
terminal, but the window title and clipboard will not be
|
||||
used.
|
||||
|
||||
-y Start Vim in easy mode, just like the executable was called
|
||||
"evim" or "eview". Makes Vim behave like a click-and-type
|
||||
editor.
|
||||
|
||||
-Z Restricted mode. Works like the executable starts with
|
||||
"r".
|
||||
|
||||
-- Denotes the end of the options. Arguments after this will
|
||||
be handled as a file name. This can be used to edit a
|
||||
filename that starts with a '-'.
|
||||
|
||||
--echo-wid GTK GUI only: Echo the Window ID on stdout.
|
||||
|
||||
--help Give a help message and exit, just like "-h".
|
||||
|
||||
--literal Take file name arguments literally, do not expand wild-
|
||||
cards. This has no effect on Unix where the shell expands
|
||||
wildcards.
|
||||
|
||||
--noplugin Skip loading plugins. Implied by -u NONE.
|
||||
|
||||
--remote Connect to a Vim server and make it edit the files given in
|
||||
the rest of the arguments. If no server is found a warning
|
||||
is given and the files are edited in the current Vim.
|
||||
|
||||
--remote-expr {expr}
|
||||
Connect to a Vim server, evaluate {expr} in it and print
|
||||
the result on stdout.
|
||||
|
||||
--remote-send {keys}
|
||||
Connect to a Vim server and send {keys} to it.
|
||||
|
||||
--remote-silent
|
||||
As --remote, but without the warning when no server is
|
||||
found.
|
||||
|
||||
--remote-wait
|
||||
As --remote, but Vim does not exit until the files have
|
||||
been edited.
|
||||
|
||||
--remote-wait-silent
|
||||
As --remote-wait, but without the warning when no server is
|
||||
found.
|
||||
|
||||
--serverlist
|
||||
List the names of all Vim servers that can be found.
|
||||
|
||||
--servername {name}
|
||||
Use {name} as the server name. Used for the current Vim,
|
||||
unless used with a --remote argument, then it's the name of
|
||||
the server to connect to.
|
||||
|
||||
--socketid {id}
|
||||
GTK GUI only: Use the GtkPlug mechanism to run gvim in
|
||||
another window.
|
||||
|
||||
--version Print version information and exit.
|
||||
|
||||
ON-LINE HELP
|
||||
Type ":help" in Vim to get started. Type ":help subject" to get help
|
||||
on a specific subject. For example: ":help ZZ" to get help for the
|
||||
"ZZ" command. Use <Tab> and CTRL-D to complete subjects (":help cmd-
|
||||
line-completion"). Tags are present to jump from one place to another
|
||||
(sort of hypertext links, see ":help"). All documentation files can be
|
||||
viewed in this way, for example ":help syntax.txt".
|
||||
|
||||
FILES
|
||||
/usr/local/lib/vim/doc/*.txt
|
||||
The Vim documentation files. Use ":help doc-file-list"
|
||||
to get the complete list.
|
||||
|
||||
/usr/local/lib/vim/doc/tags
|
||||
The tags file used for finding information in the docu-
|
||||
mentation files.
|
||||
|
||||
/usr/local/lib/vim/syntax/syntax.vim
|
||||
System wide syntax initializations.
|
||||
|
||||
/usr/local/lib/vim/syntax/*.vim
|
||||
Syntax files for various languages.
|
||||
|
||||
/usr/local/lib/vim/vimrc
|
||||
System wide Vim initializations.
|
||||
|
||||
~/.vimrc Your personal Vim initializations.
|
||||
|
||||
/usr/local/lib/vim/gvimrc
|
||||
System wide gvim initializations.
|
||||
|
||||
~/.gvimrc Your personal gvim initializations.
|
||||
|
||||
/usr/local/lib/vim/optwin.vim
|
||||
Script used for the ":options" command, a nice way to
|
||||
view and set options.
|
||||
|
||||
/usr/local/lib/vim/menu.vim
|
||||
System wide menu initializations for gvim.
|
||||
|
||||
/usr/local/lib/vim/bugreport.vim
|
||||
Script to generate a bug report. See ":help bugs".
|
||||
|
||||
/usr/local/lib/vim/filetype.vim
|
||||
Script to detect the type of a file by its name. See
|
||||
":help 'filetype'".
|
||||
|
||||
/usr/local/lib/vim/scripts.vim
|
||||
Script to detect the type of a file by its contents.
|
||||
See ":help 'filetype'".
|
||||
|
||||
/usr/local/lib/vim/print/*.ps
|
||||
Files used for PostScript printing.
|
||||
|
||||
For recent info read the VIM home page:
|
||||
<URL:http://www.vim.org/>
|
||||
|
||||
SEE ALSO
|
||||
vimtutor(1)
|
||||
|
||||
AUTHOR
|
||||
Most of Vim was made by Bram Moolenaar, with a lot of help from others.
|
||||
See ":help credits" in Vim.
|
||||
Vim is based on Stevie, worked on by: Tim Thompson, Tony Andrews and
|
||||
G.R. (Fred) Walter. Although hardly any of the original code remains.
|
||||
|
||||
BUGS
|
||||
Probably. See ":help todo" for a list of known problems.
|
||||
|
||||
Note that a number of things that may be regarded as bugs by some, are
|
||||
in fact caused by a too-faithful reproduction of Vi's behaviour. And
|
||||
if you think other things are bugs "because Vi does it differently",
|
||||
you should take a closer look at the vi_diff.txt file (or type :help
|
||||
vi_diff.txt when in Vim). Also have a look at the 'compatible' and
|
||||
'cpoptions' options.
|
||||
|
||||
|
||||
|
||||
2006 Apr 11 VIM(1)
|
@ -0,0 +1,228 @@
|
||||
#!/usr/bin/env perl
|
||||
|
||||
# converts vim documentation to simple html
|
||||
# Sirtaj Singh Kang (taj@kde.org)
|
||||
|
||||
# Sun Feb 24 14:49:17 CET 2002
|
||||
|
||||
use strict;
|
||||
use vars qw/%url $date/;
|
||||
|
||||
%url = ();
|
||||
$date = `date`;
|
||||
chop $date;
|
||||
|
||||
sub maplink
|
||||
{
|
||||
my $tag = shift;
|
||||
if( exists $url{ $tag } ){
|
||||
return $url{ $tag };
|
||||
} else {
|
||||
#warn "Unknown hyperlink target: $tag\n";
|
||||
$tag =~ s/\.txt//;
|
||||
$tag =~ s/</</g;
|
||||
$tag =~ s/>/>/g;
|
||||
return "<code class=\"badlink\">$tag</code>";
|
||||
}
|
||||
}
|
||||
|
||||
sub readTagFile
|
||||
{
|
||||
my($tagfile) = @_;
|
||||
my( $tag, $file, $name );
|
||||
|
||||
open(TAGS,"$tagfile") || die "can't read tags\n";
|
||||
|
||||
while( <TAGS> ) {
|
||||
next unless /^(\S+)\s+(\S+)\s+/;
|
||||
|
||||
$tag = $1;
|
||||
my $label = $tag;
|
||||
($file= $2) =~ s/.txt$/.html/g;
|
||||
$label =~ s/\.txt//;
|
||||
|
||||
$url{ $tag } = "<a href=\"$file#".escurl($tag)."\">".esctext($label)."</a>";
|
||||
}
|
||||
close( TAGS );
|
||||
}
|
||||
|
||||
sub esctext
|
||||
{
|
||||
my $text = shift;
|
||||
$text =~ s/&/&/g;
|
||||
$text =~ s/</</g;
|
||||
$text =~ s/>/>/g;
|
||||
return $text;
|
||||
}
|
||||
|
||||
sub escurl
|
||||
{
|
||||
my $url = shift;
|
||||
$url =~ s/"/%22/g;
|
||||
$url =~ s/~/%7E/g;
|
||||
$url =~ s/</%3C/g;
|
||||
$url =~ s/>/%3E/g;
|
||||
$url =~ s/=/%20/g;
|
||||
$url =~ s/#/%23/g;
|
||||
$url =~ s/\//%2F/g;
|
||||
|
||||
return $url;
|
||||
}
|
||||
|
||||
sub vim2html
|
||||
{
|
||||
my( $infile ) = @_;
|
||||
my( $outfile );
|
||||
|
||||
open(IN, "$infile" ) || die "Couldn't read from $infile: $!.\n";
|
||||
|
||||
($outfile = $infile) =~ s:.*/::g;
|
||||
$outfile =~ s/\.txt$//g;
|
||||
|
||||
open( OUT, ">$outfile.html" )
|
||||
|| die "Couldn't write to $outfile.html: $!.\n";
|
||||
my $head = uc( $outfile );
|
||||
|
||||
print OUT<<EOF;
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<title>VIM: $outfile</title>
|
||||
<link rel="stylesheet" href="vim-stylesheet.css" type="text/css">
|
||||
</head>
|
||||
<body>
|
||||
<h2>$head</h2>
|
||||
<pre>
|
||||
EOF
|
||||
|
||||
my $inexample = 0;
|
||||
while( <IN> ) {
|
||||
chop;
|
||||
if ( /^\s*[-=]+\s*$/ ) {
|
||||
print OUT "</pre><hr><pre>";
|
||||
next;
|
||||
}
|
||||
|
||||
# examples
|
||||
elsif( /^>$/ || /\s>$/ ) {
|
||||
$inexample = 1;
|
||||
chop;
|
||||
}
|
||||
elsif ( $inexample && /^([<\S])/ ) {
|
||||
$inexample = 0;
|
||||
$_ = $' if $1 eq "<";
|
||||
}
|
||||
|
||||
s/\s+$//g;
|
||||
|
||||
# Various vim highlights. note that < and > have already been escaped
|
||||
# so that HTML doesn't get screwed up.
|
||||
|
||||
my @out = ();
|
||||
# print "Text: $_\n";
|
||||
LOOP:
|
||||
foreach my $token ( split /((?:\|[^\|]+\|)|(?:\*[^\*]+\*))/ ) {
|
||||
if ( $token =~ /^\|([^\|]+)\|/ ) {
|
||||
# link
|
||||
push( @out, "|".maplink( $1 )."|" );
|
||||
next LOOP;
|
||||
}
|
||||
elsif ( $token =~ /^\*([^\*]+)\*/ ) {
|
||||
# target
|
||||
push( @out,
|
||||
"<b class=\"vimtag\">\*<a name=\"".escurl($1)."\">".esctext($1)."<\/a>\*<\/b>");
|
||||
next LOOP;
|
||||
}
|
||||
|
||||
$_ = esctext($token);
|
||||
s/CTRL-(\w+)/<code class="keystroke">CTRL-$1<\/code>/g;
|
||||
# parameter <...>
|
||||
s/<(.*?)>/<code class="special"><$1><\/code>/g;
|
||||
|
||||
# parameter {...}
|
||||
s/\{([^}]*)\}/<code class="special">{$1}<\/code>/g;
|
||||
|
||||
# parameter [...]
|
||||
s/\[(range|line|count|offset|cmd|[-+]?num)\]/<code class="special">\[$1\]<\/code>/g;
|
||||
# note
|
||||
s/(Note:?)/<code class="note">$1<\/code>/gi;
|
||||
|
||||
# local heading
|
||||
s/^(.*)\~$/<code class="section">$1<\/code>/g;
|
||||
push( @out, $_ );
|
||||
}
|
||||
|
||||
$_ = join( "", @out );
|
||||
|
||||
if( $inexample == 2 ) {
|
||||
print OUT "<code class=\"example\">$_</code>\n";
|
||||
} else {
|
||||
print OUT $_,"\n";
|
||||
}
|
||||
|
||||
$inexample = 2 if $inexample == 1;
|
||||
}
|
||||
print OUT<<EOF;
|
||||
</pre>
|
||||
<p><i>Generated by vim2html on $date</i></p>
|
||||
</body>
|
||||
</html>
|
||||
EOF
|
||||
|
||||
}
|
||||
|
||||
sub usage
|
||||
{
|
||||
die<<EOF;
|
||||
vim2html.pl: converts vim documentation to HTML.
|
||||
usage:
|
||||
|
||||
vim2html.pl <tag file> <text files>
|
||||
EOF
|
||||
}
|
||||
|
||||
|
||||
sub writeCSS
|
||||
{
|
||||
open( CSS, ">vim-stylesheet.css" ) || die "Couldn't write stylesheet: $!\n";
|
||||
print CSS<<EOF;
|
||||
body { background-color: white; color: black;}
|
||||
:link { color: rgb(0,137,139); }
|
||||
:visited { color: rgb(0,100,100);
|
||||
background-color: white; /* should be inherit */ }
|
||||
:active { color: rgb(0,200,200);
|
||||
background-color: white; /* should be inherit */ }
|
||||
|
||||
B.vimtag { color : rgb(250,0,250); }
|
||||
|
||||
h1, h2 { color: rgb(82,80,82); text-align: center; }
|
||||
h3, h4, h5, h6 { color: rgb(82,80,82); }
|
||||
.headline { color: rgb(0,137,139); }
|
||||
.header { color: rgb(164, 32, 246); }
|
||||
.section { color: rgb(164, 32, 246); }
|
||||
.keystroke { color: rgb(106, 89, 205); }
|
||||
.vim { }
|
||||
.example { color: rgb(0, 0, 255); }
|
||||
.option { }
|
||||
.notvi { }
|
||||
.special { color: rgb(106, 89, 205); }
|
||||
.note { color: blue; background-color: yellow; }
|
||||
.sub {}
|
||||
.badlink { color: rgb(0,37,39); }
|
||||
EOF
|
||||
|
||||
}
|
||||
|
||||
# main
|
||||
usage() if $#ARGV < 1;
|
||||
|
||||
print "Processing tags...\n";
|
||||
readTagFile( $ARGV[ 0 ] );
|
||||
|
||||
foreach my $file ( 1..$#ARGV ) {
|
||||
print "Processing ".$ARGV[ $file ]."...\n";
|
||||
vim2html( $ARGV[ $file ] );
|
||||
}
|
||||
print "Writing stylesheet...\n";
|
||||
writeCSS();
|
||||
print "done.\n"
|
@ -0,0 +1,46 @@
|
||||
.TH VIMDIFF 1 "2001 March 30"
|
||||
.SH NAME
|
||||
vimdiff \- edit two, three or four versions of a file with Vim and show differences
|
||||
.SH SYNOPSIS
|
||||
.br
|
||||
.B vimdiff
|
||||
[options] file1 file2 [file3 [file4]]
|
||||
.PP
|
||||
.B gvimdiff
|
||||
.SH DESCRIPTION
|
||||
.B Vimdiff
|
||||
starts
|
||||
.B Vim
|
||||
on two (or three or four) files.
|
||||
Each file gets its own window.
|
||||
The differences between the files are highlighted.
|
||||
This is a nice way to inspect changes and to move changes from one version
|
||||
to another version of the same file.
|
||||
.PP
|
||||
See vim(1) for details about Vim itself.
|
||||
.PP
|
||||
When started as
|
||||
.B gvimdiff
|
||||
the GUI will be started, if available.
|
||||
.PP
|
||||
In each window the 'diff' option will be set, which causes the differences
|
||||
to be highlighted.
|
||||
.br
|
||||
The 'wrap' and 'scrollbind' options are set to make the text look good.
|
||||
.br
|
||||
The 'foldmethod' option is set to "diff", which puts ranges of lines without
|
||||
changes in a fold. 'foldcolumn' is set to two to make it easy to spot the
|
||||
folds and open or close them.
|
||||
.SH OPTIONS
|
||||
Vertical splits are used to align the lines, as if the "\-O" argument was used.
|
||||
To use horizontal splits instead, use the "\-o" argument.
|
||||
.PP
|
||||
For all other arguments see vim(1).
|
||||
.SH SEE ALSO
|
||||
vim(1)
|
||||
.SH AUTHOR
|
||||
Most of
|
||||
.B Vim
|
||||
was made by Bram Moolenaar, with a lot of help from others.
|
||||
See ":help credits" in
|
||||
.B Vim.
|
@ -0,0 +1,46 @@
|
||||
VIMDIFF(1) VIMDIFF(1)
|
||||
|
||||
|
||||
|
||||
NAME
|
||||
vimdiff - edit two, three or four versions of a file with Vim and show
|
||||
differences
|
||||
|
||||
SYNOPSIS
|
||||
vimdiff [options] file1 file2 [file3 [file4]]
|
||||
|
||||
gvimdiff
|
||||
|
||||
DESCRIPTION
|
||||
Vimdiff starts Vim on two (or three or four) files. Each file gets its
|
||||
own window. The differences between the files are highlighted. This
|
||||
is a nice way to inspect changes and to move changes from one version
|
||||
to another version of the same file.
|
||||
|
||||
See vim(1) for details about Vim itself.
|
||||
|
||||
When started as gvimdiff the GUI will be started, if available.
|
||||
|
||||
In each window the 'diff' option will be set, which causes the differ-
|
||||
ences to be highlighted.
|
||||
The 'wrap' and 'scrollbind' options are set to make the text look good.
|
||||
The 'foldmethod' option is set to "diff", which puts ranges of lines
|
||||
without changes in a fold. 'foldcolumn' is set to two to make it easy
|
||||
to spot the folds and open or close them.
|
||||
|
||||
OPTIONS
|
||||
Vertical splits are used to align the lines, as if the "-O" argument
|
||||
was used. To use horizontal splits instead, use the "-o" argument.
|
||||
|
||||
For all other arguments see vim(1).
|
||||
|
||||
SEE ALSO
|
||||
vim(1)
|
||||
|
||||
AUTHOR
|
||||
Most of Vim was made by Bram Moolenaar, with a lot of help from others.
|
||||
See ":help credits" in Vim.
|
||||
|
||||
|
||||
|
||||
2001 March 30 VIMDIFF(1)
|
@ -0,0 +1,57 @@
|
||||
.TH VIMTUTOR 1 "2001 April 2"
|
||||
.SH NAME
|
||||
vimtutor \- the Vim tutor
|
||||
.SH SYNOPSIS
|
||||
.br
|
||||
.B vimtutor [\-g] [language]
|
||||
.SH DESCRIPTION
|
||||
.B Vimtutor
|
||||
starts the
|
||||
.B Vim
|
||||
tutor.
|
||||
It copies the tutor file first, so that it can be modified without changing
|
||||
the original file.
|
||||
.PP
|
||||
The
|
||||
.B Vimtutor
|
||||
is useful for people that want to learn their first
|
||||
.B Vim
|
||||
commands.
|
||||
.PP
|
||||
The optional argument \-g starts vimtutor with gvim rather than vim, if the
|
||||
GUI version of vim is available, or falls back to Vim if gvim is not found.
|
||||
.PP
|
||||
The optional [language] argument is the two-letter name of a language, like
|
||||
"it" or "es".
|
||||
If the [language] argument is missing, the language of the current locale will
|
||||
be used.
|
||||
If a tutor in this language is available, it will be used.
|
||||
Otherwise the English version will be used.
|
||||
.PP
|
||||
.B Vim
|
||||
is always started in Vi compatible mode.
|
||||
.SH FILES
|
||||
.TP 15
|
||||
/usr/local/lib/vim/tutor/tutor[.language]
|
||||
The
|
||||
.B Vimtutor
|
||||
text file(s).
|
||||
.TP 15
|
||||
/usr/local/lib/vim/tutor/tutor.vim
|
||||
The Vim script used to copy the
|
||||
.B Vimtutor
|
||||
text file.
|
||||
.SH AUTHOR
|
||||
The
|
||||
.B Vimtutor
|
||||
was originally written for Vi by Michael C. Pierce and Robert K. Ware,
|
||||
Colorado School of Mines using ideas supplied by Charles Smith,
|
||||
Colorado State University.
|
||||
E-mail: bware@mines.colorado.edu.
|
||||
.br
|
||||
It was modified for
|
||||
.B Vim
|
||||
by Bram Moolenaar.
|
||||
For the names of the translators see the tutor files.
|
||||
.SH SEE ALSO
|
||||
vim(1)
|
@ -0,0 +1,370 @@
|
||||
.TH XXD 1 "August 1996" "Manual page for xxd"
|
||||
.\"
|
||||
.\" 21st May 1996
|
||||
.\" Man page author:
|
||||
.\" Tony Nugent <tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au>
|
||||
.\" Changes by Bram Moolenaar <Bram@vim.org>
|
||||
.SH NAME
|
||||
.I xxd
|
||||
\- make a hexdump or do the reverse.
|
||||
.SH SYNOPSIS
|
||||
.B xxd
|
||||
\-h[elp]
|
||||
.br
|
||||
.B xxd
|
||||
[options] [infile [outfile]]
|
||||
.br
|
||||
.B xxd
|
||||
\-r[evert] [options] [infile [outfile]]
|
||||
.SH DESCRIPTION
|
||||
.I xxd
|
||||
creates a hex dump of a given file or standard input.
|
||||
It can also convert a hex dump back to its original binary form.
|
||||
Like
|
||||
.BR uuencode (1)
|
||||
and
|
||||
.BR uudecode (1)
|
||||
it allows the transmission of binary data in a `mail-safe' ASCII representation,
|
||||
but has the advantage of decoding to standard output.
|
||||
Moreover, it can be used to perform binary file patching.
|
||||
.SH OPTIONS
|
||||
If no
|
||||
.I infile
|
||||
is given, standard input is read.
|
||||
If
|
||||
.I infile
|
||||
is specified as a
|
||||
.RB \` \- '
|
||||
character, then input is taken from standard input.
|
||||
If no
|
||||
.I outfile
|
||||
is given (or a
|
||||
.RB \` \- '
|
||||
character is in its place), results are sent to standard output.
|
||||
.PP
|
||||
Note that a "lazy" parser is used which does not check for more than the first
|
||||
option letter, unless the option is followed by a parameter.
|
||||
Spaces between a single option letter and its parameter are optional.
|
||||
Parameters to options can be specified in decimal, hexadecimal or octal
|
||||
notation.
|
||||
Thus
|
||||
.BR \-c8 ,
|
||||
.BR "\-c 8" ,
|
||||
.B \-c 010
|
||||
and
|
||||
.B \-cols 8
|
||||
are all equivalent.
|
||||
.PP
|
||||
.TP
|
||||
.IR \-a " | " \-autoskip
|
||||
toggle autoskip: A single '*' replaces nul-lines. Default off.
|
||||
.TP
|
||||
.IR \-b " | " \-bits
|
||||
Switch to bits (binary digits) dump, rather than hexdump.
|
||||
This option writes octets as eight digits "1"s and "0"s instead of a normal
|
||||
hexadecimal dump. Each line is preceded by a line number in hexadecimal and
|
||||
followed by an ascii (or ebcdic) representation. The command line switches
|
||||
\-r, \-p, \-i do not work with this mode.
|
||||
.TP
|
||||
.IR "\-c cols " | " \-cols cols"
|
||||
format
|
||||
.RI < cols >
|
||||
octets per line. Default 16 (\-i: 12, \-ps: 30, \-b: 6). Max 256.
|
||||
.TP
|
||||
.IR \-E " | " \-EBCDIC
|
||||
Change the character encoding in the righthand column from ASCII to EBCDIC.
|
||||
This does not change the hexadecimal representation. The option is
|
||||
meaningless in combinations with \-r, \-p or \-i.
|
||||
.TP
|
||||
.IR "\-g bytes " | " \-groupsize bytes"
|
||||
separate the output of every
|
||||
.RI < bytes >
|
||||
bytes (two hex characters or eight bit-digits each) by a whitespace.
|
||||
Specify
|
||||
.I \-g 0
|
||||
to suppress grouping.
|
||||
.RI < Bytes "> defaults to " 2
|
||||
in normal mode and \fI1\fP in bits mode.
|
||||
Grouping does not apply to postscript or include style.
|
||||
.TP
|
||||
.IR \-h " | " \-help
|
||||
print a summary of available commands and exit. No hex dumping is performed.
|
||||
.TP
|
||||
.IR \-i " | " \-include
|
||||
output in C include file style. A complete static array definition is written
|
||||
(named after the input file), unless xxd reads from stdin.
|
||||
.TP
|
||||
.IR "\-l len " | " \-len len"
|
||||
stop after writing
|
||||
.RI < len >
|
||||
octets.
|
||||
.TP
|
||||
.IR \-p " | " \-ps " | " \-postscript " | " \-plain
|
||||
output in postscript continuous hexdump style. Also known as plain hexdump
|
||||
style.
|
||||
.TP
|
||||
.IR \-r " | " \-revert
|
||||
reverse operation: convert (or patch) hexdump into binary.
|
||||
If not writing to stdout, xxd writes into its output file without truncating
|
||||
it. Use the combination
|
||||
.I \-r \-p
|
||||
to read plain hexadecimal dumps without line number information and without a
|
||||
particular column layout. Additional Whitespace and line-breaks are allowed
|
||||
anywhere.
|
||||
.TP
|
||||
.I \-seek offset
|
||||
When used after
|
||||
.IR \-r :
|
||||
revert with
|
||||
.RI < offset >
|
||||
added to file positions found in hexdump.
|
||||
.TP
|
||||
.I \-s [+][\-]seek
|
||||
start at
|
||||
.RI < seek >
|
||||
bytes abs. (or rel.) infile offset.
|
||||
\fI+ \fRindicates that the seek is relative to the current stdin file position
|
||||
(meaningless when not reading from stdin). \fI\- \fRindicates that the seek
|
||||
should be that many characters from the end of the input (or if combined with
|
||||
\fI+\fR: before the current stdin file position).
|
||||
Without \-s option, xxd starts at the current file position.
|
||||
.TP
|
||||
.I \-u
|
||||
use upper case hex letters. Default is lower case.
|
||||
.TP
|
||||
.IR \-v " | " \-version
|
||||
show version string.
|
||||
.SH CAVEATS
|
||||
.PP
|
||||
.I xxd \-r
|
||||
has some builtin magic while evaluating line number information.
|
||||
If the output file is seekable, then the linenumbers at the start of each
|
||||
hexdump line may be out of order, lines may be missing, or overlapping. In
|
||||
these cases xxd will lseek(2) to the next position. If the output file is not
|
||||
seekable, only gaps are allowed, which will be filled by null-bytes.
|
||||
.PP
|
||||
.I xxd \-r
|
||||
never generates parse errors. Garbage is silently skipped.
|
||||
.PP
|
||||
When editing hexdumps, please note that
|
||||
.I xxd \-r
|
||||
skips everything on the input line after reading enough columns of hexadecimal
|
||||
data (see option \-c). This also means, that changes to the printable ascii (or
|
||||
ebcdic) columns are always ignored. Reverting a plain (or postscript) style
|
||||
hexdump with xxd \-r \-p does not depend on the correct number of columns. Here anything that looks like a pair of hex-digits is interpreted.
|
||||
.PP
|
||||
Note the difference between
|
||||
.br
|
||||
\fI% xxd \-i file\fR
|
||||
.br
|
||||
and
|
||||
.br
|
||||
\fI% xxd \-i < file\fR
|
||||
.PP
|
||||
.I xxd \-s +seek
|
||||
may be different from
|
||||
.IR "xxd \-s seek" ,
|
||||
as lseek(2) is used to "rewind" input. A '+'
|
||||
makes a difference if the input source is stdin, and if stdin's file position
|
||||
is not at the start of the file by the time xxd is started and given its input.
|
||||
The following examples may help to clarify (or further confuse!)...
|
||||
.PP
|
||||
Rewind stdin before reading; needed because the `cat' has already read to the
|
||||
end of stdin.
|
||||
.br
|
||||
\fI% sh \-c "cat > plain_copy; xxd \-s 0 > hex_copy" < file\fR
|
||||
.PP
|
||||
Hexdump from file position 0x480 (=1024+128) onwards.
|
||||
The `+' sign means "relative to the current position", thus the `128' adds to
|
||||
the 1k where dd left off.
|
||||
.br
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet" < file\fR
|
||||
.PP
|
||||
Hexdump from file position 0x100 ( = 1024\-768) on.
|
||||
.br
|
||||
\fI% sh \-c "dd of=plain_snippet bs=1k count=1; xxd \-s +\-768 > hex_snippet" < file\fR
|
||||
.PP
|
||||
However, this is a rare situation and the use of `+' is rarely needed.
|
||||
The author prefers to monitor the effect of xxd with strace(1) or truss(1), whenever \-s is used.
|
||||
.SH EXAMPLES
|
||||
.PP
|
||||
.br
|
||||
Print everything but the first three lines (hex 0x30 bytes) of
|
||||
.BR file .
|
||||
.br
|
||||
\fI% xxd \-s 0x30 file\fR
|
||||
.PP
|
||||
.br
|
||||
Print 3 lines (hex 0x30 bytes) from the end of
|
||||
.BR file .
|
||||
.br
|
||||
\fI% xxd \-s \-0x30 file\fR
|
||||
.PP
|
||||
.br
|
||||
Print 120 bytes as continuous hexdump with 20 octets per line.
|
||||
.br
|
||||
\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR
|
||||
.br
|
||||
2e54482058584420312022417567757374203139
|
||||
.br
|
||||
39362220224d616e75616c207061676520666f72
|
||||
.br
|
||||
20787864220a2e5c220a2e5c222032317374204d
|
||||
.br
|
||||
617920313939360a2e5c22204d616e2070616765
|
||||
.br
|
||||
20617574686f723a0a2e5c2220202020546f6e79
|
||||
.br
|
||||
204e7567656e74203c746f6e79407363746e7567
|
||||
.br
|
||||
|
||||
.br
|
||||
Hexdump the first 120 bytes of this man page with 12 octets per line.
|
||||
.br
|
||||
\fI% xxd \-l 120 \-c 12 xxd.1\fR
|
||||
.br
|
||||
0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A
|
||||
.br
|
||||
000000c: 7567 7573 7420 3139 3936 2220 ugust 1996"
|
||||
.br
|
||||
0000018: 224d 616e 7561 6c20 7061 6765 "Manual page
|
||||
.br
|
||||
0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\\
|
||||
.br
|
||||
0000030: 220a 2e5c 2220 3231 7374 204d "..\\" 21st M
|
||||
.br
|
||||
000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\\"
|
||||
.br
|
||||
0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut
|
||||
.br
|
||||
0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\\"
|
||||
.br
|
||||
0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent
|
||||
.br
|
||||
000006c: 3c74 6f6e 7940 7363 746e 7567 <tony@sctnug
|
||||
.PP
|
||||
.br
|
||||
Display just the date from the file xxd.1
|
||||
.br
|
||||
\fI% xxd \-s 0x36 \-l 13 \-c 13 xxd.1\fR
|
||||
.br
|
||||
0000036: 3231 7374 204d 6179 2031 3939 36 21st May 1996
|
||||
.PP
|
||||
.br
|
||||
Copy
|
||||
.B input_file
|
||||
to
|
||||
.B output_file
|
||||
and prepend 100 bytes of value 0x00.
|
||||
.br
|
||||
\fI% xxd input_file | xxd \-r \-s 100 > output_file\fR
|
||||
.br
|
||||
|
||||
.br
|
||||
Patch the date in the file xxd.1
|
||||
.br
|
||||
\fI% echo "0000037: 3574 68" | xxd \-r \- xxd.1\fR
|
||||
.br
|
||||
\fI% xxd \-s 0x36 \-l 13 \-c 13 xxd.1\fR
|
||||
.br
|
||||
0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996
|
||||
.PP
|
||||
.br
|
||||
Create a 65537 byte file with all bytes 0x00,
|
||||
except for the last one which is 'A' (hex 0x41).
|
||||
.br
|
||||
\fI% echo "010000: 41" | xxd \-r > file\fR
|
||||
.PP
|
||||
.br
|
||||
Hexdump this file with autoskip.
|
||||
.br
|
||||
\fI% xxd \-a \-c 12 file\fR
|
||||
.br
|
||||
0000000: 0000 0000 0000 0000 0000 0000 ............
|
||||
.br
|
||||
*
|
||||
.br
|
||||
000fffc: 0000 0000 40 ....A
|
||||
.PP
|
||||
Create a 1 byte file containing a single 'A' character.
|
||||
The number after '\-r \-s' adds to the linenumbers found in the file;
|
||||
in effect, the leading bytes are suppressed.
|
||||
.br
|
||||
\fI% echo "010000: 41" | xxd \-r \-s \-0x10000 > file\fR
|
||||
.PP
|
||||
Use xxd as a filter within an editor such as
|
||||
.B vim(1)
|
||||
to hexdump a region marked between `a' and `z'.
|
||||
.br
|
||||
\fI:'a,'z!xxd\fR
|
||||
.PP
|
||||
Use xxd as a filter within an editor such as
|
||||
.B vim(1)
|
||||
to recover a binary hexdump marked between `a' and `z'.
|
||||
.br
|
||||
\fI:'a,'z!xxd \-r\fR
|
||||
.PP
|
||||
Use xxd as a filter within an editor such as
|
||||
.B vim(1)
|
||||
to recover one line of a hexdump. Move the cursor over the line and type:
|
||||
.br
|
||||
\fI!!xxd \-r\fR
|
||||
.PP
|
||||
Read single characters from a serial line
|
||||
.br
|
||||
\fI% xxd \-c1 < /dev/term/b &\fR
|
||||
.br
|
||||
\fI% stty < /dev/term/b \-echo \-opost \-isig \-icanon min 1\fR
|
||||
.br
|
||||
\fI% echo \-n foo > /dev/term/b\fR
|
||||
.PP
|
||||
.SH "RETURN VALUES"
|
||||
The following error values are returned:
|
||||
.TP
|
||||
0
|
||||
no errors encountered.
|
||||
.TP
|
||||
\-1
|
||||
operation not supported (
|
||||
.I xxd \-r \-i
|
||||
still impossible).
|
||||
.TP
|
||||
1
|
||||
error while parsing options.
|
||||
.TP
|
||||
2
|
||||
problems with input file.
|
||||
.TP
|
||||
3
|
||||
problems with output file.
|
||||
.TP
|
||||
4,5
|
||||
desired seek position is unreachable.
|
||||
.SH "SEE ALSO"
|
||||
uuencode(1), uudecode(1), patch(1)
|
||||
.br
|
||||
.SH WARNINGS
|
||||
The tools weirdness matches its creators brain.
|
||||
Use entirely at your own risk. Copy files. Trace it. Become a wizard.
|
||||
.br
|
||||
.SH VERSION
|
||||
This manual page documents xxd version 1.7
|
||||
.SH AUTHOR
|
||||
.br
|
||||
(c) 1990-1997 by Juergen Weigert
|
||||
.br
|
||||
<jnweiger@informatik.uni\-erlangen.de>
|
||||
.LP
|
||||
Distribute freely and credit me,
|
||||
.br
|
||||
make money and share with me,
|
||||
.br
|
||||
lose money and don't ask me.
|
||||
.PP
|
||||
Manual page started by Tony Nugent
|
||||
.br
|
||||
<tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au>
|
||||
.br
|
||||
Small changes by Bram Moolenaar.
|
||||
Edited by Juergen Weigert.
|
||||
.PP
|
@ -0,0 +1,262 @@
|
||||
XXD(1) XXD(1)
|
||||
|
||||
|
||||
|
||||
NAME
|
||||
xxd - make a hexdump or do the reverse.
|
||||
|
||||
SYNOPSIS
|
||||
xxd -h[elp]
|
||||
xxd [options] [infile [outfile]]
|
||||
xxd -r[evert] [options] [infile [outfile]]
|
||||
|
||||
DESCRIPTION
|
||||
xxd creates a hex dump of a given file or standard input. It can also
|
||||
convert a hex dump back to its original binary form. Like uuencode(1)
|
||||
and uudecode(1) it allows the transmission of binary data in a `mail-
|
||||
safe' ASCII representation, but has the advantage of decoding to stan-
|
||||
dard output. Moreover, it can be used to perform binary file patching.
|
||||
|
||||
OPTIONS
|
||||
If no infile is given, standard input is read. If infile is specified
|
||||
as a `-' character, then input is taken from standard input. If no
|
||||
outfile is given (or a `-' character is in its place), results are sent
|
||||
to standard output.
|
||||
|
||||
Note that a "lazy" parser is used which does not check for more than
|
||||
the first option letter, unless the option is followed by a parameter.
|
||||
Spaces between a single option letter and its parameter are optional.
|
||||
Parameters to options can be specified in decimal, hexadecimal or octal
|
||||
notation. Thus -c8, -c 8, -c 010 and -cols 8 are all equivalent.
|
||||
|
||||
|
||||
-a | -autoskip
|
||||
toggle autoskip: A single '*' replaces nul-lines. Default off.
|
||||
|
||||
-b | -bits
|
||||
Switch to bits (binary digits) dump, rather than hexdump. This
|
||||
option writes octets as eight digits "1"s and "0"s instead of a
|
||||
normal hexadecimal dump. Each line is preceded by a line number
|
||||
in hexadecimal and followed by an ascii (or ebcdic) representa-
|
||||
tion. The command line switches -r, -p, -i do not work with this
|
||||
mode.
|
||||
|
||||
-c cols | -cols cols
|
||||
format <cols> octets per line. Default 16 (-i: 12, -ps: 30, -b:
|
||||
6). Max 256.
|
||||
|
||||
-E | -EBCDIC
|
||||
Change the character encoding in the righthand column from ASCII
|
||||
to EBCDIC. This does not change the hexadecimal representation.
|
||||
The option is meaningless in combinations with -r, -p or -i.
|
||||
|
||||
-g bytes | -groupsize bytes
|
||||
separate the output of every <bytes> bytes (two hex characters
|
||||
or eight bit-digits each) by a whitespace. Specify -g 0 to sup-
|
||||
press grouping. <Bytes> defaults to 2 in normal mode and 1 in
|
||||
bits mode. Grouping does not apply to postscript or include
|
||||
style.
|
||||
|
||||
-h | -help
|
||||
print a summary of available commands and exit. No hex dumping
|
||||
is performed.
|
||||
|
||||
-i | -include
|
||||
output in C include file style. A complete static array defini-
|
||||
tion is written (named after the input file), unless xxd reads
|
||||
from stdin.
|
||||
|
||||
-l len | -len len
|
||||
stop after writing <len> octets.
|
||||
|
||||
-p | -ps | -postscript | -plain
|
||||
output in postscript continuous hexdump style. Also known as
|
||||
plain hexdump style.
|
||||
|
||||
-r | -revert
|
||||
reverse operation: convert (or patch) hexdump into binary. If
|
||||
not writing to stdout, xxd writes into its output file without
|
||||
truncating it. Use the combination -r -p to read plain hexadeci-
|
||||
mal dumps without line number information and without a particu-
|
||||
lar column layout. Additional Whitespace and line-breaks are
|
||||
allowed anywhere.
|
||||
|
||||
-seek offset
|
||||
When used after -r: revert with <offset> added to file positions
|
||||
found in hexdump.
|
||||
|
||||
-s [+][-]seek
|
||||
start at <seek> bytes abs. (or rel.) infile offset. + indicates
|
||||
that the seek is relative to the current stdin file position
|
||||
(meaningless when not reading from stdin). - indicates that the
|
||||
seek should be that many characters from the end of the input
|
||||
(or if combined with +: before the current stdin file position).
|
||||
Without -s option, xxd starts at the current file position.
|
||||
|
||||
-u use upper case hex letters. Default is lower case.
|
||||
|
||||
-v | -version
|
||||
show version string.
|
||||
|
||||
CAVEATS
|
||||
xxd -r has some builtin magic while evaluating line number information.
|
||||
If the output file is seekable, then the linenumbers at the start of
|
||||
each hexdump line may be out of order, lines may be missing, or over-
|
||||
lapping. In these cases xxd will lseek(2) to the next position. If the
|
||||
output file is not seekable, only gaps are allowed, which will be
|
||||
filled by null-bytes.
|
||||
|
||||
xxd -r never generates parse errors. Garbage is silently skipped.
|
||||
|
||||
When editing hexdumps, please note that xxd -r skips everything on the
|
||||
input line after reading enough columns of hexadecimal data (see option
|
||||
-c). This also means, that changes to the printable ascii (or ebcdic)
|
||||
columns are always ignored. Reverting a plain (or postscript) style
|
||||
hexdump with xxd -r -p does not depend on the correct number of col-
|
||||
umns. Here anything that looks like a pair of hex-digits is inter-
|
||||
preted.
|
||||
|
||||
Note the difference between
|
||||
% xxd -i file
|
||||
and
|
||||
% xxd -i < file
|
||||
|
||||
xxd -s +seek may be different from xxd -s seek, as lseek(2) is used to
|
||||
"rewind" input. A '+' makes a difference if the input source is stdin,
|
||||
and if stdin's file position is not at the start of the file by the
|
||||
time xxd is started and given its input. The following examples may
|
||||
help to clarify (or further confuse!)...
|
||||
|
||||
Rewind stdin before reading; needed because the `cat' has already read
|
||||
to the end of stdin.
|
||||
% sh -c "cat > plain_copy; xxd -s 0 > hex_copy" < file
|
||||
|
||||
Hexdump from file position 0x480 (=1024+128) onwards. The `+' sign
|
||||
means "relative to the current position", thus the `128' adds to the 1k
|
||||
where dd left off.
|
||||
% sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +128 > hex_snippet"
|
||||
< file
|
||||
|
||||
Hexdump from file position 0x100 ( = 1024-768) on.
|
||||
% sh -c "dd of=plain_snippet bs=1k count=1; xxd -s +-768 > hex_snippet"
|
||||
< file
|
||||
|
||||
However, this is a rare situation and the use of `+' is rarely needed.
|
||||
The author prefers to monitor the effect of xxd with strace(1) or
|
||||
truss(1), whenever -s is used.
|
||||
|
||||
EXAMPLES
|
||||
Print everything but the first three lines (hex 0x30 bytes) of file.
|
||||
% xxd -s 0x30 file
|
||||
|
||||
Print 3 lines (hex 0x30 bytes) from the end of file.
|
||||
% xxd -s -0x30 file
|
||||
|
||||
Print 120 bytes as continuous hexdump with 20 octets per line.
|
||||
% xxd -l 120 -ps -c 20 xxd.1
|
||||
2e54482058584420312022417567757374203139
|
||||
39362220224d616e75616c207061676520666f72
|
||||
20787864220a2e5c220a2e5c222032317374204d
|
||||
617920313939360a2e5c22204d616e2070616765
|
||||
20617574686f723a0a2e5c2220202020546f6e79
|
||||
204e7567656e74203c746f6e79407363746e7567
|
||||
|
||||
Hexdump the first 120 bytes of this man page with 12 octets per line.
|
||||
% xxd -l 120 -c 12 xxd.1
|
||||
0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A
|
||||
000000c: 7567 7573 7420 3139 3936 2220 ugust 1996"
|
||||
0000018: 224d 616e 7561 6c20 7061 6765 "Manual page
|
||||
0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\
|
||||
0000030: 220a 2e5c 2220 3231 7374 204d "..\" 21st M
|
||||
000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\"
|
||||
0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut
|
||||
0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\"
|
||||
0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent
|
||||
000006c: 3c74 6f6e 7940 7363 746e 7567 <tony@sctnug
|
||||
|
||||
Display just the date from the file xxd.1
|
||||
% xxd -s 0x36 -l 13 -c 13 xxd.1
|
||||
0000036: 3231 7374 204d 6179 2031 3939 36 21st May 1996
|
||||
|
||||
Copy input_file to output_file and prepend 100 bytes of value 0x00.
|
||||
% xxd input_file | xxd -r -s 100 > output_file
|
||||
|
||||
Patch the date in the file xxd.1
|
||||
% echo "0000037: 3574 68" | xxd -r - xxd.1
|
||||
% xxd -s 0x36 -l 13 -c 13 xxd.1
|
||||
0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996
|
||||
|
||||
Create a 65537 byte file with all bytes 0x00, except for the last one
|
||||
which is 'A' (hex 0x41).
|
||||
% echo "010000: 41" | xxd -r > file
|
||||
|
||||
Hexdump this file with autoskip.
|
||||
% xxd -a -c 12 file
|
||||
0000000: 0000 0000 0000 0000 0000 0000 ............
|
||||
*
|
||||
000fffc: 0000 0000 40 ....A
|
||||
|
||||
Create a 1 byte file containing a single 'A' character. The number
|
||||
after '-r -s' adds to the linenumbers found in the file; in effect, the
|
||||
leading bytes are suppressed.
|
||||
% echo "010000: 41" | xxd -r -s -0x10000 > file
|
||||
|
||||
Use xxd as a filter within an editor such as vim(1) to hexdump a region
|
||||
marked between `a' and `z'.
|
||||
:'a,'z!xxd
|
||||
|
||||
Use xxd as a filter within an editor such as vim(1) to recover a binary
|
||||
hexdump marked between `a' and `z'.
|
||||
:'a,'z!xxd -r
|
||||
|
||||
Use xxd as a filter within an editor such as vim(1) to recover one line
|
||||
of a hexdump. Move the cursor over the line and type:
|
||||
!!xxd -r
|
||||
|
||||
Read single characters from a serial line
|
||||
% xxd -c1 < /dev/term/b &
|
||||
% stty < /dev/term/b -echo -opost -isig -icanon min 1
|
||||
% echo -n foo > /dev/term/b
|
||||
|
||||
|
||||
RETURN VALUES
|
||||
The following error values are returned:
|
||||
|
||||
0 no errors encountered.
|
||||
|
||||
-1 operation not supported ( xxd -r -i still impossible).
|
||||
|
||||
1 error while parsing options.
|
||||
|
||||
2 problems with input file.
|
||||
|
||||
3 problems with output file.
|
||||
|
||||
4,5 desired seek position is unreachable.
|
||||
|
||||
SEE ALSO
|
||||
uuencode(1), uudecode(1), patch(1)
|
||||
|
||||
WARNINGS
|
||||
The tools weirdness matches its creators brain. Use entirely at your
|
||||
own risk. Copy files. Trace it. Become a wizard.
|
||||
|
||||
VERSION
|
||||
This manual page documents xxd version 1.7
|
||||
|
||||
AUTHOR
|
||||
(c) 1990-1997 by Juergen Weigert
|
||||
<jnweiger@informatik.uni-erlangen.de>
|
||||
|
||||
Distribute freely and credit me,
|
||||
make money and share with me,
|
||||
lose money and don't ask me.
|
||||
|
||||
Manual page started by Tony Nugent
|
||||
<tony@sctnugen.ppp.gu.edu.au> <T.Nugent@sct.gu.edu.au>
|
||||
Small changes by Bram Moolenaar. Edited by Juergen Weigert.
|
||||
|
||||
|
||||
|
||||
|
||||
Manual page for xxd August 1996 XXD(1)
|
@ -1,281 +1,505 @@
|
||||
" Description: html5 (and html4) indenter
|
||||
" Changed By: Brian Gershon <brian.five@gmail.com>
|
||||
" Last Change: 30 Jan 2011
|
||||
"
|
||||
" 1. Started with vim72 html indent file authored by Johannes Zellner (below)
|
||||
" 2. Added html5 list as described here:
|
||||
" http://stackoverflow.com/questions/3232518/how-to-update-vim-to-color-code-new-html-elements
|
||||
" 3. Added this to a fork of https://github.com/othree/html5.vim
|
||||
" which already provides nice html5 syntax highlighting.
|
||||
" Vim indent script for HTML
|
||||
" General: "{{{
|
||||
" File: html.vim (Vimscript #2075)
|
||||
" Author: Andy Wokula <anwoku@yahoo.de>
|
||||
" Last Change: 2013 Jun 12
|
||||
" Rev Days: 13
|
||||
" Version: 0.9
|
||||
" Vim Version: Vim7
|
||||
" Description:
|
||||
" Improved version of the distributed html indent script, faster on a
|
||||
" range of lines.
|
||||
"
|
||||
" Description: html indenter
|
||||
" Author: Johannes Zellner <johannes@zellner.org>
|
||||
" Last Change: Mo, 05 Jun 2006 22:32:41 CEST
|
||||
" Restoring 'cpo' and 'ic' added by Bram 2006 May 5
|
||||
" Globals: g:html_indent_tags -- indenting tags
|
||||
" g:html_indent_strict -- inhibit 'O O' elements
|
||||
" g:html_indent_strict_table -- inhibit 'O -' elements
|
||||
|
||||
" Only load this indent file when no other was loaded.
|
||||
" Credits:
|
||||
" indent/html.vim (2006 Jun 05) from J. Zellner
|
||||
" indent/css.vim (2006 Dec 20) from N. Weibull
|
||||
"
|
||||
" History:
|
||||
" 2012 Oct 21 (v0.9) added support for shiftwidth()
|
||||
" 2011 Sep 09 (v0.8) added HTML5 tags (thx to J. Zuckerman)
|
||||
" 2008 Apr 28 (v0.6) revised customization
|
||||
" 2008 Mar 09 (v0.5) fixed 'indk' issue (thx to C.J. Robinson)
|
||||
" }}}
|
||||
|
||||
" Init Folklore, check user settings (2nd time ++) "{{{
|
||||
if exists("b:did_indent")
|
||||
finish
|
||||
endif
|
||||
let b:did_indent = 1
|
||||
|
||||
setlocal indentexpr=HtmlIndent()
|
||||
setlocal indentkeys=o,O,<Return>,<>>,{,},!^F
|
||||
|
||||
" [-- local settings (must come before aborting the script) --]
|
||||
setlocal indentexpr=HtmlIndentGet(v:lnum)
|
||||
setlocal indentkeys=o,O,*<Return>,<>>,{,}
|
||||
let b:indent = {"lnum": -1}
|
||||
let b:undo_indent = "set inde< indk<| unlet b:indent"
|
||||
|
||||
" Load Once:
|
||||
if exists("*HtmlIndent")
|
||||
call HtmlIndent_CheckUserSettings()
|
||||
finish
|
||||
endif
|
||||
|
||||
if exists('g:html_indent_tags')
|
||||
unlet g:html_indent_tags
|
||||
" Patch 7.3.694
|
||||
if exists('*shiftwidth')
|
||||
let s:ShiftWidth = function('shiftwidth')
|
||||
else
|
||||
func! s:ShiftWidth()
|
||||
return &shiftwidth
|
||||
endfunc
|
||||
endif
|
||||
|
||||
" [-- helper function to assemble tag list --]
|
||||
fun! <SID>HtmlIndentPush(tag)
|
||||
if exists('g:html_indent_tags')
|
||||
let g:html_indent_tags = g:html_indent_tags.'\|'.a:tag
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
"}}}
|
||||
|
||||
func! HtmlIndent_CheckUserSettings() "{{{
|
||||
if exists("g:html_indent_inctags")
|
||||
call s:AddITags(split(g:html_indent_inctags, ","))
|
||||
endif
|
||||
if exists("g:html_indent_autotags")
|
||||
call s:RemoveITags(split(g:html_indent_autotags, ","))
|
||||
endif
|
||||
|
||||
let indone = {"zero": 0
|
||||
\,"auto": "indent(prevnonblank(v:lnum-1))"
|
||||
\,"inc": "b:indent.blocktagind + s:ShiftWidth()"}
|
||||
if exists("g:html_indent_script1")
|
||||
let s:js1indent = get(indone, g:html_indent_script1, indone.zero)
|
||||
endif
|
||||
if exists("g:html_indent_style1")
|
||||
let s:css1indent = get(indone, g:html_indent_style1, indone.zero)
|
||||
endif
|
||||
endfunc "}}}
|
||||
|
||||
" Init Script Vars "{{{
|
||||
let s:usestate = 1
|
||||
let s:css1indent = 0
|
||||
let s:js1indent = 0
|
||||
" not to be changed:
|
||||
let s:endtags = [0,0,0,0,0,0,0,0] " some places unused
|
||||
let s:newstate = {}
|
||||
let s:countonly = 0
|
||||
"}}}
|
||||
func! s:AddITags(taglist) "{{{
|
||||
for itag in a:taglist
|
||||
let s:indent_tags[itag] = 1
|
||||
let s:indent_tags['/'.itag] = -1
|
||||
endfor
|
||||
endfunc "}}}
|
||||
func! s:AddBlockTag(tag, id, ...) "{{{
|
||||
if !(a:id >= 2 && a:id < 2+len(s:endtags))
|
||||
return
|
||||
endif
|
||||
let s:indent_tags[a:tag] = a:id
|
||||
if a:0 == 0
|
||||
let s:indent_tags['/'.a:tag] = -a:id
|
||||
let s:endtags[a:id-2] = "</".a:tag.">"
|
||||
else
|
||||
let g:html_indent_tags = a:tag
|
||||
let s:indent_tags[a:1] = -a:id
|
||||
let s:endtags[a:id-2] = a:1
|
||||
endif
|
||||
endfun
|
||||
|
||||
|
||||
" [-- <ELEMENT ? - - ...> --]
|
||||
call <SID>HtmlIndentPush('a')
|
||||
call <SID>HtmlIndentPush('abbr')
|
||||
call <SID>HtmlIndentPush('acronym')
|
||||
call <SID>HtmlIndentPush('address')
|
||||
call <SID>HtmlIndentPush('b')
|
||||
call <SID>HtmlIndentPush('bdo')
|
||||
call <SID>HtmlIndentPush('big')
|
||||
call <SID>HtmlIndentPush('blockquote')
|
||||
call <SID>HtmlIndentPush('button')
|
||||
call <SID>HtmlIndentPush('caption')
|
||||
call <SID>HtmlIndentPush('center')
|
||||
call <SID>HtmlIndentPush('cite')
|
||||
call <SID>HtmlIndentPush('code')
|
||||
call <SID>HtmlIndentPush('colgroup')
|
||||
call <SID>HtmlIndentPush('del')
|
||||
call <SID>HtmlIndentPush('dfn')
|
||||
call <SID>HtmlIndentPush('dir')
|
||||
call <SID>HtmlIndentPush('div')
|
||||
call <SID>HtmlIndentPush('dl')
|
||||
call <SID>HtmlIndentPush('em')
|
||||
call <SID>HtmlIndentPush('fieldset')
|
||||
call <SID>HtmlIndentPush('font')
|
||||
call <SID>HtmlIndentPush('form')
|
||||
call <SID>HtmlIndentPush('frameset')
|
||||
call <SID>HtmlIndentPush('h1')
|
||||
call <SID>HtmlIndentPush('h2')
|
||||
call <SID>HtmlIndentPush('h3')
|
||||
call <SID>HtmlIndentPush('h4')
|
||||
call <SID>HtmlIndentPush('h5')
|
||||
call <SID>HtmlIndentPush('h6')
|
||||
call <SID>HtmlIndentPush('i')
|
||||
call <SID>HtmlIndentPush('iframe')
|
||||
call <SID>HtmlIndentPush('ins')
|
||||
call <SID>HtmlIndentPush('kbd')
|
||||
call <SID>HtmlIndentPush('label')
|
||||
call <SID>HtmlIndentPush('legend')
|
||||
call <SID>HtmlIndentPush('map')
|
||||
call <SID>HtmlIndentPush('menu')
|
||||
call <SID>HtmlIndentPush('noframes')
|
||||
call <SID>HtmlIndentPush('noscript')
|
||||
call <SID>HtmlIndentPush('object')
|
||||
call <SID>HtmlIndentPush('ol')
|
||||
call <SID>HtmlIndentPush('optgroup')
|
||||
" call <SID>HtmlIndentPush('pre')
|
||||
call <SID>HtmlIndentPush('q')
|
||||
call <SID>HtmlIndentPush('s')
|
||||
call <SID>HtmlIndentPush('samp')
|
||||
call <SID>HtmlIndentPush('script')
|
||||
call <SID>HtmlIndentPush('select')
|
||||
call <SID>HtmlIndentPush('small')
|
||||
call <SID>HtmlIndentPush('span')
|
||||
call <SID>HtmlIndentPush('strong')
|
||||
call <SID>HtmlIndentPush('style')
|
||||
call <SID>HtmlIndentPush('sub')
|
||||
call <SID>HtmlIndentPush('sup')
|
||||
call <SID>HtmlIndentPush('table')
|
||||
call <SID>HtmlIndentPush('textarea')
|
||||
call <SID>HtmlIndentPush('title')
|
||||
call <SID>HtmlIndentPush('tt')
|
||||
call <SID>HtmlIndentPush('u')
|
||||
call <SID>HtmlIndentPush('ul')
|
||||
call <SID>HtmlIndentPush('var')
|
||||
|
||||
" New HTML 5 elements
|
||||
call <SID>HtmlIndentPush('article')
|
||||
call <SID>HtmlIndentPush('aside')
|
||||
call <SID>HtmlIndentPush('audio')
|
||||
call <SID>HtmlIndentPush('canvas')
|
||||
call <SID>HtmlIndentPush('command')
|
||||
call <SID>HtmlIndentPush('datalist')
|
||||
call <SID>HtmlIndentPush('details')
|
||||
call <SID>HtmlIndentPush('embed')
|
||||
call <SID>HtmlIndentPush('figcaption')
|
||||
call <SID>HtmlIndentPush('figure')
|
||||
call <SID>HtmlIndentPush('footer')
|
||||
call <SID>HtmlIndentPush('header')
|
||||
call <SID>HtmlIndentPush('hgroup')
|
||||
call <SID>HtmlIndentPush('keygen')
|
||||
call <SID>HtmlIndentPush('mark')
|
||||
call <SID>HtmlIndentPush('meter')
|
||||
call <SID>HtmlIndentPush('nav')
|
||||
call <SID>HtmlIndentPush('output')
|
||||
call <SID>HtmlIndentPush('progress')
|
||||
call <SID>HtmlIndentPush('rp')
|
||||
call <SID>HtmlIndentPush('rt')
|
||||
call <SID>HtmlIndentPush('ruby')
|
||||
call <SID>HtmlIndentPush('section')
|
||||
call <SID>HtmlIndentPush('source')
|
||||
call <SID>HtmlIndentPush('summary')
|
||||
call <SID>HtmlIndentPush('time')
|
||||
call <SID>HtmlIndentPush('video')
|
||||
call <SID>HtmlIndentPush('bdi')
|
||||
|
||||
" [-- <ELEMENT ? O O ...> --]
|
||||
if !exists('g:html_indent_strict')
|
||||
call <SID>HtmlIndentPush('body')
|
||||
call <SID>HtmlIndentPush('head')
|
||||
call <SID>HtmlIndentPush('html')
|
||||
call <SID>HtmlIndentPush('tbody')
|
||||
endfunc "}}}
|
||||
func! s:RemoveITags(taglist) "{{{
|
||||
" remove itags (protect blocktags from being removed)
|
||||
for itag in a:taglist
|
||||
if !has_key(s:indent_tags, itag) || s:indent_tags[itag] != 1
|
||||
continue
|
||||
endif
|
||||
unlet s:indent_tags[itag]
|
||||
if itag =~ '^\w\+$'
|
||||
unlet s:indent_tags["/".itag]
|
||||
endif
|
||||
endfor
|
||||
endfunc "}}}
|
||||
" Add Indent Tags: {{{
|
||||
if !exists("s:indent_tags")
|
||||
let s:indent_tags = {}
|
||||
endif
|
||||
|
||||
" old tags:
|
||||
call s:AddITags(['a', 'abbr', 'acronym', 'address', 'b', 'bdo', 'big',
|
||||
\ 'blockquote', 'button', 'caption', 'center', 'cite', 'code', 'colgroup',
|
||||
\ 'del', 'dfn', 'dir', 'div', 'dl', 'em', 'fieldset', 'font', 'form',
|
||||
\ 'frameset', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'i', 'iframe', 'ins', 'kbd',
|
||||
\ 'label', 'legend', 'map', 'menu', 'noframes', 'noscript', 'object', 'ol',
|
||||
\ 'optgroup', 'q', 's', 'samp', 'select', 'small', 'span', 'strong', 'sub',
|
||||
\ 'sup', 'table', 'textarea', 'title', 'tt', 'u', 'ul', 'var', 'th', 'td',
|
||||
\ 'tr', 'tfoot', 'thead'])
|
||||
|
||||
" [-- <ELEMENT ? O - ...> --]
|
||||
if !exists('g:html_indent_strict_table')
|
||||
call <SID>HtmlIndentPush('th')
|
||||
call <SID>HtmlIndentPush('td')
|
||||
call <SID>HtmlIndentPush('tr')
|
||||
call <SID>HtmlIndentPush('tfoot')
|
||||
call <SID>HtmlIndentPush('thead')
|
||||
endif
|
||||
" tags added 2011 Sep 09 (especially HTML5 tags):
|
||||
call s:AddITags(['area', 'article', 'aside', 'audio', 'bdi', 'canvas',
|
||||
\ 'command', 'datalist', 'details', 'embed', 'figure', 'footer',
|
||||
\ 'header', 'group', 'keygen', 'mark', 'math', 'meter', 'nav', 'output',
|
||||
\ 'progress', 'ruby', 'section', 'svg', 'texture', 'time', 'video',
|
||||
\ 'wbr', 'text'])
|
||||
|
||||
delfun <SID>HtmlIndentPush
|
||||
"}}}
|
||||
" Add Block Tags: contain alien content "{{{
|
||||
call s:AddBlockTag('pre', 2)
|
||||
call s:AddBlockTag('script', 3)
|
||||
call s:AddBlockTag('style', 4)
|
||||
call s:AddBlockTag('<!--', 5, '-->')
|
||||
"}}}
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo-=C
|
||||
func! s:CountITags(...) "{{{
|
||||
|
||||
" [-- count indent-increasing tags of line a:lnum --]
|
||||
fun! <SID>HtmlIndentOpen(lnum, pattern)
|
||||
let s = substitute('x'.getline(a:lnum),
|
||||
\ '.\{-}\(\(<\)\('.a:pattern.'\)\>\)', "\1", 'g')
|
||||
let s = substitute(s, "[^\1].*$", '', '')
|
||||
return strlen(s)
|
||||
endfun
|
||||
|
||||
" [-- count indent-decreasing tags of line a:lnum --]
|
||||
fun! <SID>HtmlIndentClose(lnum, pattern)
|
||||
let s = substitute('x'.getline(a:lnum),
|
||||
\ '.\{-}\(\(<\)/\('.a:pattern.'\)\>>\)', "\1", 'g')
|
||||
let s = substitute(s, "[^\1].*$", '', '')
|
||||
return strlen(s)
|
||||
endfun
|
||||
|
||||
" [-- count indent-increasing '{' of (java|css) line a:lnum --]
|
||||
fun! <SID>HtmlIndentOpenAlt(lnum)
|
||||
return strlen(substitute(getline(a:lnum), '[^{]\+', '', 'g'))
|
||||
endfun
|
||||
|
||||
" [-- count indent-decreasing '}' of (java|css) line a:lnum --]
|
||||
fun! <SID>HtmlIndentCloseAlt(lnum)
|
||||
return strlen(substitute(getline(a:lnum), '[^}]\+', '', 'g'))
|
||||
endfun
|
||||
|
||||
" [-- return the sum of indents respecting the syntax of a:lnum --]
|
||||
fun! <SID>HtmlIndentSum(lnum, style)
|
||||
if a:style == match(getline(a:lnum), '^\s*</')
|
||||
if a:style == match(getline(a:lnum), '^\s*</\<\('.g:html_indent_tags.'\)\>')
|
||||
let open = <SID>HtmlIndentOpen(a:lnum, g:html_indent_tags)
|
||||
let close = <SID>HtmlIndentClose(a:lnum, g:html_indent_tags)
|
||||
if 0 != open || 0 != close
|
||||
return open - close
|
||||
endif
|
||||
" relative indent steps for current line [unit &sw]:
|
||||
let s:curind = 0
|
||||
" relative indent steps for next line [unit &sw]:
|
||||
let s:nextrel = 0
|
||||
|
||||
if a:0==0
|
||||
let s:block = s:newstate.block
|
||||
let tmpline = substitute(s:curline, '<\zs\/\=\w\+\>\|<!--\|-->', '\=s:CheckTag(submatch(0))', 'g')
|
||||
if s:block == 3
|
||||
let s:newstate.scripttype = s:GetScriptType(matchstr(tmpline, '\C.*<SCRIPT\>\zs[^>]*'))
|
||||
endif
|
||||
let s:newstate.block = s:block
|
||||
else
|
||||
let s:block = 0 " assume starting outside of a block
|
||||
let s:countonly = 1 " don't change state
|
||||
let tmpline = substitute(s:altline, '<\zs\/\=\w\+\>\|<!--\|-->', '\=s:CheckTag(submatch(0))', 'g')
|
||||
let s:countonly = 0
|
||||
endif
|
||||
if '' != &syntax &&
|
||||
\ synIDattr(synID(a:lnum, 1, 1), 'name') =~ '\(css\|java\).*' &&
|
||||
\ synIDattr(synID(a:lnum, strlen(getline(a:lnum)), 1), 'name')
|
||||
\ =~ '\(css\|java\).*'
|
||||
if a:style == match(getline(a:lnum), '^\s*}')
|
||||
return <SID>HtmlIndentOpenAlt(a:lnum) - <SID>HtmlIndentCloseAlt(a:lnum)
|
||||
endfunc "}}}
|
||||
func! s:CheckTag(itag) "{{{
|
||||
" "tag" or "/tag" or "<!--" or "-->"
|
||||
let ind = get(s:indent_tags, a:itag)
|
||||
if ind == -1
|
||||
" closing tag
|
||||
if s:block != 0
|
||||
" ignore itag within a block
|
||||
return "foo"
|
||||
endif
|
||||
if s:nextrel == 0
|
||||
let s:curind -= 1
|
||||
else
|
||||
let s:nextrel -= 1
|
||||
endif
|
||||
" if s:curind >= 1
|
||||
" let s:curind -= 1
|
||||
" else
|
||||
" let s:nextrel -= 1
|
||||
" endif
|
||||
elseif ind == 1
|
||||
" opening tag
|
||||
if s:block != 0
|
||||
return "foo"
|
||||
endif
|
||||
let s:nextrel += 1
|
||||
elseif ind != 0
|
||||
" block-tag (opening or closing)
|
||||
return s:Blocktag(a:itag, ind)
|
||||
endif
|
||||
" else ind==0 (other tag found): keep indent
|
||||
return "foo" " no matter
|
||||
endfunc "}}}
|
||||
func! s:Blocktag(blocktag, ind) "{{{
|
||||
if a:ind > 0
|
||||
" a block starts here
|
||||
if s:block != 0
|
||||
" already in a block (nesting) - ignore
|
||||
" especially ignore comments after other blocktags
|
||||
return "foo"
|
||||
endif
|
||||
let s:block = a:ind " block type
|
||||
if s:countonly
|
||||
return "foo"
|
||||
endif
|
||||
let s:newstate.blocklnr = v:lnum
|
||||
" save allover indent for the endtag
|
||||
let s:newstate.blocktagind = b:indent.baseindent + (s:nextrel + s:curind) * s:ShiftWidth()
|
||||
if a:ind == 3
|
||||
return "SCRIPT" " all except this must be lowercase
|
||||
" line is to be checked again for the type attribute
|
||||
endif
|
||||
else
|
||||
let s:block = 0
|
||||
" we get here if starting and closing block-tag on same line
|
||||
endif
|
||||
return "foo"
|
||||
endfunc "}}}
|
||||
func! s:GetScriptType(str) "{{{
|
||||
if a:str == "" || a:str =~ "java"
|
||||
return "javascript"
|
||||
else
|
||||
return ""
|
||||
endif
|
||||
endfunc "}}}
|
||||
|
||||
func! s:FreshState(lnum) "{{{
|
||||
" Look back in the file (lines 1 to a:lnum-1) to calc a state for line
|
||||
" a:lnum. A state is to know ALL relevant details about the lines
|
||||
" 1..a:lnum-1, initial calculating (here!) can be slow, but updating is
|
||||
" fast (incremental).
|
||||
" State:
|
||||
" lnum last indented line == prevnonblank(a:lnum - 1)
|
||||
" block = 0 a:lnum located within special tag: 0:none, 2:<pre>,
|
||||
" 3:<script>, 4:<style>, 5:<!--
|
||||
" baseindent use this indent for line a:lnum as a start - kind of
|
||||
" autoindent (if block==0)
|
||||
" scripttype = '' type attribute of a script tag (if block==3)
|
||||
" blocktagind indent for current opening (get) and closing (set)
|
||||
" blocktag (if block!=0)
|
||||
" blocklnr lnum of starting blocktag (if block!=0)
|
||||
" inattr line {lnum} starts with attributes of a tag
|
||||
let state = {}
|
||||
let state.lnum = prevnonblank(a:lnum - 1)
|
||||
let state.scripttype = ""
|
||||
let state.blocktagind = -1
|
||||
let state.block = 0
|
||||
let state.baseindent = 0
|
||||
let state.blocklnr = 0
|
||||
let state.inattr = 0
|
||||
|
||||
if state.lnum == 0
|
||||
return state
|
||||
endif
|
||||
return 0
|
||||
endfun
|
||||
|
||||
fun! HtmlIndentGet(lnum)
|
||||
" Find a non-empty line above the current line.
|
||||
let lnum = prevnonblank(a:lnum - 1)
|
||||
" Heuristic:
|
||||
" remember startline state.lnum
|
||||
" look back for <pre, </pre, <script, </script, <style, </style tags
|
||||
" remember stopline
|
||||
" if opening tag found,
|
||||
" assume a:lnum within block
|
||||
" else
|
||||
" look back in result range (stopline, startline) for comment
|
||||
" \ delimiters (<!--, -->)
|
||||
" if comment opener found,
|
||||
" assume a:lnum within comment
|
||||
" else
|
||||
" assume usual html for a:lnum
|
||||
" if a:lnum-1 has a closing comment
|
||||
" look back to get indent of comment opener
|
||||
" FI
|
||||
|
||||
" Hit the start of the file, use zero indent.
|
||||
if lnum == 0
|
||||
return 0
|
||||
" look back for blocktag
|
||||
call cursor(a:lnum, 1)
|
||||
let [stopline, stopcol] = searchpos('\c<\zs\/\=\%(pre\>\|script\>\|style\>\)', "bW")
|
||||
" fugly ... why isn't there searchstr()
|
||||
let tagline = tolower(getline(stopline))
|
||||
let blocktag = matchstr(tagline, '\/\=\%(pre\>\|script\>\|style\>\)', stopcol-1)
|
||||
if stopline > 0 && blocktag[0] != "/"
|
||||
" opening tag found, assume a:lnum within block
|
||||
let state.block = s:indent_tags[blocktag]
|
||||
if state.block == 3
|
||||
let state.scripttype = s:GetScriptType(matchstr(tagline, '\>[^>]*', stopcol))
|
||||
endif
|
||||
let state.blocklnr = stopline
|
||||
" check preceding tags in the line:
|
||||
let s:altline = tagline[: stopcol-2]
|
||||
call s:CountITags(1)
|
||||
let state.blocktagind = indent(stopline) + (s:curind + s:nextrel) * s:ShiftWidth()
|
||||
return state
|
||||
elseif stopline == state.lnum
|
||||
" handle special case: previous line (= state.lnum) contains a
|
||||
" closing blocktag which is preceded by line-noise;
|
||||
" blocktag == "/..."
|
||||
let swendtag = match(tagline, '^\s*</') >= 0
|
||||
if !swendtag
|
||||
let [bline, bcol] = searchpos('<'.blocktag[1:].'\>', "bW")
|
||||
let s:altline = tolower(getline(bline)[: bcol-2])
|
||||
call s:CountITags(1)
|
||||
let state.baseindent = indent(bline) + (s:nextrel+s:curline) * s:ShiftWidth()
|
||||
return state
|
||||
endif
|
||||
endif
|
||||
|
||||
let restore_ic = &ic
|
||||
setlocal ic " ignore case
|
||||
" else look back for comment
|
||||
call cursor(a:lnum, 1)
|
||||
let [comline, comcol, found] = searchpos('\(<!--\)\|-->', 'bpW', stopline)
|
||||
if found == 2
|
||||
" comment opener found, assume a:lnum within comment
|
||||
let state.block = 5
|
||||
let state.blocklnr = comline
|
||||
" check preceding tags in the line:
|
||||
let s:altline = tolower(getline(comline)[: comcol-2])
|
||||
call s:CountITags(1)
|
||||
let state.blocktagind = indent(comline) + (s:curind + s:nextrel) * s:ShiftWidth()
|
||||
return state
|
||||
endif
|
||||
|
||||
" [-- special handling for <pre>: no indenting --]
|
||||
if getline(a:lnum) =~ '\c</pre>'
|
||||
\ || 0 < searchpair('\c<pre>', '', '\c</pre>', 'nWb')
|
||||
\ || 0 < searchpair('\c<pre>', '', '\c</pre>', 'nW')
|
||||
" we're in a line with </pre> or inside <pre> ... </pre>
|
||||
if restore_ic == 0
|
||||
setlocal noic
|
||||
" else within usual html
|
||||
let s:altline = tolower(getline(state.lnum))
|
||||
" check a:lnum-1 for closing comment (we need indent from the opening line)
|
||||
let comcol = stridx(s:altline, '-->')
|
||||
if comcol >= 0
|
||||
call cursor(state.lnum, comcol+1)
|
||||
let [comline, comcol] = searchpos('<!--', 'bW')
|
||||
if comline == state.lnum
|
||||
let s:altline = s:altline[: comcol-2]
|
||||
else
|
||||
let s:altline = tolower(getline(comline)[: comcol-2])
|
||||
endif
|
||||
call s:CountITags(1)
|
||||
let state.baseindent = indent(comline) + (s:nextrel+s:curline) * s:ShiftWidth()
|
||||
return state
|
||||
" TODO check tags that follow "-->"
|
||||
endif
|
||||
|
||||
" else no comments
|
||||
call s:CountITags(1)
|
||||
let state.baseindent = indent(state.lnum) + s:nextrel * s:ShiftWidth()
|
||||
" line starts with end tag
|
||||
let swendtag = match(s:altline, '^\s*</') >= 0
|
||||
if !swendtag
|
||||
let state.baseindent += s:curind * s:ShiftWidth()
|
||||
endif
|
||||
return state
|
||||
endfunc "}}}
|
||||
|
||||
func! s:Alien2() "{{{
|
||||
" <pre> block
|
||||
return -1
|
||||
endfunc "}}}
|
||||
func! s:Alien3() "{{{
|
||||
" <script> javascript
|
||||
if prevnonblank(v:lnum-1) == b:indent.blocklnr
|
||||
" indent for the first line after <script>
|
||||
return eval(s:js1indent)
|
||||
endif
|
||||
if b:indent.scripttype == "javascript"
|
||||
return cindent(v:lnum)
|
||||
else
|
||||
return -1
|
||||
endif
|
||||
endfunc "}}}
|
||||
func! s:Alien4() "{{{
|
||||
" <style>
|
||||
if prevnonblank(v:lnum-1) == b:indent.blocklnr
|
||||
" indent for first content line
|
||||
return eval(s:css1indent)
|
||||
endif
|
||||
return s:CSSIndent()
|
||||
endfunc
|
||||
|
||||
" [-- special handling for <javascript>: use cindent --]
|
||||
let js = '<script.*type\s*=\s*.*java'
|
||||
|
||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
" by Tye Zdrojewski <zdro@yahoo.com>, 05 Jun 2006
|
||||
" ZDR: This needs to be an AND (we are 'after the start of the pair' AND
|
||||
" we are 'before the end of the pair'). Otherwise, indentation
|
||||
" before the start of the script block will be affected; the end of
|
||||
" the pair will still match if we are before the beginning of the
|
||||
" pair.
|
||||
"
|
||||
if 0 < searchpair(js, '', '</script>', 'nWb')
|
||||
\ && 0 < searchpair(js, '', '</script>', 'nW')
|
||||
" we're inside javascript
|
||||
if getline(lnum) !~ js && getline(a:lnum) != '</script>'
|
||||
if restore_ic == 0
|
||||
setlocal noic
|
||||
func! s:CSSIndent() "{{{
|
||||
" adopted $VIMRUNTIME/indent/css.vim
|
||||
if getline(v:lnum) =~ '^\s*[*}]'
|
||||
return cindent(v:lnum)
|
||||
endif
|
||||
let minline = b:indent.blocklnr
|
||||
let pnum = s:css_prevnoncomment(v:lnum - 1, minline)
|
||||
if pnum <= minline
|
||||
" < is to catch errors
|
||||
" indent for first content line after comments
|
||||
return eval(s:css1indent)
|
||||
endif
|
||||
let ind = indent(pnum) + s:css_countbraces(pnum, 1) * s:ShiftWidth()
|
||||
let pline = getline(pnum)
|
||||
if pline =~ '}\s*$'
|
||||
let ind -= (s:css_countbraces(pnum, 0) - (pline =~ '^\s*}')) * s:ShiftWidth()
|
||||
endif
|
||||
return ind
|
||||
endfunc "}}}
|
||||
func! s:css_prevnoncomment(lnum, stopline) "{{{
|
||||
" caller starts from a line a:lnum-1 that is not a comment
|
||||
let lnum = prevnonblank(a:lnum)
|
||||
let ccol = match(getline(lnum), '\*/')
|
||||
if ccol < 0
|
||||
return lnum
|
||||
endif
|
||||
call cursor(lnum, ccol+1)
|
||||
let lnum = search('/\*', 'bW', a:stopline)
|
||||
if indent(".") == virtcol(".")-1
|
||||
return prevnonblank(lnum-1)
|
||||
else
|
||||
return lnum
|
||||
endif
|
||||
endfunc "}}}
|
||||
func! s:css_countbraces(lnum, count_open) "{{{
|
||||
let brs = substitute(getline(a:lnum),'[''"].\{-}[''"]\|/\*.\{-}\*/\|/\*.*$\|[^{}]','','g')
|
||||
let n_open = 0
|
||||
let n_close = 0
|
||||
for brace in split(brs, '\zs')
|
||||
if brace == "{"
|
||||
let n_open += 1
|
||||
elseif brace == "}"
|
||||
if n_open > 0
|
||||
let n_open -= 1
|
||||
else
|
||||
let n_close += 1
|
||||
endif
|
||||
return cindent(a:lnum)
|
||||
endif
|
||||
endfor
|
||||
return a:count_open ? n_open : n_close
|
||||
endfunc "}}}
|
||||
|
||||
"}}}
|
||||
func! s:Alien5() "{{{
|
||||
" <!-- -->
|
||||
return -1
|
||||
endfunc "}}}
|
||||
|
||||
func! HtmlIndent() "{{{
|
||||
let s:curline = tolower(getline(v:lnum))
|
||||
let indentunit = s:ShiftWidth()
|
||||
|
||||
let s:newstate = {}
|
||||
let s:newstate.lnum = v:lnum
|
||||
|
||||
" does the line start with a closing tag?
|
||||
let swendtag = match(s:curline, '^\s*</') >= 0
|
||||
|
||||
if prevnonblank(v:lnum-1) == b:indent.lnum && s:usestate
|
||||
" use state (continue from previous line)
|
||||
else
|
||||
" start over (know nothing)
|
||||
let b:indent = s:FreshState(v:lnum)
|
||||
endif
|
||||
|
||||
if getline(lnum) =~ '\c</pre>'
|
||||
" line before the current line a:lnum contains
|
||||
" a closing </pre>. --> search for line before
|
||||
" starting <pre> to restore the indent.
|
||||
let preline = prevnonblank(search('\c<pre>', 'bW') - 1)
|
||||
if preline > 0
|
||||
if restore_ic == 0
|
||||
setlocal noic
|
||||
if b:indent.block >= 2
|
||||
" within block
|
||||
let endtag = s:endtags[b:indent.block-2]
|
||||
let blockend = stridx(s:curline, endtag)
|
||||
if blockend >= 0
|
||||
" block ends here
|
||||
let s:newstate.block = 0
|
||||
" calc indent for REST OF LINE (may start more blocks):
|
||||
let s:curline = strpart(s:curline, blockend+strlen(endtag))
|
||||
call s:CountITags()
|
||||
if swendtag && b:indent.block != 5
|
||||
let indent = b:indent.blocktagind + s:curind * indentunit
|
||||
let s:newstate.baseindent = indent + s:nextrel * indentunit
|
||||
else
|
||||
let indent = s:Alien{b:indent.block}()
|
||||
let s:newstate.baseindent = b:indent.blocktagind + s:nextrel * indentunit
|
||||
endif
|
||||
return indent(preline)
|
||||
call extend(b:indent, s:newstate, "force")
|
||||
return indent
|
||||
else
|
||||
" block continues
|
||||
" indent this line with alien method
|
||||
let indent = s:Alien{b:indent.block}()
|
||||
call extend(b:indent, s:newstate, "force")
|
||||
return indent
|
||||
endif
|
||||
else
|
||||
" not within a block - within usual html
|
||||
" if < 2 then always 0
|
||||
let s:newstate.block = b:indent.block
|
||||
call s:CountITags()
|
||||
if swendtag
|
||||
let indent = b:indent.baseindent + s:curind * indentunit
|
||||
let s:newstate.baseindent = indent + s:nextrel * indentunit
|
||||
else
|
||||
let indent = b:indent.baseindent
|
||||
let s:newstate.baseindent = indent + (s:curind + s:nextrel) * indentunit
|
||||
endif
|
||||
call extend(b:indent, s:newstate, "force")
|
||||
return indent
|
||||
endif
|
||||
|
||||
let ind = <SID>HtmlIndentSum(lnum, -1)
|
||||
let ind = ind + <SID>HtmlIndentSum(a:lnum, 0)
|
||||
endfunc "}}}
|
||||
|
||||
if restore_ic == 0
|
||||
setlocal noic
|
||||
endif
|
||||
" check user settings (first time), clear cpo, Modeline: {{{1
|
||||
|
||||
" DEBUG:
|
||||
com! -nargs=* IndHtmlLocal <args>
|
||||
|
||||
return indent(lnum) + (&sw * ind)
|
||||
endfun
|
||||
call HtmlIndent_CheckUserSettings()
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
unlet s:cpo_save
|
||||
|
||||
" [-- EOF <runtime>/indent/html.vim --]
|
||||
" vim:set fdm=marker ts=8:
|
||||
|
@ -0,0 +1,26 @@
|
||||
keymap files for Vim
|
||||
|
||||
One of these files is loaded when the 'keymap' option is set.
|
||||
|
||||
The name of the file consists of these parts:
|
||||
|
||||
{language}[-{layout}][_{encoding}].vim
|
||||
|
||||
{language} Name of the language (e.g., "hebrew", "greek")
|
||||
|
||||
{layout} Optional: name of the keyboard layout (e.g., "spanish",
|
||||
"russian3"). When omitted the layout of the standard
|
||||
US-english keyboard is assumed.
|
||||
|
||||
{encoding} Optional: character encoding for which this keymap works.
|
||||
When omitted the "normal" encoding for the language is
|
||||
assumed.
|
||||
Use the value the 'encoding' option: lower case only, use '-'
|
||||
instead of '_'.
|
||||
|
||||
Each file starts with a header, naming the maintainer and the date when it was
|
||||
last changed. If you find a problem in a keymap file, check if you have the
|
||||
most recent version. If necessary, report a problem to the maintainer.
|
||||
|
||||
The format of the keymap lines below "loadkeymap" is explained in the Vim help
|
||||
files, see ":help keymap-file-format".
|
@ -0,0 +1,2 @@
|
||||
" Assume 'encoding' is set to "latin1" while actually iso-8859-6 is used
|
||||
source <sfile>:p:h/arabic_utf-8.vim
|
@ -0,0 +1,86 @@
|
||||
" Vim Keymap file for Arabic
|
||||
" Maintainer : Arabic Support group <support-at-arabeyes.org>
|
||||
" Created by : Nadim Shaikli <nadim-at-arabeyes.org>
|
||||
" Last Updated : 2003 Apr 26
|
||||
" This is for a standard Microsoft Arabic keyboard layout.
|
||||
|
||||
" Use this short name in the status line.
|
||||
let b:keymap_name = "arab"
|
||||
|
||||
loadkeymap
|
||||
q <char-0x0636> " (1590) - DAD
|
||||
w <char-0x0635> " (1589) - SAD
|
||||
e <char-0x062b> " (1579) - THEH
|
||||
r <char-0x0642> " (1602) - QAF
|
||||
t <char-0x0641> " (1601) - FEH
|
||||
y <char-0x063a> " (1594) - GHAIN
|
||||
u <char-0x0639> " (1593) - AIN
|
||||
i <char-0x0647> " (1607) - HEH
|
||||
o <char-0x062e> " (1582) - KHAH
|
||||
p <char-0x062d> " (1581) - HAH
|
||||
[ <char-0x062c> " (1580) - JEEM
|
||||
] <char-0x062f> " (1583) - DAL
|
||||
a <char-0x0634> " (1588) - SHEEN
|
||||
s <char-0x0633> " (1587) - SEEN
|
||||
d <char-0x064a> " (1610) - YEH
|
||||
f <char-0x0628> " (1576) - BEH
|
||||
g <char-0x0644> " (1604) - LAM
|
||||
h <char-0x0627> " (1575) - ALEF
|
||||
j <char-0x062a> " (1578) - TEH
|
||||
k <char-0x0646> " (1606) - NOON
|
||||
l <char-0x0645> " (1605) - MEEM
|
||||
; <char-0x0643> " (1603) - KAF
|
||||
' <char-0x0637> " (1591) - TAH
|
||||
z <char-0x0626> " (1574) - YEH with HAMZA ABOVE
|
||||
x <char-0x0621> " (1569) - HAMZA
|
||||
c <char-0x0624> " (1572) - WAW with HAMZA ABOVE
|
||||
v <char-0x0631> " (1585) - REH
|
||||
b <char-0x0644><char-0x0627> " (1604/1575) - LAA (lam alef)
|
||||
n <char-0x0649> " (1609) - ALEF MAKSURA
|
||||
m <char-0x0629> " (1577) - TEH MARBUTA
|
||||
, <char-0x0648> " (1608) - WAW
|
||||
. <char-0x0632> " (1586) - ZAIN
|
||||
/ <char-0x0638> " (1592) - ZAH
|
||||
0 <char-0x0660> " (1632) - Arabic 0
|
||||
1 <char-0x0661> " (1633) - Arabic 1
|
||||
2 <char-0x0662> " (1634) - Arabic 2
|
||||
3 <char-0x0663> " (1635) - Arabic 3
|
||||
4 <char-0x0664> " (1636) - Arabic 4
|
||||
5 <char-0x0665> " (1637) - Arabic 5
|
||||
6 <char-0x0666> " (1638) - Arabic 6
|
||||
7 <char-0x0667> " (1639) - Arabic 7
|
||||
8 <char-0x0668> " (1640) - Arabic 8
|
||||
9 <char-0x0669> " (1641) - Arabic 9
|
||||
` <char-0x0630> " (1584) - THAL
|
||||
~ <char-0x0651> " (1617) - Tanween -- SHADDA
|
||||
Q <char-0x064e> " (1614) - Tanween -- FATHA
|
||||
W <char-0x064b> " (1611) - Tanween -- FATHATAN
|
||||
E <char-0x064f> " (1615) - Tanween -- DAMMA
|
||||
R <char-0x064c> " (1612) - Tanween -- DAMMATAN
|
||||
T <char-0x0644><char-0x0625> " (1604/1573) - LAA with HAMZA BELOW
|
||||
Y <char-0x0625> " (1573) - ALEF with HAMZA BELOW
|
||||
U <char-0x0060> " (96) - ASCII -- `
|
||||
I <char-0x00f7> " (247) - ASCII suppl -- div
|
||||
O <char-0x00d7> " (215) - ASCII suppl -- mul
|
||||
P <char-0x061b> " (1563) - Arabic Semicolon
|
||||
{ <char-0x003c> " (60) - ASCII -- <
|
||||
} <char-0x003e> " (62) - ASCII -- >
|
||||
A <char-0x0650> " (1616) - Tanween -- KASRA
|
||||
S <char-0x064d> " (1613) - Tanween -- KASRATAN
|
||||
D <char-0x005b> " (91) - ASCII -- [
|
||||
F <char-0x005d> " (93) - ASCII -- ]
|
||||
G <char-0x0644><char-0x0623> " (1604/1571) - LAA with HAMZA ABOVE
|
||||
H <char-0x0623> " (1571) - ALEF with HAMZA ABOVE
|
||||
J <char-0x0640> " (1600) - TATWEEL
|
||||
K <char-0x060c> " (1548) - Arabic Comma
|
||||
L <char-0x002f> " (47) - ASCII -- /
|
||||
Z <char-0x007e> " (126) - ASCII -- ~
|
||||
X <char-0x0652> " (1618) - Tanween -- SUKUN
|
||||
C <char-0x007b> " (123) - ASCII -- {
|
||||
V <char-0x007d> " (125) - ASCII -- }
|
||||
B <char-0x0644><char-0x0622> " (1604/1570) - LAA with MADDA ABOVE
|
||||
N <char-0x0622> " (1570) - ALEF with MADDA ABOVE
|
||||
M <char-0x0027> " (39) - ASCII -- '
|
||||
< <char-0x002c> " (44) - ASCII -- ,
|
||||
> <char-0x002e> " (46) - ASCII -- .
|
||||
? <char-0x061f> " (1567) - Arabic Question Mark
|
@ -0,0 +1,16 @@
|
||||
let s:encoding = &enc
|
||||
if s:encoding == 'latin1'
|
||||
if has("unix")
|
||||
let s:encoding = 'iso-8859-2'
|
||||
else
|
||||
let s:encoding = 'cp1250'
|
||||
endif
|
||||
endif
|
||||
|
||||
if s:encoding == 'utf-8'
|
||||
source <sfile>:p:h/croatian_utf-8.vim
|
||||
elseif s:encoding == 'cp1250'
|
||||
source <sfile>:p:h/croatian_cp1250.vim
|
||||
else
|
||||
source <sfile>:p:h/croatian_iso-8859-2.vim
|
||||
endif
|
@ -0,0 +1 @@
|
||||
source <sfile>:p:h/czech_utf-8.vim
|
@ -0,0 +1,86 @@
|
||||
" Maintainer: Štěpán Němec <stepnem@gmail.com>
|
||||
" Last Changed: Fri 25 Jun 2010 22:08:43 CEST
|
||||
|
||||
let b:keymap_name = "czech"
|
||||
|
||||
loadkey
|
||||
0 é
|
||||
9 í
|
||||
8 á
|
||||
7 ý
|
||||
6 ž
|
||||
5 ř
|
||||
4 č
|
||||
3 š
|
||||
2 ě
|
||||
1 +
|
||||
` ;
|
||||
) 0
|
||||
( 9
|
||||
* 8
|
||||
& 7
|
||||
^ 6
|
||||
% 5
|
||||
$ 4
|
||||
# 3
|
||||
@ 2
|
||||
! 1
|
||||
] )
|
||||
} (
|
||||
[ ú
|
||||
{ /
|
||||
' §
|
||||
\" !
|
||||
; ů
|
||||
: "
|
||||
/ -
|
||||
? _
|
||||
> :
|
||||
< ?
|
||||
| '
|
||||
~u ů
|
||||
~U Ů
|
||||
\\a ä
|
||||
\\e ë
|
||||
\\i ï
|
||||
\\o ö
|
||||
\\u ü
|
||||
\\z ÿ
|
||||
\\A Ä
|
||||
\\E Ë
|
||||
\\I Ï
|
||||
\\O Ö
|
||||
\\U Ü
|
||||
\\Z Ÿ
|
||||
=a á
|
||||
=e é
|
||||
=i í
|
||||
=o ó
|
||||
=u ú
|
||||
=z ý
|
||||
=A Á
|
||||
=E É
|
||||
=I Í
|
||||
=O Ó
|
||||
=U Ú
|
||||
=Z Ý
|
||||
+c č
|
||||
+d ď
|
||||
+e ě
|
||||
+n ň
|
||||
+r ř
|
||||
+s š
|
||||
+t ť
|
||||
+y ž
|
||||
+C Č
|
||||
+D Ď
|
||||
+E Ě
|
||||
+N Ň
|
||||
+R Ř
|
||||
+S Š
|
||||
+T Ť
|
||||
+Y Ž
|
||||
y z
|
||||
Y Z
|
||||
z y
|
||||
Z Y
|
@ -0,0 +1,81 @@
|
||||
" Maintainer: Ashish SHUKLA <wahjava@members.fsf.org>
|
||||
" Last Changed: 2009 Jul 04
|
||||
"
|
||||
" All characters are ASCII, conversion to another encoding (e.g., UTF-8)
|
||||
" should work.
|
||||
|
||||
let b:keymap_name = "en-dv"
|
||||
|
||||
loadkeymap
|
||||
q '
|
||||
w ,
|
||||
e .
|
||||
r p
|
||||
t y
|
||||
y f
|
||||
u g
|
||||
i c
|
||||
o r
|
||||
p l
|
||||
[ /
|
||||
] =
|
||||
\\ \\
|
||||
a a
|
||||
s o
|
||||
d e
|
||||
f u
|
||||
g i
|
||||
h d
|
||||
j h
|
||||
k t
|
||||
l n
|
||||
; s
|
||||
' -
|
||||
z ;
|
||||
x q
|
||||
c j
|
||||
v k
|
||||
b x
|
||||
n b
|
||||
m m
|
||||
, w
|
||||
. v
|
||||
/ z
|
||||
Z :
|
||||
X Q
|
||||
C J
|
||||
V K
|
||||
B X
|
||||
N B
|
||||
M M
|
||||
< W
|
||||
> V
|
||||
? Z
|
||||
A A
|
||||
S O
|
||||
D E
|
||||
F U
|
||||
G I
|
||||
H D
|
||||
J H
|
||||
K T
|
||||
L N
|
||||
: S
|
||||
\" _
|
||||
Q "
|
||||
W <
|
||||
E >
|
||||
R P
|
||||
T Y
|
||||
Y F
|
||||
U G
|
||||
I C
|
||||
O R
|
||||
P L
|
||||
{ ?
|
||||
} +
|
||||
| |
|
||||
- [
|
||||
_ {
|
||||
= ]
|
||||
+ }
|
@ -0,0 +1 @@
|
||||
source <sfile>:p:h/esperanto_utf-8.vim
|
@ -0,0 +1,58 @@
|
||||
" Esperanto keymap for utf-8
|
||||
" Maintainer: A.J.Mechelynck <antoine.mechelynck@skynet.be>
|
||||
" Last Changed: Sat 2003 Mar 15 05:23
|
||||
|
||||
" This keymap adds the special consonants of Esperanto to an existing Latin
|
||||
" keyboard.
|
||||
"
|
||||
" All keys same as usual, except:
|
||||
" ^ followed by any of CcGgHhJjSs adds a circumflex on top of the letter
|
||||
" ù and Ù replaces the grave accent by a breve
|
||||
" any of CcGgHhJjSsUu followed by X or x maps to consonant with ^ or Uu with
|
||||
" breve.
|
||||
|
||||
" short keymap name for statusline
|
||||
let b:keymap_name = "Eo"
|
||||
|
||||
" make cursor bright green when keymap is active
|
||||
"highlight lCursor guifg=NONE guibg=#00E000
|
||||
|
||||
" The following digraphs are already defined
|
||||
" digraph C> 0x0108 c> 0x0109 G> 0x011C g> 0x011D H> 0x0124 h> 0x0125
|
||||
" digraph J> 0x0134 j> 0x0135 S> 0x015C s> 0x015D U( 0x016C u( 0x016D
|
||||
|
||||
scriptencoding latin1
|
||||
|
||||
loadkeymap
|
||||
|
||||
^C <Char-0x0108> " (264) UPPERCASE C WITH CIRCUMFLEX
|
||||
^c <Char-0x0109> " (265) LOWERCASE c WITH CIRCUMFLEX
|
||||
^G <Char-0x011C> " (284) UPPERCASE G WITH CIRCUMFLEX
|
||||
^g <Char-0x011D> " (285) LOWERCASE g WITH CIRCUMFLEX
|
||||
^H <Char-0x0124> " (292) UPPERCASE H WITH CIRCUMFLEX
|
||||
^h <Char-0x0125> " (293) LOWERCASE h WITH CIRCUMFLEX
|
||||
^J <Char-0x0134> " (308) UPPERCASE J WITH CIRCUMFLEX
|
||||
^j <Char-0x0135> " (309) LOWERCASE j WITH CIRCUMFLEX
|
||||
^S <Char-0x015C> " (348) UPPERCASE S WITH CIRCUMFLEX
|
||||
^s <Char-0x015D> " (349) LOWERCASE s WITH CIRCUMFLEX
|
||||
Ù <Char-0x016C> " (364) UPPERCASE U WITH BREVE
|
||||
ù <Char-0x016D> " (365) LOWERCASE u WITH BREVE
|
||||
|
||||
CX <Char-0x0108> " (264) UPPERCASE C WITH CIRCUMFLEX
|
||||
Cx <Char-0x0108> " (264) UPPERCASE C WITH CIRCUMFLEX
|
||||
cx <Char-0x0109> " (265) LOWERCASE c WITH CIRCUMFLEX
|
||||
GX <Char-0x011C> " (284) UPPERCASE G WITH CIRCUMFLEX
|
||||
Gx <Char-0x011C> " (284) UPPERCASE G WITH CIRCUMFLEX
|
||||
gx <Char-0x011D> " (285) LOWERCASE g WITH CIRCUMFLEX
|
||||
HX <Char-0x0124> " (292) UPPERCASE H WITH CIRCUMFLEX
|
||||
Hx <Char-0x0124> " (292) UPPERCASE H WITH CIRCUMFLEX
|
||||
hx <Char-0x0125> " (293) LOWERCASE h WITH CIRCUMFLEX
|
||||
JX <Char-0x0134> " (308) UPPERCASE J WITH CIRCUMFLEX
|
||||
Jx <Char-0x0134> " (308) UPPERCASE J WITH CIRCUMFLEX
|
||||
jx <Char-0x0135> " (309) LOWERCASE j WITH CIRCUMFLEX
|
||||
SX <Char-0x015C> " (348) UPPERCASE S WITH CIRCUMFLEX
|
||||
Sx <Char-0x015C> " (348) UPPERCASE S WITH CIRCUMFLEX
|
||||
sx <Char-0x015D> " (349) LOWERCASE s WITH CIRCUMFLEX
|
||||
UX <Char-0x016C> " (364) UPPERCASE U WITH BREVE
|
||||
Ux <Char-0x016C> " (364) UPPERCASE U WITH BREVE
|
||||
ux <Char-0x016D> " (365) LOWERCASE u WITH BREVE
|
@ -0,0 +1,7 @@
|
||||
" Assume 'encoding' is set to "latin1" while actually cp1253 or iso-8859-7 is
|
||||
" being used
|
||||
if has("win16") || has("win32") || has("win32unix")
|
||||
source <sfile>:p:h/greek_cp1253.vim
|
||||
else
|
||||
source <sfile>:p:h/greek_iso-8859-7.vim
|
||||
endif
|
@ -0,0 +1,16 @@
|
||||
let encoding = &enc
|
||||
if encoding == 'latin1'
|
||||
if has("unix")
|
||||
let encoding = 'iso-8859-8'
|
||||
else
|
||||
let encoding = 'cp1255'
|
||||
endif
|
||||
endif
|
||||
|
||||
if encoding == 'utf-8'
|
||||
source <sfile>:p:h/hebrew_utf-8.vim
|
||||
elseif encoding == 'cp1255'
|
||||
source <sfile>:p:h/hebrew_cp1255.vim
|
||||
else
|
||||
source <sfile>:p:h/hebrew_iso-8859-8.vim
|
||||
endif
|
@ -0,0 +1,41 @@
|
||||
" Vim Keymap file for hebrew
|
||||
" Maintainer : Ron Aaron <ron@ronware.org>
|
||||
" Last Updated: Wed 28 Feb 2001 21:28:51
|
||||
" This is the standard Israeli keyboard layout
|
||||
|
||||
" Use this short name in the status line.
|
||||
let b:keymap_name = "heb"
|
||||
|
||||
loadkeymap
|
||||
a <char-249> " ù - shin
|
||||
b <char-240> " ð - nun
|
||||
c <char-225> " á - bet
|
||||
d <char-226> " â - gimel
|
||||
e <char-247> " ÷ - qof
|
||||
f <char-235> " ë - kaf
|
||||
g <char-242> " ò - ayin
|
||||
h <char-233> " é - yod
|
||||
i <char-239> " ï - final nun
|
||||
j <char-231> " ç - het
|
||||
k <char-236> " ì - lamed
|
||||
l <char-234> " ê - final kaf
|
||||
m <char-246> " ö - tsadi
|
||||
n <char-238> " î - mem
|
||||
o <char-237> " í - final mem
|
||||
p <char-244> " ô - pe
|
||||
q / " / - slash
|
||||
r <char-248> " ø - resh
|
||||
s <char-227> " ã - dalet
|
||||
t <char-224> " à - alef
|
||||
u <char-229> " å - vav
|
||||
v <char-228> " ä - he
|
||||
w ' " ' - single-quote
|
||||
x <char-241> " ñ - samekh
|
||||
y <char-232> " è - tet
|
||||
z <char-230> " æ - zayin
|
||||
, <char-250> " ú - tav
|
||||
. <char-245> " õ - final tsadi
|
||||
; <char-243> " ó - final pe
|
||||
' , " , - comma
|
||||
/ . " . - period
|
||||
` ; " ; - semicolon
|
@ -0,0 +1,16 @@
|
||||
let encoding = &enc
|
||||
if encoding == 'latin1'
|
||||
if has("unix")
|
||||
let encoding = 'iso-8859-8'
|
||||
else
|
||||
let encoding = 'cp1255'
|
||||
endif
|
||||
endif
|
||||
|
||||
if encoding == 'utf-8'
|
||||
source <sfile>:p:h/hebrewp_utf-8.vim
|
||||
elseif encoding == 'cp1255'
|
||||
source <sfile>:p:h/hebrewp_cp1255.vim
|
||||
else
|
||||
source <sfile>:p:h/hebrewp_iso-8859-8.vim
|
||||
endif
|
@ -0,0 +1,58 @@
|
||||
" codepage 1255 on Windows is equal to ISO 8859-8 but it
|
||||
" adds in the vowel points, known as 'niqud', which are present in
|
||||
" CP1255: Note: there are several 'standards' for placement of the vowel
|
||||
" points, and I ignored all of them. Since we can input English by simply
|
||||
" pressing Ctrl-^ and eliminating this map, I saw no reason to try to use
|
||||
" exotic key locations. If you don't like it, that's just too bad :-)
|
||||
let b:keymap_name = "hebp"
|
||||
loadkeymap
|
||||
K <char-234> " final kaf
|
||||
M <char-237> " final mem
|
||||
N <char-239> " final nun
|
||||
P <char-243> " final pe
|
||||
T <char-232> " tet
|
||||
X <char-245> " final tsadi
|
||||
a <char-224> " alef
|
||||
b <char-225> " bet
|
||||
d <char-227> " dalet
|
||||
g <char-226> " gimel
|
||||
h <char-228> " he
|
||||
j <char-231> " het
|
||||
k <char-235> " kaf
|
||||
l <char-236> " lamed
|
||||
m <char-238> " mem
|
||||
n <char-240> " nun
|
||||
s <char-241> " samekh
|
||||
p <char-244> " pe
|
||||
q <char-247> " qof
|
||||
r <char-248> " resh
|
||||
t <char-250> " tav
|
||||
u <char-242> " ayin
|
||||
v <char-229> " vav
|
||||
w <char-249> " shin
|
||||
x <char-246> " tsadi
|
||||
y <char-233> " yod
|
||||
z <char-230> " zayin
|
||||
" vowels:
|
||||
A: <Char-192> " sheva
|
||||
HE <Char-193> " hataf segol
|
||||
HA <Char-194> " hataf patah
|
||||
HO <Char-195> " hataf qamats
|
||||
I <Char-196> " hiriq
|
||||
AY <Char-197> " tsere
|
||||
E <Char-198> " segol
|
||||
AA <Char-199> " patah
|
||||
AO <Char-200> " qamats
|
||||
O <Char-201> " holam
|
||||
U <Char-203> " qubuts
|
||||
D <Char-204> " dagesh
|
||||
]T <Char-205> " meteg
|
||||
]Q <Char-206> " maqaf
|
||||
]R <ÌChar-207> " rafe
|
||||
]p <Char-208> " paseq
|
||||
SR <Char-209> " shin-dot
|
||||
SL <Char-210> " sin-dot
|
||||
]P <Char-211> " sof-pasuq
|
||||
VV <Char-212> " double-vav
|
||||
VY <Char-213> " vav-yod
|
||||
YY <Char-214> " yod-yod
|
@ -0,0 +1,36 @@
|
||||
" Vim Keymap file for hebrew
|
||||
" Maintainer : Ron Aaron <ron@ronware.org>
|
||||
" Last Updated: Sun 10 Feb 2002 11:50:56
|
||||
" This is my version of a phonetic Hebrew
|
||||
|
||||
" Use this short name in the status line.
|
||||
let b:keymap_name = "hebp"
|
||||
|
||||
loadkeymap
|
||||
K <char-234> " final kaf
|
||||
M <char-237> " final mem
|
||||
N <char-239> " final nun
|
||||
P <char-243> " final pe
|
||||
T <char-232> " tet
|
||||
X <char-245> " final tsadi
|
||||
a <char-224> " alef
|
||||
b <char-225> " bet
|
||||
d <char-227> " dalet
|
||||
g <char-226> " gimel
|
||||
h <char-228> " he
|
||||
j <char-231> " het
|
||||
k <char-235> " kaf
|
||||
l <char-236> " lamed
|
||||
m <char-238> " mem
|
||||
n <char-240> " nun
|
||||
s <char-241> " samekh
|
||||
p <char-244> " pe
|
||||
q <char-247> " qof
|
||||
r <char-248> " resh
|
||||
t <char-250> " tav
|
||||
u <char-242> " ayin
|
||||
v <char-229> " vav
|
||||
w <char-249> " shin
|
||||
x <char-246> " tsadi
|
||||
y <char-233> " yod
|
||||
z <char-230> " zayin
|
@ -0,0 +1,122 @@
|
||||
" Vim Keymap file for hebrew
|
||||
" Maintainer : Ron Aaron <ron@ronware.org>
|
||||
" Last Updated: Thu 08 Mar 2001 13:49:01
|
||||
" This is my version of a phonetic Hebrew
|
||||
|
||||
" Use this short name in the status line.
|
||||
let b:keymap_name = "hebp"
|
||||
loadkeymap
|
||||
w <char-0x5e9> " ù - shin
|
||||
n <char-0x5e0> " ð - nun
|
||||
b <char-0x5d1> " á - bet
|
||||
g <char-0x5d2> " â - gimel
|
||||
q <char-0x5e7> " ÷ - qof
|
||||
k <char-0x5db> " ë - kaf
|
||||
g <char-0x5e2> " ò - ayin
|
||||
y <char-0x5d9> " é - yod
|
||||
N <char-0x5df> " ï - final nun
|
||||
j <char-0x5d7> " ç - het
|
||||
l <char-0x5dc> " ì - lamed
|
||||
K <char-0x5da> " ê - final kaf
|
||||
x <char-0x5e6> " ö - tsadi
|
||||
m <char-0x5de> " î - mem
|
||||
M <char-0x5dd> " í - final mem
|
||||
p <char-0x5e4> " ô - pe
|
||||
r <char-0x5e8> " ø - resh
|
||||
d <char-0x5d3> " ã - dalet
|
||||
a <char-0x5d0> " à - alef
|
||||
v <char-0x5d5> " å - vav
|
||||
h <char-0x5d4> " ä - he
|
||||
s <char-0x5e1> " ñ - samekh
|
||||
T <char-0x5d8> " è - tet
|
||||
z <char-0x5d6> " æ - zayin
|
||||
t <char-0x5ea> " ú - tav
|
||||
X <char-0x5e5> " õ - final tsadi
|
||||
P <char-0x5e3> " ó - final pe
|
||||
A: <Char-0x5b0> " sheva
|
||||
HE <Char-0x5b1> " hataf segol
|
||||
HA <Char-0x5b2> " hataf patah
|
||||
HO <Char-0x5b3> " hataf qamats
|
||||
I <Char-0x5b4> " hiriq
|
||||
AY <Char-0x5b5> " tsere
|
||||
E <Char-0x5b6> " segol
|
||||
AA <Char-0x5b7> " patah
|
||||
AO <Char-0x5b8> " qamats
|
||||
O <Char-0x5b9> " holam
|
||||
U <Char-0x5bb> " qubuts
|
||||
D <Char-0x5bc> " dagesh
|
||||
]T <Char-0x5bd> " meteg
|
||||
]Q <Char-0x5be> " maqaf
|
||||
]R <ÌChar-0x5bf> " rafe
|
||||
]p <Char-0x5c0> " paseq
|
||||
SR <Char-0x5c1> " shin-dot
|
||||
SL <Char-0x5c2> " sin-dot
|
||||
]P <Char-0x5c3> " sof-pasuq
|
||||
VV <Char-0x5f0> " double-vav
|
||||
VY <Char-0x5f1> " vav-yod
|
||||
YY <Char-0x5f2> " yod-yod
|
||||
" cantillation:
|
||||
C: <Char-0x591> " etnahta
|
||||
Cs <Char-0x592> " segol
|
||||
CS <Char-0x593> " shalshelet
|
||||
Cz <Char-0x594> " zaqef qatan
|
||||
CZ <Char-0x595> " zaqef gadol
|
||||
Ct <Char-0x596> " tipeha
|
||||
Cr <Char-0x597> " revia
|
||||
Cq <Char-0x598> " zarqa
|
||||
Cp <Char-0x599> " pashta
|
||||
C! <Char-0x59a> " yetiv
|
||||
Cv <Char-0x59b> " tevir
|
||||
Cg <Char-0x59c> " geresh
|
||||
C* <Char-0x59d> " geresh qadim
|
||||
CG <Char-0x59e> " gershayim
|
||||
CP <Char-0x59f> " qarnei-parah
|
||||
Cy <Char-0x5aa> " yerach-ben-yomo
|
||||
Co <Char-0x5ab> " ole
|
||||
Ci <Char-0x5ac> " iluy
|
||||
Cd <Char-0x5ad> " dehi
|
||||
Cn <Char-0x5ae> " zinor
|
||||
CC <Char-0x5af> " masora circle
|
||||
X` <Char-0xfb20> " Alternative `ayin
|
||||
X' <Char-0xfb21> " Alternative 'alef
|
||||
X-d <Char-0xfb22> " Alternative dalet
|
||||
X-h <Char-0xfb23> " Alternative he
|
||||
X-k <Char-0xfb24> " Alternative kaf
|
||||
X-l <Char-0xfb25> " Alternative lamed
|
||||
X-m <Char-0xfb26> " Alternative mem-sofit
|
||||
X-r <Char-0xfb27> " Alternative resh
|
||||
X-t <Char-0xfb28> " Alternative tav
|
||||
X-+ <Char-0xfb29> " Alternative plus
|
||||
XW <Char-0xfb2a> " shin+shin-dot
|
||||
Xw <Char-0xfb2b> " shin+sin-dot
|
||||
X..W <Char-0xfb2c> " shin+shin-dot+dagesh
|
||||
X..w <Char-0xfb2d> " shin+sin-dot+dagesh
|
||||
XA <Char-0xfb2e> " alef+patah
|
||||
XO <Char-0xfb2f> " alef+qamats
|
||||
XI <Char-0xfb30> " alef+hiriq (mapiq)
|
||||
X.b <Char-0xfb31> " bet+dagesh
|
||||
X.g <Char-0xfb32> " gimel+dagesh
|
||||
X.d <Char-0xfb33> " dalet+dagesh
|
||||
X.h <Char-0xfb34> " he+dagesh
|
||||
Xu <Char-0xfb35> " vav+dagesh
|
||||
X.z <Char-0xfb36> " zayin+dagesh
|
||||
X.T <Char-0xfb38> " tet+dagesh
|
||||
X.y <Char-0xfb39> " yud+dagesh
|
||||
X.K <Char-0xfb3a> " kaf sofit+dagesh
|
||||
X.k <Char-0xfb3b> " kaf+dagesh
|
||||
X.l <Char-0xfb3c> " lamed+dagesh
|
||||
X.m <Char-0xfb3e> " mem+dagesh
|
||||
X.n <Char-0xfb40> " nun+dagesh
|
||||
X.s <Char-0xfb41> " samech+dagesh
|
||||
X.P <Char-0xfb43> " pe sofit+dagesh
|
||||
X.p <Char-0xfb44> " pe+dagesh
|
||||
X.x <Char-0xfb46> " tsadi+dagesh
|
||||
X.q <Char-0xfb47> " qof+dagesh
|
||||
X.r <Char-0xfb48> " resh+dagesh
|
||||
X.w <Char-0xfb49> " shin+dagesh
|
||||
X.t <Char-0xfb4a> " tav+dagesh
|
||||
Xo <Char-0xfb4b> " vav+holam
|
||||
XRb <Char-0xfb4c> " bet+rafe
|
||||
XRk <Char-0xfb4d> " kaf+rafe
|
||||
XRp <Char-0xfb4e> " pe+rafe
|
||||
Xal <Char-0xfb4f> " alef-lamed
|
@ -0,0 +1,31 @@
|
||||
" Vim Keymap file for lithuanian characters, phonetic layout 'Baltic'
|
||||
" Useful mainly with utf-8 but may work with other encodings
|
||||
|
||||
" Maintainer: Alex Jakushev <Alex.Jakushev@kemek.lt>
|
||||
" Last Changed: 2002 Apr 12
|
||||
|
||||
" All characters are given literally, conversion to another encoding (e.g.,
|
||||
" UTF-8) should work.
|
||||
scriptencoding utf-8
|
||||
|
||||
let b:keymap_name = "lt"
|
||||
|
||||
loadkeymap
|
||||
! Ą LITHUANIAN CAPITAL A NOSINE
|
||||
@ Č LITHUANIAN CAPITAL CH
|
||||
# Ę LITHUANIAN CAPITAL E NOSINE
|
||||
$ Ė LITHUANIAN CAPITAL E SU TASKU
|
||||
% Į LITHUANIAN CAPITAL I NOSINE
|
||||
^ Š LITHUANIAN CAPITAL SH
|
||||
& Ų LITHUANIAN CAPITAL U NOSINE
|
||||
* Ū LITHUANIAN CAPITAL U SU BRUKSNIU
|
||||
+ Ž LITHUANIAN CAPITAL ZH
|
||||
1 ą LITHUANIAN LOWERCASE A NOSINE
|
||||
2 č LITHUANIAN LOWERCASE CH
|
||||
3 ę LITHUANIAN LOWERCASE E NOSINE
|
||||
4 ė LITHUANIAN LOWERCASE E SU TASKU
|
||||
5 į LITHUANIAN LOWERCASE I NOSINE
|
||||
6 š LITHUANIAN LOWERCASE SH
|
||||
7 ų LITHUANIAN LOWERCASE U NOSINE
|
||||
8 ū LITHUANIAN LOWERCASE U SU BRUKSNIU
|
||||
= ž LITHUANIAN LOWERCASE ZH
|
@ -0,0 +1,37 @@
|
||||
" Maintainer: Laszlo Zavaleta <zavaleta@smartchat.net.au>
|
||||
" Last Changed: 2003 Aug 08
|
||||
" it has all the accents and a few of the character alterations
|
||||
|
||||
let b:keymap = "magyar"
|
||||
|
||||
loadkey
|
||||
` í
|
||||
~ Í
|
||||
! '
|
||||
@ "
|
||||
# +
|
||||
$ !
|
||||
^ /
|
||||
& =
|
||||
* (
|
||||
( )
|
||||
0 ö
|
||||
) Ö
|
||||
- ü
|
||||
_ Ü
|
||||
= ó
|
||||
+ Ó
|
||||
\\ ű
|
||||
| Ű
|
||||
[ ő
|
||||
{ Ő
|
||||
] ú
|
||||
} Ú
|
||||
; é
|
||||
: É
|
||||
' á
|
||||
\" Á
|
||||
/ -
|
||||
< ?
|
||||
> :
|
||||
? _
|
@ -0,0 +1,8 @@
|
||||
let encoding = &enc
|
||||
if encoding == ''
|
||||
let encoding = 'utf-8'
|
||||
endif
|
||||
|
||||
if encoding == 'utf-8'
|
||||
source <sfile>:p:h/persian-iranian_utf-8.vim
|
||||
endif
|
@ -0,0 +1,53 @@
|
||||
" Vim Keymap file for Hanyu Pinyin tone marks through numbers.
|
||||
" Maintainer: Fredrik Roubert <roubert@df.lth.se>
|
||||
" Last Changed: February 15, 2004
|
||||
|
||||
" All characters are given literally.
|
||||
scriptencoding utf-8
|
||||
|
||||
" Use this short name in the status line.
|
||||
let b:keymap_name = "py"
|
||||
|
||||
loadkeymap
|
||||
a0 a
|
||||
a1 ā
|
||||
a2 á
|
||||
a3 ǎ
|
||||
a4 à
|
||||
a5 a
|
||||
e0 e
|
||||
e1 ē
|
||||
e2 é
|
||||
e3 ě
|
||||
e4 è
|
||||
e5 e
|
||||
i0 i
|
||||
i1 ī
|
||||
i2 í
|
||||
i3 ǐ
|
||||
i4 ì
|
||||
i5 i
|
||||
o0 o
|
||||
o1 ō
|
||||
o2 ó
|
||||
o3 ǒ
|
||||
o4 ò
|
||||
o5 o
|
||||
u0 u
|
||||
u1 ū
|
||||
u2 ú
|
||||
u3 ǔ
|
||||
u4 ù
|
||||
u5 u
|
||||
ü0 ü
|
||||
ü1 ǖ
|
||||
ü2 ǘ
|
||||
ü3 ǚ
|
||||
ü4 ǜ
|
||||
ü5 ü
|
||||
v0 ü
|
||||
v1 ǖ
|
||||
v2 ǘ
|
||||
v3 ǚ
|
||||
v4 ǜ
|
||||
v5 ü
|
@ -0,0 +1,27 @@
|
||||
" Polish letters under VIM >= 6
|
||||
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
||||
" Last changed: 2005 Jan 12
|
||||
" Current version: 1.0.2
|
||||
" History:
|
||||
" 2005.01.12 1.0.2 keymap_name shortened, added Current version, History
|
||||
" 2005.01.10 1.0.1 un*x line ends for all files
|
||||
" 2005.01.09 1.0.0 Initial release
|
||||
|
||||
let encoding = &enc
|
||||
if encoding == 'latin1'
|
||||
if has("unix")
|
||||
let encoding = 'iso-8859-2'
|
||||
else
|
||||
let encoding = 'cp1250'
|
||||
endif
|
||||
endif
|
||||
|
||||
if encoding == 'utf-8'
|
||||
source <sfile>:p:h/polish-slash_utf-8.vim
|
||||
elseif encoding == 'cp1250'
|
||||
source <sfile>:p:h/polish-slash_cp1250.vim
|
||||
elseif encoding == 'iso-8859-2'
|
||||
source <sfile>:p:h/polish-slash_iso-8859-2.vim
|
||||
else
|
||||
source <sfile>:p:h/polish-slash_cp852.vim
|
||||
endif
|
@ -0,0 +1,39 @@
|
||||
" Polish letters keymap for cp1250
|
||||
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
||||
" Last Changed: 2005 Jan 12
|
||||
" Current version: 1.0.2
|
||||
" History: see polish-slash.vim
|
||||
|
||||
" This keymap adds the special Polish letters
|
||||
" to an existing Latin keyboard.
|
||||
" All chars as usual except:
|
||||
" Polish:
|
||||
" instead of AltGr+{acelnosxz} you ve to use "/" followed by {acelnosxz}
|
||||
|
||||
" short keymap name for statusline
|
||||
let b:keymap_name = "PL-slash-WIN"
|
||||
|
||||
scriptencoding latin1
|
||||
|
||||
loadkeymap
|
||||
|
||||
" Polish letters
|
||||
/a <Char-185> " LATIN SMALL LETTER A WITH OGONEK
|
||||
/c <Char-230> " LATIN SMALL LETTER C WITH ACUTE
|
||||
/e <Char-234> " LATIN SMALL LETTER E WITH OGONEK
|
||||
/l <Char-179> " LATIN SMALL LETTER L WITH STROKE
|
||||
/n <Char-241> " LATIN SMALL LETTER N WITH ACUTE
|
||||
/o <Char-243> " LATIN SMALL LETTER O WITH ACUTE
|
||||
/s <Char-156> " LATIN SMALL LETTER S WITH ACUTE
|
||||
/x <Char-159> " LATIN SMALL LETTER Z WITH ACUTE
|
||||
/z <Char-191> " LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
|
||||
/A <Char-165> " LATIN CAPITAL LETTER A WITH OGONEK
|
||||
/C <Char-198> " LATIN CAPITAL LETTER C WITH ACUTE
|
||||
/E <Char-202> " LATIN CAPITAL LETTER E WITH OGONEK
|
||||
/L <Char-163> " LATIN CAPITAL LETTER L WITH STROKE
|
||||
/N <Char-209> " LATIN CAPITAL LETTER N WITH ACUTE
|
||||
/O <Char-211> " LATIN CAPITAL LETTER O WITH ACUTE
|
||||
/S <Char-140> " LATIN CAPITAL LETTER S WITH ACUTE
|
||||
/X <Char-143> " LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
/Z <Char-175> " LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
@ -0,0 +1,39 @@
|
||||
" Polish letters keymap for cp852
|
||||
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
||||
" Last Changed: 2005 Jan 12
|
||||
" Current version: 1.0.2
|
||||
" History: see polish-slash.vim
|
||||
|
||||
" This keymap adds the special Polish letters
|
||||
" to an existing Latin keyboard.
|
||||
" All chars as usual except:
|
||||
" Polish:
|
||||
" instead of AltGr+{acelnosxz} you ve to use "/" followed by {acelnosxz}
|
||||
|
||||
" short keymap name for statusline
|
||||
let b:keymap_name = "PL-slash-DOS"
|
||||
|
||||
scriptencoding latin1
|
||||
|
||||
loadkeymap
|
||||
|
||||
" Polish letters
|
||||
/a <Char-165> " LATIN SMALL LETTER A WITH OGONEK
|
||||
/c <Char-134> " LATIN SMALL LETTER C WITH ACUTE
|
||||
/e <Char-169> " LATIN SMALL LETTER E WITH OGONEK
|
||||
/l <Char-136> " LATIN SMALL LETTER L WITH STROKE
|
||||
/n <Char-228> " LATIN SMALL LETTER N WITH ACUTE
|
||||
/o <Char-162> " LATIN SMALL LETTER O WITH ACUTE
|
||||
/s <Char-152> " LATIN SMALL LETTER S WITH ACUTE
|
||||
/x <Char-171> " LATIN SMALL LETTER Z WITH ACUTE
|
||||
/z <Char-190> " LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
|
||||
/A <Char-164> " LATIN CAPITAL LETTER A WITH OGONEK
|
||||
/C <Char-143> " LATIN CAPITAL LETTER C WITH ACUTE
|
||||
/E <Char-168> " LATIN CAPITAL LETTER E WITH OGONEK
|
||||
/L <Char-157> " LATIN CAPITAL LETTER L WITH STROKE
|
||||
/N <Char-227> " LATIN CAPITAL LETTER N WITH ACUTE
|
||||
/O <Char-224> " LATIN CAPITAL LETTER O WITH ACUTE
|
||||
/S <Char-151> " LATIN CAPITAL LETTER S WITH ACUTE
|
||||
/X <Char-141> " LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
/Z <Char-189> " LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
@ -0,0 +1,39 @@
|
||||
" Polish letters keymap for iso-8859-2
|
||||
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
||||
" Last Changed: 2005 Jan 12
|
||||
" Current version: 1.0.2
|
||||
" History: polish-slash.vim
|
||||
|
||||
" This keymap adds the special Polish letters
|
||||
" to an existing Latin keyboard.
|
||||
" All chars as usual except:
|
||||
" Polish:
|
||||
" instead of AltGr+{acelnosxz} you ve to use "/" followed by {acelnosxz}
|
||||
|
||||
" short keymap name for statusline
|
||||
let b:keymap_name = "PL-slash-ISO"
|
||||
|
||||
scriptencoding latin1
|
||||
|
||||
loadkeymap
|
||||
|
||||
" Polish letters
|
||||
/a <Char-177> " LATIN SMALL LETTER A WITH OGONEK
|
||||
/c <Char-230> " LATIN SMALL LETTER C WITH ACUTE
|
||||
/e <Char-234> " LATIN SMALL LETTER E WITH OGONEK
|
||||
/l <Char-179> " LATIN SMALL LETTER L WITH STROKE
|
||||
/n <Char-241> " LATIN SMALL LETTER N WITH ACUTE
|
||||
/o <Char-243> " LATIN SMALL LETTER O WITH ACUTE
|
||||
/s <Char-182> " LATIN SMALL LETTER S WITH ACUTE
|
||||
/x <Char-188> " LATIN SMALL LETTER Z WITH ACUTE
|
||||
/z <Char-191> " LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
|
||||
/A <Char-161> " LATIN CAPITAL LETTER A WITH OGONEK
|
||||
/C <Char-198> " LATIN CAPITAL LETTER C WITH ACUTE
|
||||
/E <Char-202> " LATIN CAPITAL LETTER E WITH OGONEK
|
||||
/L <Char-163> " LATIN CAPITAL LETTER L WITH STROKE
|
||||
/N <Char-209> " LATIN CAPITAL LETTER N WITH ACUTE
|
||||
/O <Char-211> " LATIN CAPITAL LETTER O WITH ACUTE
|
||||
/S <Char-166> " LATIN CAPITAL LETTER S WITH ACUTE
|
||||
/X <Char-172> " LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
/Z <Char-175> " LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
@ -0,0 +1,39 @@
|
||||
" Polish letters keymap for utf-8
|
||||
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
||||
" Last Changed: 2005 Jan 12
|
||||
" Current version: 1.0.2
|
||||
" History: see polish-slash.vim
|
||||
|
||||
" This keymap adds the special Polish letters
|
||||
" to an existing Latin keyboard.
|
||||
" All chars as usual except:
|
||||
" Polish:
|
||||
" instead of AltGr+{acelnosxz} you ve to use "/" followed by {acelnosxz}
|
||||
|
||||
" short keymap name for statusline
|
||||
let b:keymap_name = "PL-slash-UTF"
|
||||
|
||||
scriptencoding latin1
|
||||
|
||||
loadkeymap
|
||||
|
||||
" Polish letters
|
||||
/a <Char-0x0105> " LATIN SMALL LETTER A WITH OGONEK
|
||||
/c <Char-0x0107> " LATIN SMALL LETTER C WITH ACUTE
|
||||
/e <Char-0x0119> " LATIN SMALL LETTER E WITH OGONEK
|
||||
/l <Char-0x0142> " LATIN SMALL LETTER L WITH STROKE
|
||||
/n <Char-0x0144> " LATIN SMALL LETTER N WITH ACUTE
|
||||
/o <Char-0x00f3> " LATIN SMALL LETTER O WITH ACUTE
|
||||
/s <Char-0x015b> " LATIN SMALL LETTER S WITH ACUTE
|
||||
/x <Char-0x017a> " LATIN SMALL LETTER Z WITH ACUTE
|
||||
/z <Char-0x017c> " LATIN SMALL LETTER Z WITH DOT ABOVE
|
||||
|
||||
/A <Char-0x0104> " LATIN CAPITAL LETTER A WITH OGONEK
|
||||
/C <Char-0x0106> " LATIN CAPITAL LETTER C WITH ACUTE
|
||||
/E <Char-0x0118> " LATIN CAPITAL LETTER E WITH OGONEK
|
||||
/L <Char-0x0141> " LATIN CAPITAL LETTER L WITH STROKE
|
||||
/N <Char-0x0143> " LATIN CAPITAL LETTER N WITH ACUTE
|
||||
/O <Char-0x00d3> " LATIN CAPITAL LETTER O WITH ACUTE
|
||||
/S <Char-0x015a> " LATIN CAPITAL LETTER S WITH ACUTE
|
||||
/X <Char-0x0179> " LATIN CAPITAL LETTER Z WITH ACUTE
|
||||
/Z <Char-0x017b> " LATIN CAPITAL LETTER Z WITH DOT ABOVE
|
@ -0,0 +1 @@
|
||||
source <sfile>:p:h/serbian-latin_utf-8.vim
|
@ -0,0 +1,43 @@
|
||||
" Vim Keymap file for Serbian characters, classical variant, UTF-8 encoding
|
||||
"
|
||||
" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
|
||||
" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-latin-UTF-8.vim
|
||||
" Last Changed: 2002 Mar 29
|
||||
|
||||
scriptencoding UTF-8
|
||||
|
||||
let b:keymap_name = "serbian-UTF-8"
|
||||
|
||||
loadkeymap
|
||||
Y Z
|
||||
{ Š
|
||||
} Đ
|
||||
y z
|
||||
[ š
|
||||
] đ
|
||||
: Č
|
||||
\" Ć
|
||||
\| Ž
|
||||
; č
|
||||
' ć
|
||||
\\ ž
|
||||
"Z Y
|
||||
"z y
|
||||
< ;
|
||||
> :
|
||||
/ -
|
||||
_ ?
|
||||
,, „
|
||||
'' ”
|
||||
|
||||
E$ <char-0x20AC> " EURO SIGN
|
||||
-- <char-0x2013> " endash
|
||||
--- <char-0x2014> " emdash
|
||||
|
||||
" @ "
|
||||
" # '
|
||||
" $ *
|
||||
" % :
|
||||
" ^ ,
|
||||
" & .
|
||||
" * ;
|
@ -0,0 +1,20 @@
|
||||
let encoding = &enc
|
||||
if encoding == 'latin1'
|
||||
if has("unix")
|
||||
let encoding = 'iso-8859-2'
|
||||
else
|
||||
let encoding = 'cp1250'
|
||||
endif
|
||||
endif
|
||||
|
||||
if encoding == 'utf-8'
|
||||
source <sfile>:p:h/serbian_utf-8.vim
|
||||
elseif encoding == 'cp1250'
|
||||
source <sfile>:p:h/serbian_cp1250.vim
|
||||
elseif encoding == 'cp1251'
|
||||
source <sfile>:p:h/serbian_cp1251.vim
|
||||
elseif encoding == 'iso-8859-2'
|
||||
source <sfile>:p:h/serbian_iso-8859-2.vim
|
||||
else
|
||||
source <sfile>:p:h/serbian_iso-8859-5.vim
|
||||
endif
|
@ -0,0 +1,39 @@
|
||||
" Vim Keymap file for Serbian characters, classical variant, cp1250 encoding
|
||||
"
|
||||
" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
|
||||
" URL: http://galeb.etf.bg.ac.yu/~alexa/vim/keymap/serbian-cp1250.vim
|
||||
" Last Changed: 2002 Mar 29
|
||||
|
||||
scriptencoding cp1250
|
||||
|
||||
let b:keymap_name = "serbian-cp1250"
|
||||
|
||||
loadkeymap
|
||||
Y Z
|
||||
{ Š
|
||||
} Ð
|
||||
y z
|
||||
[ š
|
||||
] ð
|
||||
: È
|
||||
\" Æ
|
||||
\| Ž
|
||||
; è
|
||||
' æ
|
||||
\\ ž
|
||||
"Z Y
|
||||
"z y
|
||||
< ;
|
||||
> :
|
||||
/ -
|
||||
_ ?
|
||||
,, „
|
||||
'' ”
|
||||
|
||||
" @ "
|
||||
" # '
|
||||
" $ *
|
||||
" % :
|
||||
" ^ ,
|
||||
" & .
|
||||
" * ;
|
@ -0,0 +1,39 @@
|
||||
" Vim Keymap file for Serbian characters, classical variant, iso-8859-2 encoding
|
||||
"
|
||||
" Maintainer: Aleksandar Veselinovic <aleksa@cs.cmu.edu>
|
||||
" URL: http://www.cs.cmu.edu/~aleksa/personal/vim/keymap/serbian-iso-8859-2.vim
|
||||
" Last Changed: 2002 Mar 29
|
||||
|
||||
scriptencoding iso-8859-2
|
||||
|
||||
let b:keymap_name = "serbian-iso-8859-2"
|
||||
|
||||
loadkeymap
|
||||
Y Z
|
||||
{ ©
|
||||
} Ð
|
||||
y z
|
||||
[ ¹
|
||||
] ð
|
||||
: È
|
||||
\" Æ
|
||||
\| ®
|
||||
; è
|
||||
' æ
|
||||
\\ ¾
|
||||
"Z Y
|
||||
"z y
|
||||
< ;
|
||||
> :
|
||||
/ -
|
||||
_ ?
|
||||
,, ?
|
||||
'' ?
|
||||
|
||||
" @ "
|
||||
" # '
|
||||
" $ *
|
||||
" % :
|
||||
" ^ ,
|
||||
" & .
|
||||
" * ;
|
@ -0,0 +1,3 @@
|
||||
" Vim Keymap file for Sinhala (Sri Lanka)
|
||||
"
|
||||
source <sfile>:p:h/sinhala-phonetic_utf-8.vim
|
@ -0,0 +1,16 @@
|
||||
let encoding = &enc
|
||||
if encoding == 'latin1'
|
||||
if has("unix")
|
||||
let encoding = 'iso-8859-2'
|
||||
else
|
||||
let encoding = 'cp1250'
|
||||
endif
|
||||
endif
|
||||
|
||||
if encoding == 'utf-8'
|
||||
source <sfile>:p:h/slovak_utf-8.vim
|
||||
elseif encoding == 'cp1250'
|
||||
source <sfile>:p:h/slovak_cp1250.vim
|
||||
else
|
||||
source <sfile>:p:h/slovak_iso-8859-2.vim
|
||||
endif
|
@ -0,0 +1,99 @@
|
||||
" Maintainer: Peter Valach <pvalach@gmx.net>
|
||||
" Last Changed: 2002 Feb 3
|
||||
" URL: http://www.pv2c.sk/free/sk_vimkeymap/
|
||||
|
||||
let b:keymap_name = "sk"
|
||||
|
||||
loadkeymap
|
||||
" Z a Y - ak chcete slovensku qwerty, zakomentujte tieto styri riadky
|
||||
y z
|
||||
z y
|
||||
Y Z
|
||||
Z Y
|
||||
|
||||
" Horny riadok
|
||||
` ;
|
||||
1 +
|
||||
! 1
|
||||
2 µ
|
||||
@ 2
|
||||
3 ¹
|
||||
# 3
|
||||
4 è
|
||||
$ 4
|
||||
5 »
|
||||
% 5
|
||||
6 ¾
|
||||
^ 6
|
||||
7 ý
|
||||
& 7
|
||||
8 á
|
||||
* 8
|
||||
9 í
|
||||
( 9
|
||||
0 é
|
||||
) 0
|
||||
- =
|
||||
_ %
|
||||
|
||||
" Klavesy okolo Enteru :)
|
||||
[ ú
|
||||
{ /
|
||||
] ä
|
||||
} (
|
||||
\\ ò
|
||||
<Bar> )
|
||||
; ô
|
||||
: "
|
||||
' §
|
||||
\" !
|
||||
", , ;-)
|
||||
< ?
|
||||
". . ;-)
|
||||
> :
|
||||
/ -
|
||||
? _
|
||||
|
||||
" Dlzne
|
||||
=a á
|
||||
=A Á
|
||||
=e é
|
||||
=E É
|
||||
=i í
|
||||
=I Í
|
||||
=l å
|
||||
=L Å
|
||||
=o ó
|
||||
=O Ó
|
||||
=r à
|
||||
=R À
|
||||
=u ú
|
||||
=U Ú
|
||||
=z ý
|
||||
=Z Ý
|
||||
" pre pripad omylu :) alebo slovenskej QWERTY
|
||||
=y ý
|
||||
=Y Ý
|
||||
|
||||
" Makcene
|
||||
+a ä
|
||||
+A Ä
|
||||
+c è
|
||||
+C È
|
||||
+d ï
|
||||
+D Ï
|
||||
+l µ
|
||||
+L ¥
|
||||
+n ò
|
||||
+N Ò
|
||||
+o ô
|
||||
+O Ô
|
||||
+s ¹
|
||||
+S ©
|
||||
+t »
|
||||
+T «
|
||||
+y ¾
|
||||
+Y ®
|
||||
" pre pripad omylu :) alebo slovenskej QWERTY
|
||||
+z ¾
|
||||
+Z ®
|
@ -0,0 +1,99 @@
|
||||
" Maintainer: Peter Valach <pvalach@gmx.net>
|
||||
" Last Changed: 2002 Nov 5
|
||||
" URL: http://www.pv2c.sk/free/sk_vimkeymap/
|
||||
|
||||
let b:keymap_name = "sk"
|
||||
|
||||
loadkeymap
|
||||
" Z a Y - ak chcete slovensku qwerty, zakomentujte tieto styri riadky
|
||||
y z
|
||||
z y
|
||||
Y Z
|
||||
Z Y
|
||||
|
||||
" Horny riadok
|
||||
` ;
|
||||
1 +
|
||||
! 1
|
||||
2 ľ
|
||||
@ 2
|
||||
3 š
|
||||
# 3
|
||||
4 č
|
||||
$ 4
|
||||
5 ť
|
||||
% 5
|
||||
6 ž
|
||||
^ 6
|
||||
7 ý
|
||||
& 7
|
||||
8 á
|
||||
* 8
|
||||
9 í
|
||||
( 9
|
||||
0 é
|
||||
) 0
|
||||
- =
|
||||
_ %
|
||||
|
||||
" Klavesy okolo Enteru :)
|
||||
[ ú
|
||||
{ /
|
||||
] ä
|
||||
} (
|
||||
\\ ň
|
||||
<Bar> )
|
||||
; ô
|
||||
: "
|
||||
' §
|
||||
\" !
|
||||
", , ;-)
|
||||
< ?
|
||||
". . ;-)
|
||||
> :
|
||||
/ -
|
||||
? _
|
||||
|
||||
" Dlzne
|
||||
=a á
|
||||
=A Á
|
||||
=e é
|
||||
=E É
|
||||
=i í
|
||||
=I Í
|
||||
=l ĺ
|
||||
=L Ĺ
|
||||
=o ó
|
||||
=O Ó
|
||||
=r ŕ
|
||||
=R Ŕ
|
||||
=u ú
|
||||
=U Ú
|
||||
=z ý
|
||||
=Z Ý
|
||||
" pre pripad omylu :) alebo slovenskej QWERTY
|
||||
=y ý
|
||||
=Y Ý
|
||||
|
||||
" Makcene
|
||||
+a ä
|
||||
+A Ä
|
||||
+c č
|
||||
+C Č
|
||||
+d ď
|
||||
+D Ď
|
||||
+l ľ
|
||||
+L Ľ
|
||||
+n ň
|
||||
+N Ň
|
||||
+o ô
|
||||
+O Ô
|
||||
+s š
|
||||
+S Š
|
||||
+t ť
|
||||
+T Ť
|
||||
+y ž
|
||||
+Y Ž
|
||||
" pre pripad omylu :) alebo slovenskej QWERTY
|
||||
+z ž
|
||||
+Z Ž
|
@ -0,0 +1,571 @@
|
||||
" Keymap file for the editing Tamil language files in TSCII encoding.
|
||||
"
|
||||
" Maintainer: Yegappan Lakshmanan (yegappan AT yahoo DOT com)
|
||||
" Last updated: 2006 June 17
|
||||
"
|
||||
" You will need a fixed width TSCII font to use this encoding. The
|
||||
" Avarangal TSCII fixed width font (TSC_AvarangalFxd) is used to test
|
||||
" this keymap.
|
||||
"
|
||||
" Visit http://www.tscii.org for more information about the TSCII
|
||||
" encoding.
|
||||
"
|
||||
let b:keymap_name = "tamil_tscii"
|
||||
|
||||
loadkeymap
|
||||
|
||||
" Uyir (Vowels) letters
|
||||
a <char-171>
|
||||
aa <char-172>
|
||||
A <char-172>
|
||||
i <char-173>
|
||||
ii <char-174>
|
||||
I <char-174>
|
||||
u <char-175>
|
||||
uu <char-176>
|
||||
U <char-176>
|
||||
e <char-177>
|
||||
ee <char-178>
|
||||
E <char-178>
|
||||
ai <char-179>
|
||||
o <char-180>
|
||||
oo <char-181>
|
||||
O <char-181>
|
||||
au <char-182>
|
||||
q <char-183>
|
||||
|
||||
" mey (Consonants) letters
|
||||
k <char-236>
|
||||
ka <char-184>
|
||||
kaa <char-184><char-161>
|
||||
kA <char-184><char-161>
|
||||
ki <char-184><char-162>
|
||||
kii <char-184><char-163>
|
||||
kI <char-184><char-163>
|
||||
ku <char-204>
|
||||
kuu <char-220>
|
||||
kU <char-220>
|
||||
ke <char-166><char-184>
|
||||
kee <char-167><char-184>
|
||||
kE <char-167><char-184>
|
||||
kai <char-168><char-184>
|
||||
ko <char-166><char-184><char-161>
|
||||
koo <char-167><char-184><char-161>
|
||||
kO <char-167><char-184><char-161>
|
||||
kau <char-166><char-184><char-199>
|
||||
|
||||
g <char-236>
|
||||
ga <char-184>
|
||||
gaa <char-184><char-161>
|
||||
gA <char-184><char-161>
|
||||
gi <char-184><char-162>
|
||||
gii <char-184><char-163>
|
||||
gI <char-184><char-163>
|
||||
gu <char-204>
|
||||
guu <char-220>
|
||||
gU <char-220>
|
||||
ge <char-166><char-184>
|
||||
gee <char-167><char-184>
|
||||
gE <char-167><char-184>
|
||||
gai <char-168><char-184>
|
||||
go <char-166><char-184><char-161>
|
||||
goo <char-167><char-184><char-161>
|
||||
gO <char-167><char-184><char-161>
|
||||
gau <char-166><char-184><char-199>
|
||||
|
||||
ng <char-237>
|
||||
nga <char-185>
|
||||
ngaa <char-185><char-161>
|
||||
ngA <char-185><char-161>
|
||||
ngi <char-185><char-162>
|
||||
ngii <char-185><char-163>
|
||||
ngI <char-185><char-163>
|
||||
ngu <char-153>
|
||||
nguu <char-155>
|
||||
ngU <char-155>
|
||||
nge <char-166><char-185>
|
||||
ngee <char-167><char-185>
|
||||
ngE <char-167><char-185>
|
||||
ngai <char-168><char-185>
|
||||
ngo <char-166><char-185><char-161>
|
||||
ngoo <char-167><char-185><char-161>
|
||||
ngO <char-167><char-185><char-161>
|
||||
ngau <char-166><char-185><char-199>
|
||||
|
||||
ch <char-238>
|
||||
cha <char-186>
|
||||
chaa <char-186><char-161>
|
||||
chA <char-186><char-161>
|
||||
chi <char-186><char-162>
|
||||
chii <char-186><char-163>
|
||||
chI <char-186><char-163>
|
||||
chu <char-204>
|
||||
chuu <char-221>
|
||||
chU <char-221>
|
||||
che <char-166><char-186>
|
||||
chee <char-167><char-186>
|
||||
chE <char-167><char-186>
|
||||
chai <char-168><char-186>
|
||||
cho <char-166><char-186><char-161>
|
||||
choo <char-167><char-186><char-161>
|
||||
chO <char-167><char-186><char-161>
|
||||
chau <char-166><char-186><char-199>
|
||||
|
||||
s <char-238>
|
||||
sa <char-186>
|
||||
saa <char-186><char-161>
|
||||
sA <char-186><char-161>
|
||||
si <char-186><char-162>
|
||||
sii <char-186><char-163>
|
||||
sI <char-186><char-163>
|
||||
su <char-205>
|
||||
suu <char-221>
|
||||
sU <char-221>
|
||||
se <char-166><char-186>
|
||||
see <char-167><char-186>
|
||||
sE <char-167><char-186>
|
||||
sai <char-168><char-186>
|
||||
so <char-166><char-186><char-161>
|
||||
soo <char-167><char-186><char-161>
|
||||
sO <char-167><char-186><char-161>
|
||||
sau <char-166><char-186><char-199>
|
||||
|
||||
nj <char-239>
|
||||
nja <char-187>
|
||||
njaa <char-187><char-161>
|
||||
njA <char-187><char-161>
|
||||
nji <char-187><char-162>
|
||||
njii <char-187><char-163>
|
||||
njI <char-187><char-163>
|
||||
nju <char-154>
|
||||
njuu <char-156>
|
||||
njU <char-156>
|
||||
nje <char-166><char-187>
|
||||
njee <char-167><char-187>
|
||||
njE <char-167><char-187>
|
||||
njai <char-168><char-187>
|
||||
njo <char-166><char-187><char-161>
|
||||
njoo <char-167><char-187><char-161>
|
||||
njO <char-167><char-187><char-161>
|
||||
njau <char-166><char-187><char-199>
|
||||
|
||||
t <char-240>
|
||||
ta <char-188>
|
||||
taa <char-188><char-161>
|
||||
tA <char-188><char-161>
|
||||
ti <char-202>
|
||||
tii <char-203>
|
||||
tI <char-203>
|
||||
tu <char-206>
|
||||
tuu <char-222>
|
||||
tU <char-222>
|
||||
te <char-166><char-188>
|
||||
tee <char-167><char-188>
|
||||
tE <char-167><char-188>
|
||||
tai <char-168><char-188>
|
||||
to <char-166><char-188><char-161>
|
||||
too <char-167><char-188><char-161>
|
||||
tO <char-167><char-188><char-161>
|
||||
tau <char-166><char-188><char-199>
|
||||
|
||||
d <char-240>
|
||||
da <char-188>
|
||||
daa <char-188><char-161>
|
||||
dA <char-188><char-161>
|
||||
di <char-202>
|
||||
dii <char-203>
|
||||
dI <char-203>
|
||||
du <char-206>
|
||||
duu <char-222>
|
||||
dU <char-222>
|
||||
de <char-166><char-188>
|
||||
dee <char-167><char-188>
|
||||
dE <char-167><char-188>
|
||||
dai <char-168><char-188>
|
||||
do <char-166><char-188><char-161>
|
||||
doo <char-167><char-188><char-161>
|
||||
dO <char-167><char-188><char-161>
|
||||
dau <char-166><char-188><char-199>
|
||||
|
||||
N <char-241>
|
||||
Na <char-189>
|
||||
Naa <char-189><char-161>
|
||||
NA <char-189><char-161>
|
||||
Ni <char-189><char-162>
|
||||
Nii <char-189><char-163>
|
||||
NI <char-189><char-163>
|
||||
Nu <char-207>
|
||||
Nuu <char-223>
|
||||
NU <char-223>
|
||||
Ne <char-166><char-189>
|
||||
Nee <char-167><char-189>
|
||||
NE <char-167><char-189>
|
||||
Nai <char-168><char-189>
|
||||
No <char-166><char-189><char-161>
|
||||
Noo <char-167><char-189><char-161>
|
||||
NO <char-167><char-189><char-161>
|
||||
Nau <char-166><char-189><char-199>
|
||||
|
||||
th <char-242>
|
||||
tha <char-190>
|
||||
thaa <char-190><char-161>
|
||||
thA <char-190><char-161>
|
||||
thi <char-190><char-162>
|
||||
thii <char-190><char-163>
|
||||
thI <char-190><char-163>
|
||||
thu <char-208>
|
||||
thuu <char-224>
|
||||
thU <char-224>
|
||||
the <char-166><char-190>
|
||||
thee <char-167><char-190>
|
||||
thE <char-167><char-190>
|
||||
thai <char-168><char-190>
|
||||
tho <char-166><char-190><char-161>
|
||||
thoo <char-167><char-190><char-161>
|
||||
thO <char-167><char-190><char-161>
|
||||
thau <char-166><char-190><char-199>
|
||||
|
||||
w <char-243>
|
||||
wa <char-191>
|
||||
waa <char-191><char-161>
|
||||
wA <char-191><char-161>
|
||||
wi <char-191><char-162>
|
||||
wii <char-191><char-163>
|
||||
wI <char-191><char-163>
|
||||
wu <char-209>
|
||||
wuu <char-225>
|
||||
wU <char-225>
|
||||
we <char-166><char-191>
|
||||
wee <char-167><char-191>
|
||||
wE <char-167><char-191>
|
||||
wai <char-168><char-191>
|
||||
wo <char-166><char-191><char-161>
|
||||
woo <char-167><char-191><char-161>
|
||||
wO <char-167><char-191><char-161>
|
||||
wau <char-166><char-191><char-199>
|
||||
|
||||
n- <char-243>
|
||||
n-a <char-191>
|
||||
n-aa <char-191><char-161>
|
||||
n-A <char-191><char-161>
|
||||
n-i <char-191><char-162>
|
||||
n-ii <char-191><char-163>
|
||||
n-I <char-191><char-163>
|
||||
n-u <char-209>
|
||||
n-uu <char-225>
|
||||
n-U <char-225>
|
||||
n-e <char-166><char-191>
|
||||
n-ee <char-167><char-191>
|
||||
n-E <char-167><char-191>
|
||||
n-ai <char-168><char-191>
|
||||
n-o <char-166><char-191><char-161>
|
||||
n-oo <char-167><char-191><char-161>
|
||||
n-O <char-167><char-191><char-161>
|
||||
n-au <char-166><char-191><char-199>
|
||||
|
||||
p <char-244>
|
||||
pa <char-192>
|
||||
paa <char-192><char-161>
|
||||
pA <char-192><char-161>
|
||||
pi <char-192><char-162>
|
||||
pii <char-192><char-163>
|
||||
pI <char-192><char-163>
|
||||
pu <char-210>
|
||||
puu <char-226>
|
||||
pU <char-226>
|
||||
pe <char-166><char-192>
|
||||
pee <char-167><char-192>
|
||||
pE <char-167><char-192>
|
||||
pai <char-168><char-192>
|
||||
po <char-166><char-192><char-161>
|
||||
poo <char-167><char-192><char-161>
|
||||
pO <char-167><char-192><char-161>
|
||||
pau <char-166><char-192><char-199>
|
||||
|
||||
b <char-244>
|
||||
ba <char-192>
|
||||
baa <char-192><char-161>
|
||||
bA <char-192><char-161>
|
||||
bi <char-192><char-162>
|
||||
bii <char-192><char-163>
|
||||
bI <char-192><char-163>
|
||||
bu <char-210>
|
||||
buu <char-226>
|
||||
bU <char-226>
|
||||
be <char-166><char-192>
|
||||
bee <char-167><char-192>
|
||||
bE <char-167><char-192>
|
||||
bai <char-168><char-192>
|
||||
bo <char-166><char-192><char-161>
|
||||
boo <char-167><char-192><char-161>
|
||||
bO <char-167><char-192><char-161>
|
||||
bau <char-166><char-192><char-199>
|
||||
|
||||
m <char-245>
|
||||
ma <char-193>
|
||||
maa <char-193><char-161>
|
||||
mA <char-193><char-161>
|
||||
mi <char-193><char-162>
|
||||
mii <char-193><char-163>
|
||||
mI <char-193><char-163>
|
||||
mu <char-211>
|
||||
muu <char-227>
|
||||
mU <char-227>
|
||||
me <char-166><char-193>
|
||||
mee <char-167><char-193>
|
||||
mE <char-167><char-193>
|
||||
mai <char-168><char-193>
|
||||
mo <char-166><char-193><char-161>
|
||||
moo <char-167><char-193><char-161>
|
||||
mO <char-167><char-193><char-161>
|
||||
mau <char-166><char-193><char-199>
|
||||
|
||||
y <char-246>
|
||||
ya <char-194>
|
||||
yaa <char-194><char-161>
|
||||
yA <char-194><char-161>
|
||||
yi <char-194><char-162>
|
||||
yii <char-194><char-163>
|
||||
yI <char-194><char-163>
|
||||
yu <char-212>
|
||||
yuu <char-228>
|
||||
yU <char-228>
|
||||
ye <char-166><char-194>
|
||||
yee <char-167><char-194>
|
||||
yE <char-167><char-194>
|
||||
yai <char-168><char-194>
|
||||
yo <char-166><char-194><char-161>
|
||||
yoo <char-167><char-194><char-161>
|
||||
yO <char-167><char-194><char-161>
|
||||
yau <char-166><char-194><char-199>
|
||||
|
||||
r <char-247>
|
||||
ra <char-195>
|
||||
raa <char-195><char-161>
|
||||
rA <char-195><char-161>
|
||||
ri <char-195><char-162>
|
||||
rii <char-195><char-163>
|
||||
rI <char-195><char-163>
|
||||
ru <char-213>
|
||||
ruu <char-229>
|
||||
rU <char-229>
|
||||
re <char-166><char-195>
|
||||
ree <char-167><char-195>
|
||||
rE <char-167><char-195>
|
||||
rai <char-168><char-195>
|
||||
ro <char-166><char-195><char-161>
|
||||
roo <char-167><char-195><char-161>
|
||||
rO <char-167><char-195><char-161>
|
||||
rau <char-166><char-195><char-199>
|
||||
|
||||
l <char-248>
|
||||
la <char-196>
|
||||
laa <char-196><char-161>
|
||||
lA <char-196><char-161>
|
||||
li <char-196><char-162>
|
||||
lii <char-196><char-163>
|
||||
lI <char-196><char-163>
|
||||
lu <char-214>
|
||||
luu <char-230>
|
||||
lU <char-230>
|
||||
le <char-166><char-196>
|
||||
lee <char-167><char-196>
|
||||
lE <char-167><char-196>
|
||||
lai <char-168><char-196>
|
||||
lo <char-166><char-196><char-161>
|
||||
loo <char-167><char-196><char-161>
|
||||
lO <char-167><char-196><char-161>
|
||||
lau <char-166><char-196><char-199>
|
||||
|
||||
v <char-249>
|
||||
va <char-197>
|
||||
vaa <char-197><char-161>
|
||||
vA <char-197><char-161>
|
||||
vi <char-197><char-162>
|
||||
vii <char-197><char-163>
|
||||
vI <char-197><char-163>
|
||||
vu <char-215>
|
||||
vuu <char-231>
|
||||
vU <char-231>
|
||||
ve <char-166><char-197>
|
||||
vee <char-167><char-197>
|
||||
vE <char-167><char-197>
|
||||
vai <char-168><char-197>
|
||||
vo <char-166><char-197><char-161>
|
||||
voo <char-167><char-197><char-161>
|
||||
vO <char-167><char-197><char-161>
|
||||
vau <char-166><char-197><char-199>
|
||||
|
||||
z <char-250>
|
||||
za <char-198>
|
||||
zaa <char-198><char-161>
|
||||
zA <char-198><char-161>
|
||||
zi <char-198><char-162>
|
||||
zii <char-198><char-163>
|
||||
zI <char-198><char-163>
|
||||
zu <char-216>
|
||||
zuu <char-232>
|
||||
zU <char-232>
|
||||
ze <char-166><char-198>
|
||||
zee <char-167><char-198>
|
||||
zE <char-167><char-198>
|
||||
zai <char-168><char-198>
|
||||
zo <char-166><char-198><char-161>
|
||||
zoo <char-167><char-198><char-161>
|
||||
zO <char-167><char-198><char-161>
|
||||
zau <char-166><char-198><char-199>
|
||||
|
||||
L <char-251>
|
||||
La <char-199>
|
||||
Laa <char-199><char-161>
|
||||
LA <char-199><char-161>
|
||||
Li <char-199><char-162>
|
||||
Lii <char-199><char-163>
|
||||
LI <char-199><char-163>
|
||||
Lu <char-217>
|
||||
Luu <char-233>
|
||||
LU <char-233>
|
||||
Le <char-166><char-199>
|
||||
Lee <char-167><char-199>
|
||||
LE <char-167><char-199>
|
||||
Lai <char-168><char-199>
|
||||
Lo <char-166><char-199><char-161>
|
||||
Loo <char-167><char-199><char-161>
|
||||
LO <char-167><char-199><char-161>
|
||||
Lau <char-166><char-199><char-199>
|
||||
|
||||
R <char-252>
|
||||
Ra <char-200>
|
||||
Raa <char-200><char-161>
|
||||
RA <char-200><char-161>
|
||||
Ri <char-200><char-162>
|
||||
Rii <char-200><char-163>
|
||||
RI <char-200><char-163>
|
||||
Ru <char-218>
|
||||
Ruu <char-234>
|
||||
RU <char-234>
|
||||
Re <char-166><char-200>
|
||||
Ree <char-167><char-200>
|
||||
RE <char-167><char-200>
|
||||
Rai <char-168><char-200>
|
||||
Ro <char-166><char-200><char-161>
|
||||
Roo <char-167><char-200><char-161>
|
||||
RO <char-167><char-200><char-161>
|
||||
Rau <char-166><char-200><char-199>
|
||||
|
||||
n <char-253>
|
||||
na <char-201>
|
||||
naa <char-201><char-161>
|
||||
nA <char-201><char-161>
|
||||
ni <char-201><char-162>
|
||||
nii <char-201><char-163>
|
||||
nI <char-201><char-163>
|
||||
nu <char-219>
|
||||
nuu <char-235>
|
||||
nU <char-235>
|
||||
ne <char-166><char-201>
|
||||
nee <char-167><char-201>
|
||||
nE <char-167><char-201>
|
||||
nai <char-168><char-201>
|
||||
no <char-166><char-201><char-161>
|
||||
noo <char-167><char-201><char-161>
|
||||
nO <char-167><char-201><char-161>
|
||||
nau <char-166><char-201><char-199>
|
||||
|
||||
" Grantha letters
|
||||
j <char-136>
|
||||
ja <char-131>
|
||||
jaa <char-131><char-161>
|
||||
jA <char-131><char-161>
|
||||
ji <char-131><char-162>
|
||||
jii <char-131><char-163>
|
||||
jI <char-131><char-163>
|
||||
ju <char-131><char-164>
|
||||
juu <char-131><char-164>
|
||||
jU <char-131><char-165>
|
||||
je <char-166><char-131>
|
||||
jee <char-167><char-131>
|
||||
jE <char-167><char-131>
|
||||
jai <char-168><char-131>
|
||||
jo <char-166><char-131><char-161>
|
||||
joo <char-167><char-131><char-161>
|
||||
jO <char-167><char-131><char-161>
|
||||
jau <char-166><char-131><char-199>
|
||||
|
||||
sh <char-137>
|
||||
sha <char-132>
|
||||
shaa <char-132><char-161>
|
||||
shA <char-132><char-161>
|
||||
shi <char-132><char-162>
|
||||
shii <char-132><char-163>
|
||||
shI <char-132><char-163>
|
||||
shu <char-131><char-164>
|
||||
shuu <char-131><char-164>
|
||||
shU <char-131><char-165>
|
||||
she <char-166><char-132>
|
||||
shee <char-167><char-132>
|
||||
shE <char-167><char-132>
|
||||
shai <char-168><char-132>
|
||||
sho <char-166><char-132><char-161>
|
||||
shoo <char-167><char-132><char-161>
|
||||
shO <char-167><char-132><char-161>
|
||||
shau <char-166><char-132><char-199>
|
||||
|
||||
S <char-138>
|
||||
Sa <char-133>
|
||||
Saa <char-133><char-161>
|
||||
SA <char-133><char-161>
|
||||
Si <char-133><char-162>
|
||||
Sii <char-133><char-163>
|
||||
SI <char-133><char-163>
|
||||
Su <char-133><char-164>
|
||||
Suu <char-133><char-165>
|
||||
SU <char-133><char-165>
|
||||
Se <char-166><char-133>
|
||||
See <char-167><char-133>
|
||||
SE <char-167><char-133>
|
||||
Sai <char-168><char-133>
|
||||
So <char-166><char-133><char-161>
|
||||
Soo <char-167><char-133><char-161>
|
||||
SO <char-167><char-133><char-161>
|
||||
Sau <char-166><char-133><char-199>
|
||||
|
||||
h <char-139>
|
||||
ha <char-134>
|
||||
haa <char-134><char-161>
|
||||
hA <char-134><char-161>
|
||||
hi <char-134><char-162>
|
||||
hii <char-134><char-163>
|
||||
hI <char-134><char-163>
|
||||
hu <char-134><char-164>
|
||||
huu <char-134><char-165>
|
||||
hU <char-134><char-165>
|
||||
he <char-166><char-134>
|
||||
hee <char-167><char-134>
|
||||
hE <char-167><char-134>
|
||||
hai <char-168><char-134>
|
||||
ho <char-166><char-134><char-161>
|
||||
hoo <char-167><char-134><char-161>
|
||||
hO <char-167><char-134><char-161>
|
||||
hau <char-166><char-134><char-199>
|
||||
|
||||
x <char-140>
|
||||
xa <char-135>
|
||||
xaa <char-135><char-161>
|
||||
xA <char-135><char-161>
|
||||
xi <char-135><char-162>
|
||||
xii <char-135><char-163>
|
||||
xI <char-135><char-163>
|
||||
xu <char-135><char-164>
|
||||
xuu <char-135><char-165>
|
||||
xU <char-135><char-165>
|
||||
xe <char-166><char-135>
|
||||
xee <char-167><char-135>
|
||||
xE <char-167><char-135>
|
||||
xai <char-168><char-135>
|
||||
xo <char-166><char-135><char-161>
|
||||
xoo <char-167><char-135><char-161>
|
||||
xO <char-167><char-135><char-161>
|
||||
xau <char-166><char-135><char-199>
|
||||
|
||||
sri <char-130>
|
@ -0,0 +1,86 @@
|
||||
" thaana keymap
|
||||
" Maintainer: Ibrahim fayaz <p h a y a x at gmail dot com>
|
||||
" please set enc to utf-8
|
||||
" thaana phonetic keyboard is used as a reference
|
||||
" http://www.mcst.gov.mv/News_and_Events/xpfonts.htm
|
||||
" changelog: 18th Feb 2006 - came up the initial idea of writing the keymap..
|
||||
" 13th May 2006 - made some few corrections regarding < and >..
|
||||
|
||||
let b:keymap_name= "thaana"
|
||||
|
||||
" THAANA NORMAL LETTERS
|
||||
loadkeymap
|
||||
h <char-0x0780> "letter haa
|
||||
S <char-0x0781> "shaviani
|
||||
n <char-0x0782> "noonu
|
||||
r <char-0x0783> "raa
|
||||
b <char-0x0784> "baa
|
||||
L <char-0x0785> "lhaviani
|
||||
k <char-0x0786> "kaafu
|
||||
w <char-0x0787> "alifu
|
||||
v <char-0x0788> "vaavu
|
||||
m <char-0x0789> "meemu
|
||||
f <char-0x078A> "faafu
|
||||
d <char-0x078B> "dhaalu
|
||||
t <char-0x078C> "thaa
|
||||
l <char-0x078D> "laamu
|
||||
g <char-0x078E> "gaafu
|
||||
N <char-0x078F> "gnaviani
|
||||
s <char-0x0790> "seenu
|
||||
D <char-0x0791> "daviani
|
||||
z <char-0x0792> "zaviani
|
||||
T <char-0x0793> "taviani
|
||||
y <char-0x0794> "yaa
|
||||
p <char-0x0795> "paviani
|
||||
j <char-0x0796> "javiani
|
||||
c <char-0x0797> "chaviani
|
||||
|
||||
"THAANA DOTTED LETTERS
|
||||
X <char-0x0798> "TTAA (thaa mathee thin thiki)
|
||||
H <char-0x0799> "HHAA (haa thiree ehthiki)
|
||||
K <char-0x079A> "KHAA (haa mathee ehthiki)
|
||||
J <char-0x079B> "THAALU (dhaa mathee ehthiki)
|
||||
R <char-0x079C> "ZAA (raa mathee ehthiki)
|
||||
C <char-0x079D> "SHEENU (seenu mathee thinthiki)
|
||||
M <char-0x079E> "SAADHU (seenu thiree ehthiki)
|
||||
B <char-0x079F> "DHAADHU(seenu mathee ehthiki)
|
||||
Y <char-0x07A0> "TO (thaa thiree ehthiki)
|
||||
Z <char-0x07A1> "ZO (thaa mathee ehthiki)
|
||||
W <char-0x07A2> "AINU (alifu thiree ehthiki)
|
||||
G <char-0x07A3> "GHAINU (alifu mathee ehthiki)
|
||||
Q <char-0x07A4> "QAAFU (gaafu mathee dhethkiki)
|
||||
V <char-0x07A5> "VAAVU (vaavu mathee ehthiki)
|
||||
|
||||
"THAANA FILI (combining characters)
|
||||
a <char-0x07A6> "abafili
|
||||
A <char-0x07A7> "aabaafili
|
||||
i <char-0x07A8> "ibifili
|
||||
I <char-0x07A9> "eebeefili
|
||||
u <char-0x07AA> "ubufili
|
||||
U <char-0x07AB> "ooboofili
|
||||
e <char-0x07AC> "ebefili
|
||||
E <char-0x07AD> "ebeyfili
|
||||
o <char-0x07AE> "obofili
|
||||
O <char-0x07AF> "oaboafili
|
||||
q <char-0x07B0> "sukun
|
||||
|
||||
"OTHER THAANA RELATED
|
||||
F <char-0xFDF2> "arabic ligature allah isolated form
|
||||
? <char-0x061F> "arabic question mark
|
||||
"~ <char-0xFDFD> "arabic -bismillah ahrahman araheem- not in phonetic keyboard, thats why commented
|
||||
[ <char-0x005D> "english open bracket is thaana closing bracket
|
||||
] <char-0x005B> "english close bracket = thaana open bracket
|
||||
{ <char-0x007B> "braces reversed
|
||||
} <char-0x007D>
|
||||
x <char-0x00D7> " x for multiplication sign..
|
||||
P <char-0x00F7> " division symbol mapped to 'p'
|
||||
> <char-0x003C>
|
||||
< <char-0x003E>
|
||||
<M-v> <char-0x200D> "zwj - ZERO WIDTH JOINER i dont know how to use these yet..
|
||||
<M-b> <char-0x200C> "zwnj - ZERO WIDTH NON JOINER
|
||||
<M-n> <char-0x200E> "lrm - LEFT TO RIGHT MARK
|
||||
<M-m> <char-0x200F> "rlm - RIGHT TO LEFT MARK
|
||||
; <char-0x061B> "arabic semicolon
|
||||
, <char-0x060C> "arabic coma
|
||||
<M-;> ;
|
||||
<M-,> ,
|
@ -0,0 +1,3 @@
|
||||
if &enc == 'utf-8'
|
||||
source <sfile>:p:h/thaana-phonetic_utf-8.vim
|
||||
endif
|
@ -0,0 +1,160 @@
|
||||
" Vim Keymap file for vietnamese through the usual viqr method
|
||||
" Maintainer: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
||||
" Last Change: 2006 Jun 17
|
||||
|
||||
scriptencoding utf-8
|
||||
|
||||
let b:keymap_name = "vietnamese"
|
||||
|
||||
loadkeymap
|
||||
a a
|
||||
A A
|
||||
a` à
|
||||
A` À
|
||||
a? ả
|
||||
A? Ả
|
||||
a~ ã
|
||||
A~ Ã
|
||||
a' á
|
||||
A' Á
|
||||
a. ạ
|
||||
A. Ạ
|
||||
a( ă
|
||||
A( Ă
|
||||
a(` ằ
|
||||
A(` Ằ
|
||||
a(? ẳ
|
||||
A(? Ẳ
|
||||
a(~ ẵ
|
||||
A(~ Ẵ
|
||||
a(' ắ
|
||||
A(' Ắ
|
||||
a(. ặ
|
||||
A(. Ặ
|
||||
a^ â
|
||||
A^ Â
|
||||
a^` ầ
|
||||
A^` Ầ
|
||||
a^? ẩ
|
||||
A^? Ẩ
|
||||
a^~ ẫ
|
||||
A^~ Ẫ
|
||||
a^' ấ
|
||||
A^' Ấ
|
||||
a^. ậ
|
||||
A^. Ậ
|
||||
d d
|
||||
D D
|
||||
dd đ
|
||||
Dd Đ
|
||||
DD Đ
|
||||
e e
|
||||
E E
|
||||
e` è
|
||||
E` È
|
||||
e? ẻ
|
||||
E? Ẻ
|
||||
e~ ẽ
|
||||
E~ Ẽ
|
||||
e' é
|
||||
E' É
|
||||
e. ẹ
|
||||
E. Ẹ
|
||||
e^ ê
|
||||
E^ Ê
|
||||
e^` ề
|
||||
E^` Ề
|
||||
e^? ể
|
||||
E^? Ể
|
||||
e^~ ễ
|
||||
E^~ Ễ
|
||||
e^' ế
|
||||
E^' Ế
|
||||
e^. ệ
|
||||
E^. Ệ
|
||||
i i
|
||||
I I
|
||||
i` ì
|
||||
I` Ì
|
||||
i? ỉ
|
||||
I? Ỉ
|
||||
i~ ĩ
|
||||
I~ Ĩ
|
||||
i' í
|
||||
I' Í
|
||||
i. ị
|
||||
I. Ị
|
||||
o o
|
||||
O O
|
||||
o` ò
|
||||
O` Ò
|
||||
o? ỏ
|
||||
O? Ỏ
|
||||
o~ õ
|
||||
O~ Õ
|
||||
o' ó
|
||||
O' Ó
|
||||
o. ọ
|
||||
O. Ọ
|
||||
o^ ô
|
||||
O^ Ô
|
||||
o^` ồ
|
||||
O^` Ồ
|
||||
o^? ổ
|
||||
O^? Ổ
|
||||
o^~ ỗ
|
||||
O^~ Ỗ
|
||||
o^' ố
|
||||
O^' Ố
|
||||
o^. ộ
|
||||
O^. Ộ
|
||||
o+ ơ
|
||||
O+ Ơ
|
||||
o+` ờ
|
||||
O+` Ờ
|
||||
o+? ở
|
||||
O+? Ở
|
||||
o+~ ỡ
|
||||
O+~ Ỡ
|
||||
o+' ớ
|
||||
O+' Ớ
|
||||
o+. ợ
|
||||
O+. Ợ
|
||||
u u
|
||||
U U
|
||||
u` ù
|
||||
U` Ù
|
||||
u? ủ
|
||||
U? Ủ
|
||||
u~ ũ
|
||||
U~ Ũ
|
||||
u' ú
|
||||
U' Ú
|
||||
u. ụ
|
||||
U. Ụ
|
||||
u+ ư
|
||||
U+ Ư
|
||||
u+` ừ
|
||||
U+` Ừ
|
||||
u+? ử
|
||||
U+? Ử
|
||||
u+~ ữ
|
||||
U+~ Ữ
|
||||
u+' ứ
|
||||
U+' Ứ
|
||||
u+. ự
|
||||
U+. Ự
|
||||
y y
|
||||
Y Y
|
||||
y` ỳ
|
||||
Y` Ỳ
|
||||
y? ỷ
|
||||
Y? Ỷ
|
||||
y~ ỹ
|
||||
Y~ Ỹ
|
||||
y' ý
|
||||
Y' Ý
|
||||
y. ỵ
|
||||
Y. Ỵ
|
||||
\\d d
|
||||
\\D D
|
@ -0,0 +1,64 @@
|
||||
Language files for Vim
|
||||
|
||||
Translated menus
|
||||
----------------
|
||||
|
||||
The contents of each menu file is a sequence of lines with "menutrans"
|
||||
commands. Read one of the existing files to get an idea of how this works.
|
||||
|
||||
More information in the on-line help:
|
||||
|
||||
:help multilang-menus
|
||||
:help :menutrans
|
||||
:help 'langmenu'
|
||||
:help :language
|
||||
|
||||
The "$VIMRUNTIME/menu.vim" file will search for a menu translation file. This
|
||||
depends on the value of the "v:lang" variable.
|
||||
|
||||
"menu_" . v:lang . ".vim"
|
||||
|
||||
When the 'menutrans' option is set, its value will be used instead of v:lang.
|
||||
|
||||
The file name is always lower case. It is the full name as the ":language"
|
||||
command shows (the LC_MESSAGES value).
|
||||
|
||||
For example, to use the Big5 (Taiwan) menus on MS-Windows the $LANG will be
|
||||
|
||||
Chinese(Taiwan)_Taiwan.950
|
||||
|
||||
and use the menu translation file:
|
||||
|
||||
$VIMRUNTIME/lang/menu_chinese(taiwan)_taiwan.950.vim
|
||||
|
||||
On Unix you should set $LANG, depending on your shell:
|
||||
|
||||
csh/tcsh: setenv LANG "zh_TW.Big5"
|
||||
sh/bash/ksh: export LANG="zh_TW.Big5"
|
||||
|
||||
and the menu translation file is:
|
||||
|
||||
$VIMRUNTIME/lang/menu_zh_tw.big5.vim
|
||||
|
||||
The menu translation file should set the "did_menu_trans" variable so that Vim
|
||||
will not load another file.
|
||||
|
||||
|
||||
AUTOMATIC CONVERSION
|
||||
|
||||
When Vim was compiled with multi-byte support, conversion between latin1 and
|
||||
UTF-8 will always be possible. Other conversions depend on the iconv
|
||||
library, which is not always available.
|
||||
For UTF-8 menu files which only use latin1 characters, you can rely on Vim
|
||||
doing the conversion. Let the UTF-8 menu file source the latin1 menu file,
|
||||
and put "scriptencoding latin1" in that one.
|
||||
Other conversions may not always be available (e.g., between iso-8859-# and
|
||||
MS-Windows codepages), thus the converted menu file must be available.
|
||||
|
||||
|
||||
Translated messages
|
||||
-------------------
|
||||
|
||||
This requires doing "make install" in the "src" directory. It will compile
|
||||
the portable files "src/po/*.po" into binary ".mo" files and place them in the
|
||||
right directory.
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue