MD - youtube video; log metrics test.

This commit is contained in:
Martin Dvorak 2014-01-24 08:31:55 +01:00
parent 762fd77c4d
commit c6a796cd94
7 changed files with 36 additions and 9 deletions

View file

@ -1,7 +1,7 @@
hstr hstr
==== ====
BASH History Suggest Box - [http://www.youtube.com/watch?v=QYP4PlPvzT0](http://www.youtube.com/watch?v=QYP4PlPvzT0) BASH History Suggest Box - [http://www.youtube.com/watch?v=sPF29NyXe2U](http://www.youtube.com/watch?v=sPF29NyXe2U)
DESCRIPTION DESCRIPTION

View file

@ -377,11 +377,13 @@ void selection_loop(HistoryItems *history)
case K_CTRL_T: case K_CTRL_T:
caseSensitive=!caseSensitive; caseSensitive=!caseSensitive;
result=print_selection(maxHistoryItems, prefix, history); result=print_selection(maxHistoryItems, prefix, history);
// TODO render selected line (or reset and move to prompt)
print_history_label(history); print_history_label(history);
break; break;
case K_CTRL_H: case K_CTRL_H:
defaultOrder=!defaultOrder; defaultOrder=!defaultOrder;
result=print_selection(maxHistoryItems, prefix, history); result=print_selection(maxHistoryItems, prefix, history);
// TODO render selected line (or reset and move to prompt)
print_history_label(history); print_history_label(history);
break; break;
case K_CTRL_X: case K_CTRL_X:

View file

@ -35,7 +35,8 @@ static const char *commandBlacklist[] = {
#endif #endif
unsigned history_ranking_function(unsigned rank, int newOccurenceOrder, size_t length) { unsigned history_ranking_function(unsigned rank, int newOccurenceOrder, size_t length) {
long metrics=rank+newOccurenceOrder/10+length; //long metrics=rank+newOccurenceOrder/10+length;
long metrics=rank+(log(newOccurenceOrder)*10.0)+length;
assert(metrics<UINT_MAX); assert(metrics<UINT_MAX);
return metrics; return metrics;
} }

BIN
tests/_ranking Executable file

Binary file not shown.

View file

@ -7,18 +7,22 @@
#include "../src/include/hashset.h" #include "../src/include/hashset.h"
int main(int argc, char *argv[]) void testBlacklist() {
{ const char* commandBlacklist[] = { };
const char *commandBlacklist[] = {"ls", "pwd", "cd", "hh", "mc"};
HashSet blacklist; HashSet blacklist;
int i; int i;
hashset_init(&blacklist); hashset_init(&blacklist);
for(i=0; i<5; i++) { for (i = 0; i < 5; i++) {
hashset_add(&blacklist, commandBlacklist[i]); hashset_add(&blacklist, commandBlacklist[i]);
} }
for (i = 0; i < 5; i++) {
for(i=0; i<5; i++) { printf("match %d\n",
printf("match %d\n", hashset_contains(&blacklist, strdup(commandBlacklist[i]))); hashset_contains(&blacklist, strdup(commandBlacklist[i])));
} }
} }
int main(int argc, char *argv[])
{
testBlacklist();
}

19
tests/src/test_ranking.c Normal file
View file

@ -0,0 +1,19 @@
/* Test
*/
#include <stdio.h>
#include <math.h>
void testLog() {
const int HISTORY_SIZE=2000;
int i;
for(i=0; i<HISTORY_SIZE; i++) {
printf("\n%d # l: %f # l10: %f # l2: %f",i,log(i), log10(i), log2(i));
}
}
int main(int argc, char *argv[])
{
testLog();
}

1
tests/test_ranking.sh Executable file
View file

@ -0,0 +1 @@
gcc ./src/test_ranking.c -lm -o _ranking