De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Maurício Amorim da Silva
Data de Publicação: 08 de setembro de 2011
Quem acha que trabalhar com unix nos leva a sempre enfrentar as linha de comandos de um terminal, o que para muitos é muito prazeroso, mas para outros pode ser um tédio quando esses estão acostumados com interfaces gráficas do windows ou mesmo de outro sistemas operacionais, como o próprio unix através da utilização do x-window.
Há muito tempo atrás, quando trabalhava na Unicamp, desenvolvemos algumas telas utilitárias utilizando-se o biblioteca ncurses do unix, através da linguagem C. A utilização da linguagem C, principalmente para o pessoal de suporte, onde necessitamos geralmente de desenvolvimentos rápidos para automatização de alguma atividades pode ser ser uma boa alternativa. Linguagens como ksh, sh, bash, perl são muito melhores nesses momentos.
Em especial, nos últimos anos tive um contato até que significativo com o perl, linguagem interpretada, uma verdadeiro wrapper da linguagem C. Fora a gama de pacotes desenvolvidos pela comunidade e que podem ser baixados do site www.cpan.org.
Há alguns anos atrás, estava eu dando uma bisbilhotada nesse site e descobri um pacote de nome Curses::UI
, que é uma framework que utiliza outro pacote do perl chamado Curses
que utiliza a API ncurses do unix.
Esse pacote é bem completo, para criação de telas no unix. É orientado à objetos. Possui quase todos os componentes visuais que utilizamos numa aplicação gráfica, só que em modo texto. Temos desde menus até caixas de diálogo, barras de progressão, panels, calendários, combo box, campos de entrada de senha, e uma variedade de outros componentes, com possibilidade de manipulação de alguns desses através do mouse.
Abaixo estarei listando os passos que realizei para a instalação de todos os itens necessários para a utilização desse pacote. Espero que seja útil para a comunidade UNIX.
PATH
o gcc instalado em /usr/bin
$ tar -xzvf ncurses-5.7.tar.gz $ cd ncurses-5.7 $ ./configure --prefix=/home/<conta>/apps/ncurses $ make $ make test $ make installOBS: Apos a instalação, copiar os arquivos (todos os *.h) de
/home/<conta>/apps/ncurses/include/ncurses/*
para /home/<conta>/apps/ncurses/include
(não achei outra maneira de corrigir esse problema, que traz problema na instalação do pacote Curses citado posteriormente).
$ tar -xzvf perl589.tar.gz $ cd perl589 $ sh Configure --prefix=/home/<conta>/apps/perl $ make $ make test $ make installObservações
export PATH=/home/<conta>/apps/perl/bin:$PATH
$ tar -xzvf Curses1.28.tar.gz $ cd Curses1.28 $ perl Makefile.PL $ make $ make test $ make install
$ tar -xzvf TermReadKey .tar.gz $ cd TermReadKey $ perl Makefile.PL $ make $ make test $ make install $ tar -xzvf CursesUI.tar.gz $ cd CursesUI $ perl Makefile.PL $ make $ make test $ make installDentro do diretório
examples
em CursesUI, existem algumas aplicações exemplo, que podem ser utilizadas para visualização dos recursos dessa api e como base para a implementação de novas aplicações.
Observações
$ export TERM=xterm
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários