Allow enabling of tab expansion via the TABS environment variable. - sam - An updated version of the sam text editor.
(HTM) git clone git://vernunftzentrum.de/sam.git
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) LICENSE
---
(DIR) commit 1dd8035b1ece549eff2a6b57a5ae2a6aebcb2441
(DIR) parent 5fc6fa96da153d7df639c9c01a398fd146b8c857
(HTM) Author: Rob King <jking@deadpixi.com>
Date: Thu, 28 Jul 2016 10:15:21 -0500
Allow enabling of tab expansion via the TABS environment variable.
Diffstat:
doc/sam.1 | 10 ++++++++++
libframe/frinit.c | 6 ++++++
2 files changed, 16 insertions(+), 0 deletions(-)
---
(DIR) diff --git a/doc/sam.1 b/doc/sam.1
@@ -1047,6 +1047,16 @@ By default, this is the string
A number between 1 and 12, indicating the width of a tab character.
This number is treated as a multiplier of the width of the '0' character.
The default is 8.
+.Pp
+If the number specified for
+.Ev TABS
+is negative, the absolute value of that number is used and automatic tab expansion
+.Po
+as for the
+.Fl e
+flag
+.Pc
+is enabled.
.El
.Sh FILES
.Bl -tag -width Ds
(DIR) diff --git a/libframe/frinit.c b/libframe/frinit.c
@@ -5,11 +5,17 @@
#include <frame.h>
int tabwidth = 8;
+extern int expandtabs;
void
frinit(Frame *f, Rectangle r, XftFont *ft, Bitmap *b)
{
int tabs = atoi(getenv("TABS") ? getenv("TABS") : "");
+ if (tabs < 0){
+ tabs = -tabs;
+ expandtabs = 1;
+ }
+
if (tabs > 0 && tabs <= 12)
tabwidth = tabs;