tled: output LNPREF before each line - neatvi - [fork] simple vi-type editor with UTF-8 support
 (HTM) git clone git://src.adamsgaard.dk/neatvi
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
       ---
 (DIR) commit 5e1f787eec332dcdf9f3608c0745551d5de72ad4
 (DIR) parent 10f95a93f415196040f45fd84924244856dcfff0
 (HTM) Author: Ali Gholami Rudi <ali@rudi.ir>
       Date:   Tue, 30 Nov 2021 20:55:12 +0330
       
       led: output LNPREF before each line
       
       Diffstat:
         M conf.c                              |       5 +++++
         M conf.h                              |       9 ++++++---
         M led.c                               |       1 +
         M vi.h                                |       1 +
       
       4 files changed, 13 insertions(+), 3 deletions(-)
       ---
 (DIR) diff --git a/conf.c b/conf.c
       t@@ -106,3 +106,8 @@ char *conf_digraph(int c1, int c2)
                                return digraphs[i][1];
                return NULL;
        }
       +
       +char *conf_lnpref(void)
       +{
       +        return LNPREF;
       +}
 (DIR) diff --git a/conf.h b/conf.h
       t@@ -1,7 +1,7 @@
        /* neatvi configuration file */
        
        /* access mode of new files */
       -#define MKFILE_MODE                0600
       +#define MKFILE_MODE        0600
        
        /* map file names to file types */
        static struct filetype {
       t@@ -118,10 +118,13 @@ static struct highlight {
        };
        
        /* how to hightlight current line (hll option) */
       -#define SYN_LINE                (SYN_BGMK(11))
       +#define SYN_LINE        (SYN_BGMK(11))
        
        /* how to hightlight text in the reverse direction */
       -#define SYN_REVDIR                (SYN_BGMK(7))
       +#define SYN_REVDIR        (SYN_BGMK(7))
       +
       +/* define it as "\33[8l" to disable BiDi in vte-based terminals */
       +#define LNPREF                ""
        
        /* right-to-left characters (used only in dircontexts[] and dirmarks[]) */
        #define CR2L                "ءآأؤإئابةتثجحخدذرزسشصضطظعغـفقكلمنهوىييپچژکگی‌‍؛،»«؟ًٌٍَُِّْ"
 (DIR) diff --git a/led.c b/led.c
       t@@ -87,6 +87,7 @@ static char *led_render(char *s0, int cbeg, int cend, char *syn)
                led_markrev(n, chrs, pos, att);
                /* generate term output */
                out = sbuf_make();
       +        sbuf_str(out, conf_lnpref());
                i = cbeg;
                while (i < cend) {
                        int o = off[i - cbeg];
 (DIR) diff --git a/vi.h b/vi.h
       t@@ -194,6 +194,7 @@ int conf_mode(void);
        char **conf_kmap(int id);
        int conf_kmapfind(char *name);
        char *conf_digraph(int c1, int c2);
       +char *conf_lnpref(void);
        
        /* global variables */
        extern int xrow;