diff options
| -rw-r--r-- | Makefile | 6 | ||||
| -rw-r--r-- | config.h | 4 | ||||
| -rw-r--r-- | dwmblocks.c | 14 | 
3 files changed, 16 insertions, 8 deletions
| @@ -1,4 +1,6 @@ -PREFIX ?= /usr/local +.POSIX: + +PREFIX = /usr/local  output: dwmblocks.o  	gcc dwmblocks.o -lX11 -o dwmblocks @@ -12,3 +14,5 @@ install: output  	chmod 755 $(DESTDIR)$(PREFIX)/bin/dwmblocks  uninstall:  	rm -f $(DESTDIR)$(PREFIX)/bin/dwmblocks + +.PHONY: clean install uninstall @@ -2,7 +2,7 @@  static const Block blocks[] = {  	/*Icon*/	/*Command*/		/*Update Interval*/	/*Update Signal*/  	{"", "cat /tmp/recordingicon 2>/dev/null",	0,	9}, -	/* {"",	"music",	0,	11}, */ +	/* {"",	"music",	0,	11},*/  	{"",	"pacpackages",	0,	8},  	{"",	"news",		0,	6},  	/* {"",	"crypto",	0,	13}, */ @@ -24,7 +24,7 @@ static const Block blocks[] = {  };  //sets delimeter between status commands. NULL character ('\0') means no delimeter. -static char delim = ' '; +static char *delim = " ";  // Have dwmblocks automatically recompile and run when you edit this file in  // vim with the following line in your vimrc/init.vim: diff --git a/dwmblocks.c b/dwmblocks.c index f061503..d135a7d 100644 --- a/dwmblocks.c +++ b/dwmblocks.c @@ -75,11 +75,12 @@ void getcmd(const Block *block, char *output)  		return;  	char c;  	int i = strlen(block->icon); -	fgets(output+i, CMDLENGTH-i, cmdf); +	fgets(output+i, CMDLENGTH-(strlen(delim)+1), cmdf);  	remove_all(output, '\n');  	i = strlen(output); -	if (delim != '\0' && i) -		output[i++] = delim; +    if ((i > 0 && block != &blocks[LENGTH(blocks) - 1])) +        strcat(output, delim); +    i+=strlen(delim);  	output[i++] = '\0';  	pclose(cmdf);  } @@ -134,8 +135,11 @@ int getstatus(char *str, char *last)  {  	strcpy(last, str);  	str[0] = '\0'; -	for(int i = 0; i < LENGTH(blocks); i++) +    for(int i = 0; i < LENGTH(blocks); i++) {  		strcat(str, statusbar[i]); +        if (i == LENGTH(blocks) - 1) +            strcat(str, " "); +    }  	str[strlen(str)-1] = '\0';  	return strcmp(str, last);//0 if they are the same  } @@ -222,7 +226,7 @@ int main(int argc, char** argv)  	for(int i = 0; i < argc; i++)  	{  		if (!strcmp("-d",argv[i])) -			delim = argv[++i][0]; +			delim = argv[++i];  		else if(!strcmp("-p",argv[i]))  			writestatus = pstdout;  	} | 
