fish-shell/history.h
axel cf3d30d4e4 Lazily load history file
darcs-hash:20060206150810-ac50b-f4e5fe9312aa898fa025d2874444c4fc5724c309.gz
2006-02-07 01:08:10 +10:00

73 lines
1.5 KiB
C

/** \file history.h
Prototypes for history functions, part of the user interface.
*/
#ifndef FISH_HISTORY_H
#define FISH_HISTORY_H
#include <wchar.h>
/**
Init history library. The history file won't actually be loaded
until the first time a history search is performed.
*/
void history_init();
/**
Saves the new history to disc and frees all memory used by the history.
*/
void history_destroy();
/**
Add a new history item to the bottom of the history, containing a
copy of str. Remove any duplicates. Moves the current item past the
end of the history list.
*/
void history_add( const wchar_t *str );
/**
Find previous history item starting with str. If this moves before
the start of the history, str is returned.
*/
const wchar_t *history_prev_match( const wchar_t *str );
/**
Return the specified history at the specified index, or 0 if out of bounds. 0 is the index of the current commandline.
*/
wchar_t *history_get( int idx );
/**
Move to first history item
*/
void history_first();
/**
Make current point to last history item
*/
void history_reset();
/**
Find next history item starting with str. If this moves past
the end of the history, str is returned.
*/
const wchar_t *history_next_match( const wchar_t *str);
/**
Set the current mode name for history. Each application that uses
the history has it's own mode. This must be called prior to any use
of the history.
*/
void history_set_mode( wchar_t *name );
/**
Perform sanity checks
*/
void history_sanity_check();
#endif