Index: uspace/app/bdsh/tok.h
===================================================================
--- uspace/app/bdsh/tok.h	(revision 36ab7c737a9b47469d540e94a850fab80bda101c)
+++ uspace/app/bdsh/tok.h	(revision 7dcb7981f0dce48017dcb71e0a8e61941a5e5e4b)
@@ -30,7 +30,25 @@
 #define TOK_H
 
+typedef enum {
+	TOKTYPE_TEXT,
+	TOKTYPE_PIPE,
+	TOKTYPE_SPACE
+} token_type_t;
+
+typedef struct {
+	char *text;
+	off_t byte_start;
+	off_t char_start;
+	size_t byte_length;
+	size_t char_length;
+ 	token_type_t type;
+} token_t;
+
 typedef struct {
 	char *in;
-	size_t in_offset;
+	off_t in_offset;
+	off_t last_in_offset;
+	off_t in_char_offset;
+	off_t last_in_char_offset;
 	
 	char *outbuf;
@@ -39,10 +57,10 @@
 	size_t outbuf_last_start;
 	
-	char **outtok;
+	token_t *outtok;
 	size_t outtok_offset;
 	size_t outtok_size;
 } tokenizer_t;
 
-extern int tok_init(tokenizer_t *, char *, char **, size_t);
+extern int tok_init(tokenizer_t *, char *, token_t *, size_t);
 extern void tok_fini(tokenizer_t *);
 extern int tok_tokenize(tokenizer_t *);
