'터미널'에 해당되는 글 1건
- 2007.01.14 vte를 이용한 간단한 터미널 2
vte를 이용한 간단한 터미널
Programming/GTK+ 2007. 1. 14. 12:00
오! 이런 위젯이 있는지 몰랐네요..
간단한 위젯인데.. 이거 하나만 쓰면 그냥 터미널이 바로 뜨니..
조금만 해보면 자신만의 터미널을 만드는것도 쉬울거 같네요..
gnome-terminal,tilda가 이 vte 라이브러리를 사용하네요
아마 가상 터미널 애뮬리이팅? 의 약자인듯하네여..
30줄도 안대는 코드로 터미널 하나가 완성됩니다
해더->vte/vte.h,gtk/gtk.h
1 #include
2 #include
3
4 int main(int argc,char *argv[])
5 {
6 GtkWidget *terminal;
7 GtkWidget *window;
8
9 gtk_init(&argc,&argv);
10
11 window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
12
13 terminal=vte_terminal_new(); //위젯 생성
14 //터미널 씰헁조건 같은거..
15 vte_terminal_fork_command(VTE_TERMINAL(terminal),
16 getenv("SHELL"),NULL,NULL,"/home/lowid",
17 TRUE,TRUE,TRUE);
18
19 gtk_container_add(GTK_CONTAINER(window),terminal);
20
21 g_signal_connect(GTK_OBJECT(window),"destroy",gtk_main_quit,NULL);
22 g_signal_connect(GTK_OBJECT(terminal),"child-exited",gtk_main_quit,NULL); //터미널에서 exit 쳤을때
23 gtk_widget_show_all(window);
24
25 gtk_main();
26 return 0;
27 }
다른건 gtk창만드는것과 같고 다른게 있다면 vte의 함수를 가따 썻다는거 뿐
함수는 다음을 참고 하세연..클뤽~!
참고하면 좋은 소스
링크타고 보시면 아시겠지만 터미널을 제어할수 있는 함수가 몇개 되더군요..
이거 이용하면 그놈터미널정도(?)의 수준으로 터미널 만드는건 아주 어려운일 같은 정도는 아닌거 같습니다
추가>vte_terminal_fork_command 함수의 두번째 인자 getenv("SHELL")을 해야 쉘이 뜹니당..(처음 프로그램 정해줌)
안해주면 커서만 가만히 놀고 있음.. 이거 몰라가꾸 하루죙일 뻘짓,..
간단한 위젯인데.. 이거 하나만 쓰면 그냥 터미널이 바로 뜨니..
조금만 해보면 자신만의 터미널을 만드는것도 쉬울거 같네요..
gnome-terminal,tilda가 이 vte 라이브러리를 사용하네요
아마 가상 터미널 애뮬리이팅? 의 약자인듯하네여..
30줄도 안대는 코드로 터미널 하나가 완성됩니다
해더->vte/vte.h,gtk/gtk.h
1 #include
2 #include
3
4 int main(int argc,char *argv[])
5 {
6 GtkWidget *terminal;
7 GtkWidget *window;
8
9 gtk_init(&argc,&argv);
10
11 window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
12
13 terminal=vte_terminal_new(); //위젯 생성
14 //터미널 씰헁조건 같은거..
15 vte_terminal_fork_command(VTE_TERMINAL(terminal),
16 getenv("SHELL"),NULL,NULL,"/home/lowid",
17 TRUE,TRUE,TRUE);
18
19 gtk_container_add(GTK_CONTAINER(window),terminal);
20
21 g_signal_connect(GTK_OBJECT(window),"destroy",gtk_main_quit,NULL);
22 g_signal_connect(GTK_OBJECT(terminal),"child-exited",gtk_main_quit,NULL); //터미널에서 exit 쳤을때
23 gtk_widget_show_all(window);
24
25 gtk_main();
26 return 0;
27 }
다른건 gtk창만드는것과 같고 다른게 있다면 vte의 함수를 가따 썻다는거 뿐
함수는 다음을 참고 하세연..클뤽~!
참고하면 좋은 소스
링크타고 보시면 아시겠지만 터미널을 제어할수 있는 함수가 몇개 되더군요..
이거 이용하면 그놈터미널정도(?)의 수준으로 터미널 만드는건 아주 어려운일 같은 정도는 아닌거 같습니다
추가>vte_terminal_fork_command 함수의 두번째 인자 getenv("SHELL")을 해야 쉘이 뜹니당..(처음 프로그램 정해줌)
안해주면 커서만 가만히 놀고 있음.. 이거 몰라가꾸 하루죙일 뻘짓,..
'Programming > GTK+' 카테고리의 다른 글
xlib 에러 해결! (2) | 2007.02.28 |
---|---|
gtk Thread (2) | 2007.02.27 |
libglade 컴파일법 (1) | 2006.12.14 |
TODAY.... 삽질 DAY (6) | 2006.08.09 |
(초보) gtk 작성팁 (10) | 2006.08.04 |