
|
85026 packages online
|
|
 |
|
|
|
|
No screenshot available
|
|
NEXTVI PATCHES
==============
Optional patches for Nextvi.
Apply: patch < name.patch
64bit.sh
--------------
Convert entire codebase to 64 bit integers instead of 32 bit.
This will enable Nextvi to read files & buffers up to 9,223,372 Terabytes.
In addition, this will improve performance on 64 bit CPUs due to
matching pointer <---> integer alignment and possibly more compiler
optimizations.
Run this after you've applied the patches.
gen-widechars.sh
--------------
A script I use to update zwchars and dwchars in uc.c
arrowkeys_normal.patch
--------------
Adds arrows keys support in normal mode.
arrowkeys_insert.patch
--------------
Adds arrows keys support in insert mode.
threaded_search.patch
--------------
Multithreaded version of lbuf_search(). Adjust the number of threads in use
and buffer stepping in lbuf.c Ensure that your system supports posix threads,
aka libpthread
hl_part.patch
--------------
Allow syntax highlight to continue past the terminal dimensions up to a
certain limit. To customize the depth, adjust LEDFORW and LEDBACK definitions
in led.c
Patch will alter the meaning of <^> <$> assertions in syntax highlight
regex, as the line would be considered to start/end beyond the visible columns.
Patch works in reverse direction and with reordered text.
hl_naive.patch
--------------
Allow syntax highlight to continue past the terminal dimensions unlimited.
Performance will degrade on very long lines.
debug.patch
--------------
Cleanup reachable memory upon termination.
Use for debugging.
Note: in some features leaks won't be freed - for example hlw (which is not
enabled by default) Also initializes sdense in regex.c so that valgrind stops
freaking out.
grep.patch
--------------
Adds a special temporary buffer /grep/ much like the default /hist/ or /fm/.
When new keybind ^x is executed vi performs fs_search on every file and
stores the results in /grep/ buffer. At last, user will be switched to /grep/.
Line information is stored and displayed with special new syntax highlight
rules. Searched keyword is also highlighted. Use the familiar keybind ^i or
TAB on the wanted line to immediately open the file and goto the line
specified. To quickly open /grep/ use new keybind: vx
The format of the lines stored is specifically designed to mirror the output of
grep -r -n "str" .
The feature can be substituted with a pipe command in case of a higher performing
grep implementation or loading of cached results from script.
rstr.patch
--------------
Adaptation from upstream Neatvi, where simple operations are optimized by
running a specialized search code instead of full regex engine. rstr can
yeild up to 3X faster search on non regex patterns. This is not included in
base nextvi due to underlying complexity.
stdin_pipe.patch
--------------
Allows the user to use vi like less except you need to specify
- as command line arg (just like in vim).
Example:
$ dmesg | vi -
ec_closebuf.patch
--------------
Allows the user to close the buffer using new ex command :cx
Specify a number as an arg for what buffer to close.
Specifying no argument(s) will close the current buffer.
When the buffer is closed all buffers above will be shifted
and renumbered.
Range can be supplied like so :cx0-5
This will close buffers 0 to 5 inclusive
Omiting the parameter of the range assumes current buffer
index for that parameter (not inclusive and either begin or end
of the range). Example :cx-5 or :cx5-
filetype_shebang.patch
--------------
Detect and set the corresponding filetype based on the shebang
or specific data in the file. Currently supports only shell
and python.
kbd_layout.patch
--------------
Changes hjkl to work well with other keyboard layouts.
In this example hjkl is changed to yneo (workman keyboard layout)
Note: this patch can be used as a base for remapping any base keybinds.
quickexit.patch
--------------
Added quickexit to insert mode keybind: kj
It's important to understand that this has a caveat, if input comes too fast,
for example a paste from terminal and the sequence has "kj" in it, insert
mode will be cancelled mid way and paste will be wrong. Luckily this almost
never happens because such letter combination is extremely rare.
Delay time (in ms) can be set via :se qe=N or disabled by setting N to 0.
hl_mark.patch
-------------
Adds new ex option "mhl" which will highlight lbuf marks. Each mark has
different color up to 16. Higher marks may duplicate the colors.
Lazy redraw, use <^L> if needed.
c_option.patch
-------------
Adds -c commandline option. This can be used to pass in ex commands instead
of EXINIT.
exrc.patch
-------------
Adds support for reading ~/.exrc file. This can be used to pass in ex
commands instead of EXINIT.
exrc-xdg.patch
-------------
Adds XDG dir support for exrc.patch.
readonly.patch
-------------
Adds new ex option "ro" and commandline readonly option -R
remove_vla_cliterals.patch
--------------
Removes variable length arrays and compound literals for portability reasons.
undojump.patch
--------------
Adds a new keybind ^o which allows to jump through the undo marks
without actually doing undo.
undo_branches.patch
--------------
Adds a basic multi-level undo implementation. Use the new ex command :up
to print the divergent changes. Each path has an index, to switch to it
use :up with a number as an argument. Example: :up1
The current undo branch is stored as the last index before swapping.
alternate-w-behaviour.patch
--------------
Implements more vim/like d/c/yw
ac_context.patch
--------------
Improvements to autocomplete, now the word completion will also use
text that prefixes the insert when it makes sense. Makes it possible
to autocomplete in more desired situations.
linewrap.patch
--------------
Soft line wrap proof of concept
ex-scripting.patch
--------------
Adds new commands :sc and :sx
NEXTVI_FT - current buffer filetype
NEXTVI_ROW - current line number
NEXTVI_OFF - current byte offset
NEXTVI_COFF - current character offset
NEXTVI_LINE - current line
NEXTVI_WORD - current word
:sc runs a command with the environment variables above
:sx runs a command with the environment variables above and
executes its stdout as ex commands
chunked_read.patch
--------------
Allows nextvi to read files in chunks instead of reading the whole
file into the memory right away. This patch optimizes the reading of
binary files, since it would be truncated earlier before loading
the whole file into memory.
record_input.patch
--------------
Adds ex option "rec". This option specifies a register in which
to record all user input. Makes it easier to record macros.
My current EXINIT setup:
--------------
How it works:
:led - temporarily disable redrawing the screen
:ish - enable interactive shell
:1io{\n}^^kA\n \x1b - inserts macro on line 1 until \x1b
:1,3;0;$yaq - yank 3 lines into register q, excluding last newline
:u - undo insert
:inc (^(?\:(?\!^\.git).)+[^/]+$) always exclude .git folder from :fd
:pac - print autocomplete options
:led - allow screen redraw
Macros:
@q = creates structure like this:
{
}
@w = creates structure like this:
whatever {
whatever
a
}
@e = brings :e !p $c into ex prompt
Note: p is alias to printf. $c[0-9] is env var containing some path
@a = creates a comment like this:
/* whatever */
@s = from the cursor creates a comment like this:
/* whatever */
@d = uncomment /* */ comment
@x = indent % region left
@f = brings :cd !p $c into ex prompt
Note: p is alias to printf. $c[0-9] is env var containing some path
@l = bring !cp % %_|w|!git diff --no-index %_ % macro into ex prompt.
Use to create patch and diff files fast. It relies on
you not saving the file prior to running the macro.
@z = control character mapping placeholders
export EXINIT="$(printf '%b' 'led:ish: 1io{\n}kA\n \x1b:1,3;0;$yaq: 1iA {jo}koa\x1b:;0;$yaw: 1i\\:e \!p $c\x1b:;0;$yae: 1iI/*A*/\x1b:;0;$yaa: 1ii/*A*/\x1b:;0;$yas: 1i/\/\*\n2x/\*\/\n2x\x1b:1,3;0;$yad: 1i>\%<<$\%<<\x1b:;0;$yax: 1i\\:\!cp \% \%_\\:w\\:\!git diff --no-index \%_ \%\x1b:;0;$yal: 1i\\:cd \!p $c\x1b:;0;$yaf: 1i\\:ph1 1 2 1^A\\:ph2 2 2 1^B\\:ph3 3 2 1^C\\:ph4 4 2 1^D\\:ph5 5 2 1^E\\:ph6 6 2 1^F\\:ph7 7 2 1^G\\:ph8 8 2 1^H\\:ph9 9 2 1^I\\:ph10 10 2 1^J\\:ph11 11 2 1^K\\:ph12 12 2 1^L\\:ph13 13 2 1^M\\:ph14 14 2 1^N\\:ph15 15 2 1^O\\:ph16 16 2 1^P\\:ph17 17 2 1^Q\\:ph18 18 2 1^R\\:ph19 19 2 1^S\\:ph20 20 2 1^T\\:ph21 21 2 1^U\\:ph22 22 2 1^V\\:ph23 23 2 1^W\\:ph24 24 2 1^X\\:ph25 25 2 1^Y\\:ph26 26 2 1^Z\\:ph27 27 2 1^[\\:ph28 28 2 1^\\\\\\:ph29 29 2 1^]\\:ph30 30 2 1^^\\:ph31 31 2 1^_\x1b:;0;$yaz: inc (^(?\:(?\!^\.git).)+[^/]+$):u:1:pac:led')"
|
Contents of text/edit/nextvi.lha
PERMSSN UID GID PACKED SIZE RATIO METHOD CRC STAMP NAME
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic] 40 40 100.0% -lh0- 04ed Nov 2 00:37 nextvi-2.1/.gitignore
[generic] 347 928 37.4% -lh5- 1949 Nov 2 00:37 nextvi-2.1/64bit.sh
[generic] 956 2555 37.4% -lh5- 87f1 Nov 2 00:37 nextvi-2.1/ac_context.patch
[generic] 250 436 57.3% -lh5- fe9f Nov 2 00:37 nextvi-2.1/alternate-w-behaviour.patch
[generic] 1535 4299 35.7% -lh5- 95f0 Nov 2 00:37 nextvi-2.1/arrowkeys_insert.patch
[generic] 608 1445 42.1% -lh5- 1594 Nov 2 00:37 nextvi-2.1/arrowkeys_normal.patch
[generic] 2136 5604 38.1% -lh5- e85f Nov 2 00:37 nextvi-2.1/cbuild.sh
[generic] 1600 4355 36.7% -lh5- 50fe Nov 2 00:37 nextvi-2.1/chunked_read.patch
[generic] 5290 13004 40.7% -lh5- 6461 Nov 2 00:37 nextvi-2.1/conf.c
[generic] 930 2156 43.1% -lh5- 3e80 Nov 2 00:37 nextvi-2.1/c_option.patch
[generic] 1511 3363 44.9% -lh5- 9dc6 Nov 2 00:37 nextvi-2.1/debug.patch
[generic] 649 1633 39.7% -lh5- e2e3 Nov 2 00:37 nextvi-2.1/ec_closebuf.patch
[generic] 1210 2506 48.3% -lh5- 191e Nov 2 00:37 nextvi-2.1/ex-scripting.patch
[generic] 10141 32727 31.0% -lh5- b62e Nov 2 00:37 nextvi-2.1/ex.c
[generic] 1208 2772 43.6% -lh5- 0a7b Nov 2 00:37 nextvi-2.1/exrc-xdg.patch
[generic] 1147 2427 47.3% -lh5- 1834 Nov 2 00:37 nextvi-2.1/exrc.patch
[generic] 501 828 60.5% -lh5- 27de Nov 2 00:37 nextvi-2.1/filetype_shebang.patch
[generic] 838 2459 34.1% -lh5- f801 Nov 2 00:37 nextvi-2.1/gen-widechars.sh
[generic] 352 818 43.0% -lh5- 1f18 Nov 2 00:37 nextvi-2.1/gencodemap.sh
[generic] 2323 5713 40.7% -lh5- aaf0 Nov 2 00:37 nextvi-2.1/grep.patch
[generic] 747 1519 49.2% -lh5- 92a7 Nov 2 00:37 nextvi-2.1/hl_mark.patch
[generic] 1121 2989 37.5% -lh5- 5abf Nov 2 00:37 nextvi-2.1/hl_part.patch
[generic] 298 575 51.8% -lh5- f5fb Nov 2 00:37 nextvi-2.1/kbd_layout.patch
[generic] 2535 8156 31.1% -lh5- c6f2 Nov 2 00:37 nextvi-2.1/kmap.h
[generic] 4199 14192 29.6% -lh5- a7ff Nov 2 00:37 nextvi-2.1/lbuf.c
[generic] 5297 15933 33.2% -lh5- bdca Nov 2 00:37 nextvi-2.1/led.c
[generic] 525 848 61.9% -lh5- 052b Nov 2 00:37 nextvi-2.1/LICENSE
[generic] 568 1041 54.6% -lh5- a723 Nov 2 00:37 nextvi-2.1/Makefile
[generic] 202 281 71.9% -lh5- 91ec Nov 2 00:37 nextvi-2.1/man2ascii.sh
[generic] 1353 3002 45.1% -lh5- 5b45 Nov 2 00:37 nextvi-2.1/quickexit.patch
[generic] 17748 53673 33.1% -lh5- 3358 Nov 2 00:37 nextvi-2.1/README
[generic] 1170 2653 44.1% -lh5- b111 Nov 2 00:37 nextvi-2.1/readonly.patch
[generic] 737 1520 48.5% -lh5- 6a79 Nov 2 00:37 nextvi-2.1/record_input.patch
[generic] 5108 16656 30.7% -lh5- b44a Nov 2 00:37 nextvi-2.1/regex.c
[generic] 197 300 65.7% -lh5- c7d6 Nov 2 00:37 nextvi-2.1/reindex.sh
[generic] 153 232 65.9% -lh5- a3b4 Nov 2 00:37 nextvi-2.1/release.sh
[generic] 3704 10230 36.2% -lh5- 70da Nov 2 00:37 nextvi-2.1/remove_vla_cliterals.patch
[generic] 3201 9750 32.8% -lh5- affa Nov 2 00:37 nextvi-2.1/ren.c
[generic] 3657 10893 33.6% -lh5- e64b Nov 2 00:37 nextvi-2.1/rstr.patch
[generic] 2081 4906 42.4% -lh5- 122e Nov 2 00:37 nextvi-2.1/stdin_pipe.patch
[generic] 2466 6850 36.0% -lh5- c422 Nov 2 00:37 nextvi-2.1/term.c
[generic] 2172 5830 37.3% -lh5- 5131 Nov 2 00:37 nextvi-2.1/threaded_search.patch
[generic] 8783 28275 31.1% -lh5- 734a Nov 2 00:37 nextvi-2.1/uc.c
[generic] 847 2264 37.4% -lh5- 0bac Nov 2 00:37 nextvi-2.1/undojump.patch
[generic] 1751 5471 32.0% -lh5- a401 Nov 2 00:37 nextvi-2.1/undo_branches.patch
[generic] 14175 40651 34.9% -lh5- de2b Nov 2 00:37 nextvi-2.1/vi.1
[generic] 13028 42491 30.7% -lh5- 8c5f Nov 2 00:37 nextvi-2.1/vi.c
[generic] 5296 16211 32.7% -lh5- fc4a Nov 2 00:37 nextvi-2.1/vi.h
[generic] 105819 226712 46.7% -lh5- 00a2 Nov 7 02:14 nextvi-2.1/vi
---------- ----------- ------- ------- ------ ---------- ------------ -------------
Total 49 files 242510 624172 38.9% Nov 8 02:09
|
|
|
 |
| Page generated in 0.02 seconds |
Aminet © 1992-2024 Urban
Müller and the Aminet team.
Aminet contact address: <aminet aminet net> |