VI65 text editor home
VI65 text editor
A VI implementation for 6502 machines.
This is the "manual" of the multi platform VI65 0.2 editor.
The editor (and the documentation) is far from finished, and there are<br>a lots of bugs. Maybe the next version will be better ;)
Supported platforms:
Commodore 64, 128, 16, Plus 4, VIC20 (expanded), PET 40/80.<br>Atari 8bit, Apple II.<br>There's a plugin version for the IDE64 filemanager too.
Supported text modes:
C64 - 40/53/64/80x25 (VDC 80x25 on C128)<br>C128 - 40/53/64/80x25, VDC 80x25<br>+4 - 40x25, 53/64/80x23<br>C16 - 40x25<br>VIC20 - 22x23, 26/35/40x22<br>PET - 40/80x25<br>ATARI - 40/53/64/80x24<br>APPLE II - 40/46/56/80x24
Some text modes use custom 4x8, 5x8 and 6x8 charsets on graphic screen.
Screenshots:
Limitations:
251 characters in a line<br>65535 lines of text (memory runs out faster...)<br>65535 maximum count<br>Platform native text format only<br>Paste register only limited by the amount of memory<br>No extra memory support yet<br>Single buffer editing for now
The following key description was mostly copied from the<br>VIM 7.2 manual.
Motion keys
j or
[count] characters to the right. exclusive motion.<br>h or or CTRL-H
[count] characters to the left. exclusive motion.<br>0 or
To the first character of the line. exclusive<br>motion.<br>g$ or g
To the rightmost<br>character of the current line that is visible on the<br>screen. Differs from "$" when the last character of<br>the line is not on the screen.<br>Additionally, vertical movements keep the column,<br>instead of going to the end of the line. inclusive.<br>g0 or g
To the leftmost<br>character of the current line that is on the screen.<br>Differs from "0" when the first character of the line<br>is not on the screen. exclusive motion.<br>gm
Like "g0", but half a screenwidth to the right (or as<br>much as possible). exclusive.
To the first non-blank character of the line. exclusive.
To screen column [count] in the current line.<br>exclusive motion.<br>$ or
To the end of the line. When a count is given also go<br>[count - 1] lines downward inclusive.<br>t{char}
Till before [count]'th occurrence of {char} to the<br>right. The cursor is placed on the character left of<br>{char}. inclusive.<br>f{char}
To [count]'th occurrence of {char} to the right. The<br>cursor is placed on {char}. inclusive.
Till after [count]'th occurrence of {char} to the<br>left. The cursor is placed on the character right of<br>{char} exclusive.
To the [count]'th occurrence of {char} to the left.<br>The cursor is placed on {char} exclusive.
To line [count] from bottom of window (default: Last<br>line on the window) on the first non-blank character<br>linewise.
To line [count] from top (Home) of window (default:<br>first line on the window) on the first non-blank<br>character linewise.
To Middle line of window, on the first non-blank<br>character linewise.
Goto line [count], default last line, on the first<br>non-blank character linewise.<br>gg
Goto line [count], default first line, on the first<br>non-blank character linewise.<br>j or or CTRL-J or CTRL-N or
[count] lines downward linewise.<br>k or or CTRL-P
[count] lines upward linewise.
[count] lines upward, on the first non-blank<br>character linewise.<br>+ or CTRL-M or
[count] lines downward, on the first non-blank<br>character linewise.<br>'{a-z}
The cursor is positioned on the first non-blank<br>character in the line of the specified location and<br>the motion is linewise.<br>`{a-z[]} or and start<br>insert.
Delete from the cursor position to the end of the<br>line and [count]-1 more lines , and<br>start insert. Synonym for c$
Delete [count] characters and start<br>insert (s stands for Substitute). Synonym for "cl"
Delete [count] lines and start<br>insert. Synonym for "cc" linewise.<br>y{motion}
Yank {motion} text .<br>d{motion}
Delete text that {motion} moves over .
Delete the characters under the cursor until the end<br>of the line and [count]-1 more lines synonym for "d$".
Delete [count] characters under and after the cursor<br>(not linewise). Does the same as<br>"dl".
Delete [count] characters before the cursor (not linewise). Does the same as "dh".
Begin a new line above the cursor and insert text
Begin a new line below the cursor and insert text
Put the text after the cursor<br>[count] times.
Put the text before the cursor<br>[count] times.
Join 2 lines.<br>m{a-z}
Set mark {a-z} at cursor position
Move backward.
Move forward.<br>zL
Move the view on the text half a screenwidth to the<br>right, thus scroll the text half a screenwidth to the<br>left.<br>z or zl
Move the view on the text [count] characters to the<br>right, thus scroll the text [count] characters to the<br>left.<br>zH
Move the view on the text half a screenwidth to the<br>left, thus scroll the text half a screenwidth to the<br>right.<br>z or zh
Move the view on the text [count] characters to the<br>left, thus scroll the text [count] characters to the<br>right.<br>ze
Scroll the text horizontally to position the cursor<br>at the end (right side) of the screen.<br>zs
Scroll the text horizontally to position the cursor<br>at the start (left side) of the screen.<br>CTRL-E
Scroll window [count] lines downwards in the...