Thursday, January 11, 2007

sighs und curses

Been thinking a bit about a friends remark... A good mixture of delight and desiaseter in such thoughts but oh well. A spider can always dream. The odds of a girl friend as nutty about computers as I, is sadly slim. I'm the most "geeky" person I know in town. Aside from professionals with comute I'm also probably the only person in town who knows *nix.


Any way, I've been learning a new library. I'm some what able with the standard C library if a tad un-skilled. Not like I have many excuses for using every routine in my spare time xD So I've started on ncurses, much more interesting then GUI development IMHO because in a console level of usage. A good UI is a must, at least to be powerful yet eligent the way that Vi or Emacs are.

So far I've learned how to create a little window box and move it around with my arror keys. Not really useful but the concept it thought me was.

Mainly that we can loop threw calling getch() or simular routine till we get to our desired escape method. And use a switch/case setup to implement what we want to do on a given input. Like

/* from the file */
while((ch = getch()) != KEY_F(1)) {
        switch(ch) {

        case KEY_LEFT:
                destroywin(my_win);
                my_win = create_newwin(height, width, starty,--startx);
                break;
        case KEY_RIGHT:
                destroy_win(my_win);
                my_win = create_newwin(height, width, starty,++startx);
                break;
        case KEY_UP:
                destroy_win(my_win);
                my_win = create_newwin(height, width, --starty,startx);
                break;
        case KEY_DOWN:
                destroy_win(my_win);
                my_win = create_newwin(height, width, ++starty,startx);
                break;
        }
}

This and the ideas that come to me with this concept. Blow my mind away, I never thought that much about it. Really the most I thought about such things were based on Javas AWT. Although I've writen very little Java and I like it that way. I probably am most familer with Java then any other high-level language but I really do prefer C.

Hopefully in time, I'll learn a lot more and maybe can work on some thing I've always wanted to do. You see, one part of my studies has been to try and take what I've learned and implement some thing. In the paste I've used an integer calculator to redesign to test my understanding of various ideas. I remember the first one I worked on, maybe 2 years ago was testing my abilities with Functions when I first started to learn C++

One of my hearts secret desires has been to design a niffty text editor, dang I'd love it. I could learn so much and working on it would give me some thing to do. If I could, I'd even like to try and implement a 'vile' style that merges vi/vim/emacs commands into a single modal editor. Plus give me a chance to make GUI front ends, good excuses to learn more OO and GTK/QT, maybe add wordstar key setups as an excuse to learn them. Not really necessary but still it'd be a fun project for my young mind to toy with.

dang it, my minds starting to wonder off to the first paragraph of this post, time to hit Vi and play with gcc.

No comments:

Post a Comment