X-Git-Url: https://fleuret.org/cgi-bin/gitweb/gitweb.cgi?a=blobdiff_plain;ds=inline;f=selector.cc;h=bec4ed3841ccb2dc726348e9397c1525e74fea2d;hb=99f32dbf95f84e3890aae1c2075afcc4976d97a1;hp=2664dd7768359fda1f39a66de46f1aa1a1c64a47;hpb=2e6257964d214b205e798891487f7d8489c7f406;p=selector.git
diff --git a/selector.cc b/selector.cc
index 2664dd7..bec4ed3 100644
--- a/selector.cc
+++ b/selector.cc
@@ -46,9 +46,10 @@ using namespace std;
// Yeah, global variables!
int buffer_size = 1024;
-int nb_lines_max = 1000;
+int nb_lines_max = 10000;
char pattern_separator = ';';
int output_to_vt_buffer = 0;
+int with_colors = 1;
//////////////////////////////////////////////////////////////////////
@@ -231,9 +232,15 @@ void update_screen(int *current_line, int *temporary_line, int motion,
// Highlight the highlighted line ...
if(l == new_line) {
- attron(COLOR_PAIR(2));
- addnstr(buffer, console_width);
- attroff(COLOR_PAIR(2));
+ if(with_colors) {
+ attron(COLOR_PAIR(2));
+ addnstr(buffer, console_width);
+ attroff(COLOR_PAIR(2));
+ } else {
+ attron(A_STANDOUT);
+ addnstr(buffer, console_width);
+ attroff(A_STANDOUT);
+ }
} else {
addnstr(buffer, console_width);
}
@@ -276,9 +283,15 @@ void update_screen(int *current_line, int *temporary_line, int motion,
buffer[console_width] = '\0';
move(0, 0);
- attron(COLOR_PAIR(1));
- addnstr(buffer, console_width);
- attroff(COLOR_PAIR(1));
+ if(with_colors) {
+ attron(COLOR_PAIR(1));
+ addnstr(buffer, console_width);
+ attroff(COLOR_PAIR(1));
+ } else {
+ attron(A_REVERSE);
+ addnstr(buffer, console_width);
+ attroff(A_REVERSE);
+ }
// We are done
@@ -291,6 +304,9 @@ int main(int argc, char **argv) {
char buffer[buffer_size];
char *lines[nb_lines_max];
int no_blink = 0;
+ int color_theme = 0;
+
+ setlocale(LC_ALL, "");
char input_filename[buffer_size], output_filename[buffer_size];
strcpy(input_filename, "");
@@ -315,6 +331,11 @@ int main(int argc, char **argv) {
i++;
}
+ else if(strcmp(argv[i], "-m") == 0) {
+ with_colors = 0;
+ i++;
+ }
+
else if(strcmp(argv[i], "-f") == 0) {
check_opt(argc, argv, i, 1, "");
strncpy(input_filename, argv[i+1], buffer_size);
@@ -332,6 +353,12 @@ int main(int argc, char **argv) {
i += 2;
}
+ else if(strcmp(argv[i], "-t") == 0) {
+ check_opt(argc, argv, i, 1, "");
+ color_theme = atoi(argv[i+1]);
+ i += 2;
+ }
+
else {
cerr << "Selector version " << VERSION
<< endl
@@ -341,6 +368,8 @@ int main(int argc, char **argv) {
<< " [-h]"
<< " [-b]"
<< " [-v]"
+ << " [-m]"
+ << " [-t ]"
<< " [-o