70 lines
2.9 KiB
Groff
70 lines
2.9 KiB
Groff
|
|
||
|
$ProductVersion{4.1.0}
|
||
|
$ManualSubVersion{0}
|
||
|
$File{4coder_manual}
|
||
|
|
||
|
$Title{4coder 4.1 User's Manual}
|
||
|
|
||
|
$Hd{1}{4coder 4.1. User's Manual}
|
||
|
$Hd{3}[Allen Webster, 2018-09-07}
|
||
|
|
||
|
$TableOfContents{ALL}
|
||
|
|
||
|
$BeginContents{ALL}
|
||
|
|
||
|
$PushSection{ALL}{}{$Hd{2}{First Time User}}
|
||
|
|
||
|
$PushSection{ALL}{}{$Hd{3}{Organization}}
|
||
|
4coder's most basic organization of information is by $Link{buffers}{org_buffers} and $Link{views}{views}. Buffers, described
|
||
|
simply, are an optimized array of characters encoded in UTF-8, that support reading and writing anywhere in the buffer and can
|
||
|
be rendered to screen. A view represents an region of the 4coder window with a self contained state for interactions from the
|
||
|
user.
|
||
|
|
||
|
These major objects exist independently, they are created and closed independently. The only relationship that ever exists
|
||
|
between a view and a buffer is that a view can set a buffer as it's target for writing, reading, and rendering. Multiple views
|
||
|
can target a single buffer. Any view can target any buffer at any time. Closing a buffer in a view leaves the view open,
|
||
|
closing a view that targets a buffer leaves the buffer open. All of this is to emphasize that these two types of entities
|
||
|
exist absolutely independently and have only a very weak relationship.
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$PushSection{ALL}{org_buffers}{$Hd{3}{Buffer Basics}}
|
||
|
A buffer is essentially an optimized array of characters encoded in UTF-8, with a lot of extra features attached. Many
|
||
|
buffers will be tied directly to a corresponding file and will save their contents out to their file, but a few buffers exist
|
||
|
just to be a holder for text. In deafult 4coder behavior all buffers that lack a backing file have a name starting and ending
|
||
|
with $Code{'*'} characters.
|
||
|
|
||
|
A new buffer with a file association can be opened any time using one of the interactive commands for file system browsing:
|
||
|
$BeginTable{FileBuf}{1}
|
||
|
$Row{$Link{cmdref_interactive_open_or_new}{interactive_open_or_new}}
|
||
|
$Row{$Link{cmdref_interactive_new}{interactive_new}}
|
||
|
$Row{$Link{cmdref_interactive_open}{interactive_open}}
|
||
|
$EndContents{FileBuf}
|
||
|
|
||
|
Once you open a new buffer with a file association it will be the dedicated buffer for that file from then on, opening the
|
||
|
file again will always just bring you back to the buffer you already opened, to create a totally different copy you have to
|
||
|
manually make a fresh new buffer and then copy the contents over.
|
||
|
|
||
|
To see a list of all open buffers and switch a view to targetting any buffer there is the interactive command
|
||
|
$Link{cmdref_interactive_switch_buffer}{interactive_switch_buffer}.
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$PushSection{ALL}{}{$Hd{2}{Commands}}
|
||
|
$ImportContents{commands.man}{ALL}
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$PushSection{ALL}{}{$Hd{2}{Bindings}}
|
||
|
$ImportContents{bindings.man}{ALL}
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$PushSection{ALL}{}{$Hd{2}{Config Files and Project Files}}
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$PushSection{ALL}{}{$Hd{2}{Customization}}
|
||
|
$PopSection{ALL}
|
||
|
|
||
|
$EndContents{ALL}
|
||
|
|
||
|
|