1
0
mirror of git://git.gnupg.org/gnupg.git synced 2025-03-24 22:09:57 +01:00

* mainproc.c (list_node): Show sigs with --verbose.

* options.h, g10.c (set_screen_dimensions): New function to look at
COLUMNS and LINES.

* keyserver.c (parse_keyrec, keyserver_search_prompt), keyedit.c
(print_and_check_one_sig): Use new screen dimension variables.
This commit is contained in:
David Shaw 2004-01-24 00:47:45 +00:00
parent f7447eabea
commit 385a19bd7b
6 changed files with 45 additions and 16 deletions

View File

@ -1,3 +1,13 @@
2004-01-23 David Shaw <dshaw@jabberwocky.com>
* mainproc.c (list_node): Show sigs with --verbose.
* options.h, g10.c (set_screen_dimensions): New function to look
at COLUMNS and LINES.
* keyserver.c (parse_keyrec, keyserver_search_prompt), keyedit.c
(print_and_check_one_sig): Use new screen dimension variables.
2004-01-21 David Shaw <dshaw@jabberwocky.com>
* g10.c (list_config): New function to dump config options to

View File

@ -870,6 +870,31 @@ set_homedir (char *dir)
}
/* We set the screen dimensions for UI purposes. Do not allow screens
smaller than 80x24 for the sake of simplicity. */
static void
set_screen_dimensions(void)
{
#ifndef _WIN32
char *str;
str=getenv("COLUMNS");
if(str)
opt.screen_columns=atoi(str);
str=getenv("LINES");
if(str)
opt.screen_lines=atoi(str);
#endif
if(opt.screen_columns<80 || opt.screen_columns>255)
opt.screen_columns=80;
if(opt.screen_lines<24 || opt.screen_lines>255)
opt.screen_lines=24;
}
static void
set_cmd( enum cmd_and_opt_values *ret_cmd, enum cmd_and_opt_values new_cmd )
{
@ -1366,6 +1391,7 @@ main( int argc, char **argv )
VERIFY_SHOW_POLICY_URLS|VERIFY_SHOW_NOTATIONS|VERIFY_SHOW_KEYSERVER_URLS;
opt.trust_model=TM_AUTO;
opt.mangle_dos_filenames = 0;
set_screen_dimensions();
#if defined (_WIN32)
set_homedir ( read_w32_registry_string( NULL,
"Software\\GNU\\GnuPG", "HomeDir" ));

View File

@ -71,7 +71,6 @@ static int enable_disable_key( KBNODE keyblock, int disable );
static void menu_showphoto( KBNODE keyblock );
static int update_trust=0;
static int columns=80;
#define CONTROL_D ('D' - 'A' + 1)
@ -165,7 +164,7 @@ print_and_check_one_sig( KBNODE keyblock, KBNODE node,
else {
size_t n;
char *p = get_user_id( sig->keyid, &n );
tty_print_utf8_string2( p, n, columns-37 );
tty_print_utf8_string2( p, n, opt.screen_columns-37 );
m_free(p);
}
tty_printf("\n");
@ -1189,15 +1188,6 @@ keyedit_menu( const char *username, STRLIST locusr, STRLIST commands,
goto leave;
}
#ifndef _WIN32
if(getenv("COLUMNS"))
{
columns=atoi(getenv("COLUMNS"));
if(columns<80 || columns>255)
columns=80;
}
#endif
if( sign_mode ) {
commands = NULL;
append_to_strlist( &commands, sign_mode == 1? "sign":

View File

@ -532,6 +532,8 @@ parse_keyrec(char *keystring)
does this for us. */
decoded=utf8_to_native(userid,i,0);
if(strlen(decoded)>opt.screen_columns-10)
decoded[opt.screen_columns-10]='\0';
iobuf_writestr(work->uidbuf,decoded);
m_free(decoded);
iobuf_writestr(work->uidbuf,"\n\t");
@ -595,12 +597,10 @@ show_prompt(KEYDB_SEARCH_DESC *desc,int numdesc,int count,const char *search)
static void
keyserver_search_prompt(IOBUF buffer,const char *searchstr)
{
int i=0,validcount=0,started=0,header=0,count=1;
int i=0,validcount=0,started=0,header=0,count=1,numlines=0;
unsigned int maxlen,buflen;
KEYDB_SEARCH_DESC *desc;
byte *line=NULL;
/* TODO: Something other than 23? That's 24-1 (the prompt). */
int maxlines=23,numlines=0;
desc=m_alloc(count*sizeof(KEYDB_SEARCH_DESC));
@ -707,7 +707,8 @@ keyserver_search_prompt(IOBUF buffer,const char *searchstr)
if(!opt.with_colons)
{
if(numlines+keyrec->lines>maxlines)
/* screen_lines - 1 for the prompt. */
if(numlines+keyrec->lines>opt.screen_lines-1)
{
if(show_prompt(desc,i,validcount?count:0,searchstr))
break;

View File

@ -1005,7 +1005,7 @@ list_node( CTX c, KBNODE node )
char *p;
int sigrc = ' ';
if( !opt.list_sigs )
if( !opt.verbose )
return;
if( sig->sig_class == 0x20 || sig->sig_class == 0x30 )

View File

@ -183,6 +183,8 @@ struct {
int strict;
int mangle_dos_filenames;
int enable_progress_filter;
int screen_columns;
int screen_lines;
#ifdef ENABLE_CARD_SUPPORT
const char *ctapi_driver; /* Library to access the ctAPI. */