Ir para o conteúdo

 Voltar a PW3270 Suporte
Tela cheia

Teclado

7 de Janeiro de 2010, 11:04 , por Desconhecido - | Ninguém seguindo este artigo por enquanto.
Visualizado 1324 vezes

Bom dia 

usamos o terminal iSeries  da IBM versao 5.5

estou testando em um linux (Ubuntu)  instalacao normal

mas as funcao de F3 F12 e por diante que teria no iSeries nao temos encontrando no PW3270 tem algo similar ou uma configuracao pra fazermos a mudanca.

 

desde ja agrdeco

Luciano Soares

Tecplam - Manaus

Autor: Luciano Soares


3636 comentários

  • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
    7 de Janeiro de 2010, 12:30

     

    Olá,

    Não entendi direito a pergunta: As teclas f3 a f12 do teclado não estão atuando? Se não, os botões correspondentes no teclado lateral (PF1 a PF12) funcionam? 

    • Be4d3c03d12c4a4f9dec47a8613daf63?only path=false&size=50&d=404Maurício Severich(usuário não autenticado)
      2 de Março de 2010, 15:17

       

      Olá!

      Também ocorreu da mesma forma no teste que fizemos aqui. Verificamos que o comportamento esperado ocorre somente se o Shift for pressionado em conjunto como as teclas de função.

      Saudações e parabéns pelo software.

      Maurício

      • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
        2 de Março de 2010, 16:18

         

        Olá,

        Perdoe mas ainda não entendi o problema, só para esclarecer...

         Por default as teclas F1 a F12 do teclado...

        ... quando pressionadas sozinhas atuam como PF1 a PF13

        ... quando pressionadas com shift atual como PF13 a PF24

        O comportamento está diferente disso?

        Algumas observações:

        O funcionamento de qualquer uma delas pode ser redefinidos por arquivos .xml no diretório "ui"
        Dois cliques num campo da tela que comece com F maiusculo seguido por dois dígitos também envia o código da PF correspondente.

        • Be4d3c03d12c4a4f9dec47a8613daf63?only path=false&size=50&d=404Maurício Severich(usuário não autenticado)
          3 de Março de 2010, 10:36

           

          Olá,

          Para acesso ao terminal iSeries, infelizmente está diferente. Usando o x3270 as teclas tem o comportamento esperado F3=PF3.

          Fiquei pensando se não poderia ser algo parecido com o tipo de terminal a ser usado na sessão de emulação. Por exemplo, em um sistema Unix-like a variável de ambiente TERM configura o tipo de emulação de terminal utilizado (e.g.: vt52, vt100, ansi, linux, xterm, aixterm, etc ...)

          Infelizmente, meu "extremamente limitado" conhecimento do ambiente iSeries não permitiu especificar outros tipos de terminal para teste.

          Obrigado pela atenção e interesse.

          Saudações,

          Maurício

          • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
            8 de Março de 2010, 9:30

             

            Não deveria ter nada a ver com o tipo de terminal já que, shift-tecla parece estar gerando o código correto. Até mesmo as PFs da barra de botões ficam invertidas?

            • Be4d3c03d12c4a4f9dec47a8613daf63?only path=false&size=50&d=404Maurício Severich(usuário não autenticado)
              9 de Abril de 2010, 18:19

               

              Olá,

              Desculpe a demora.

              Fiz o teste novamente com a versão desenvolvimento do pw3270, o comportamento persiste - PF3 somente com Shift+F3.

              As PFs da barra de botões também tem o mesmo comportamento do teclado - exceto que não adianta manter o Shift pressionado enquanto se clica no botão.

              Obrigado pela atenção e interesse.

               

              Saudações,

              Maurício Severich

            • Be4d3c03d12c4a4f9dec47a8613daf63?only path=false&size=50&d=404Maurício Severich(usuário não autenticado)
              15 de Abril de 2010, 17:27

               

              Olá,

              Talvez essas observações possam ser úteis.

              Ao configurar o tamanho da tela de um terminal x3270, usando a opção '-model 2' obtive o mesmo comportamento do pw3270 (Shift+F3=PF3).

              Interessante notar que o manual do x3270 sugere que essa opção está relacionada somente ao número de colunas e linhas.
              Como também encontrei essa opção no pw3270 (via lib3270), fiz o teste passando "--model=3" na linha de comando do pw3270 e pude perceber que a PF3 começou a ter o comportamento esperado. Entretanto, ainda não foi possível usar o pw3270 pois existe algum problema na atualização de tela e/ou sincronia com eventos do teclado quando a opcao "--model=" não está definida com o valor 2.

              Testes realizados no Debian (lenny) com GNOME.

               

              Obrigado pela atenção e interesse.

               

              Saudações,

              Maurício Severich

              • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                15 de Abril de 2010, 20:50

                 

                Olá,

                Na prática o número do modelo só afeta o tamanho da tela, porém, ele é usado para montar o tipo de terminal que é enviado para o mainframe, talvez, afete a forma como os dados são tratados.

                Você consegue usar normal com o x3270? Qual modelo você usa nele? Pergunto porque o código do pw3270 é feito em cima do x3270, em teoria, se um funciona o outro também.

                Se você habilitar o trace no x3270 o modelo do terminal aparece logo no início da negociação, por exemplo, aqui aparece (no pw3270, que usa o mesmo formato de trace):

                 

                SENT SB TN3270E DEVICE-TYPE REQUEST IBM-3278-3-E SE

                • Be4d3c03d12c4a4f9dec47a8613daf63?only path=false&size=50&d=404Maurício Severich(usuário não autenticado)
                  16 de Abril de 2010, 9:20

                   

                  Olá,

                  O x3270 funciona com o comportamento esperado pois o modelo de terminal padrão dele é o 4 (80x43). O x3270 também funciona normalmente usando o modelo 3.

                  Já quando utilizada a opção '-model 2' o x3270 apresenta o comportamento do pw3270 - ou seja, altera o funcionamento da PF3 - exigindo o uso em conjunto do Shift+F3.

                  ======trechos do trace do x3270 (model 3)======

                  Model 3279-3-E, color display, extended data stream, color emulation, bracket charset

                  < 0x0   fffd27fffd18
                  RCVD DO NEW-ENVIRON
                  > 0x0   fffc27
                  SENT WONT NEW-ENVIRON
                  RCVD DO TERMINAL TYPE
                  > 0x0   fffb18
                  SENT WILL TERMINAL TYPE
                  < 0x0   fffa1801fff0
                  RCVD SB TERMINAL TYPE SEND
                  > 0x0   fffa180049424d2d333237392d332d45fff0
                  SENT SB TERMINAL TYPE IS IBM-3279-3-E SE
                  ===================================

                   

                  ======trechos do trace do x3270 (model 4)======

                  Model 3279-4-E, color display, extended data stream, color emulation, bracket charset

                  SENT SB TERMINAL TYPE IS IBM-3279-4-E SE
                  ===================================

                  Por isso tentei utilizar as opções --model=3 e --model=4 no pw3270. Ocorre que com essas opções as PFs tem o comportamento esperado F3=PF3, mas o uso ainda fica inviabilizado devido a outro problema: o comportamento da atualização de tela e/ou sincronia com teclado - durante o uso há sempre uma etapa de atraso entre o que está na tela e o que realmente deveria estar.

                   

                  Obrigado pela atenção e interesse.

                   

                  Saudações,

                   

                  Maurício Severich

  • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
    16 de Junho de 2011, 15:44

     

    Amigos,

     Primeiramente parabéns pelo trabalho, o emulador é muito legal e muito promissor.

    No x3270 eu costumava utilizar o .x3270pro pra definir o teclado e depois chamava na command line --keymap ibmstd e tudo funcionava legal. essa mesma estrategia funcionaria com o pw3270 ? qual o arquivo no qual tenho que definir o teclado ?

     Obrigado.

    Abraço.

     O Arquivo pro x3270 é assim :

    ! x3270 profile
    ! Created by Eduardo Rocha (ehrocha@gmail.com)
    ! toggles (-set, -clear)
    x3270.altCursor: true
    x3270.cursorBlink: true
    x3270.crosshair: true
    x3270.marginedPaste: true
    ! emulator font  (-efont)
    x3270.emulatorFont: 3270gt24
    !
    ! Making x3270 behave like PCOM Keyboard
    !
    x3270.keymap.ibmstd:\
       <Key>Escape:    Reset()\n\
       <Key>Return:    Newline()\n\
       <Key>Control_R: Enter()\n\
       <Key>End:       EraseEOF()\n\
       <Key>Pause:     Clear()\n\
       <Key>Prior:     PA("1")\n\
       <Key>Next:      PA("2")\n\
       Shift<Key>F1:   PF(13)\n\
       Shift<Key>F2:   PF(14)\n\
       Shift<Key>F3:   PF(15)\n\0
       Shift<Key>F4:   PF(16)\n\
       Shift<Key>F5:   PF(17)\n\
       Shift<Key>F6:   PF(18)\n\
       Shift<Key>F7:   PF(19)\n\
       Shift<Key>F8:   PF(20)\n\
       Shift<Key>F9:   PF(21)\n\
       Shift<Key>F10:  PF(22)\n\
       Shift<Key>F11:  PF(23)\n\
       Shift<Key>F12:  PF(24)\n
    !
    ! Telling x3270 to overrride the Keyboard settings
    !
    x3270.keymap:   ibmstd

    • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
      16 de Junho de 2011, 21:02

       

      Olá,Como o pw3270 usa "ações" do gtk para tratar não só o teclado como todos os outros elementos da interface (botões da toolbar, menus, etc) o mapeamento de teclas é feito nos próprios arquivos que definem a interface principal: Um ou vários arquivos .xml dentro do diretório UI.Por exemplo, o mapeamento das PFs como você mostrou ficaria num .xml com o seguinte conteúdo:<ui>
      <accelerator name="pf13" action="pfkey" id="13" group="online" key="<shift>f1" />
      <accelerator name="pf14" action="pfkey" id="14" group="online" key="<shift>f2" />
      <accelerator name="pf15" action="pfkey" id="15" group="online" key="<shift>f3" />
      <accelerator name="pf16" action="pfkey" id="16" group="online" key="<shift>f4" />
      <accelerator name="pf17" action="pfkey" id="17" group="online" key="<shift>f5" />
      <accelerator name="pf18" action="pfkey" id="18" group="online" key="<shift>f6" />
      <accelerator name="pf19" action="pfkey" id="19" group="online" key="<shift>f7" />
      <accelerator name="pf20" action="pfkey" id="20" group="online" key="<shift>f8" />
      <accelerator name="pf21" action="pfkey" id="21" group="online" key="<shift>f9" />
      <accelerator name="pf22" action="pfkey" id="22" group="online" key="<shift>f10" />
      <accelerator name="pf23" action="pfkey" id="23" group="online" key="<shift>f11" />
      <accelerator name="pf24" action="pfkey" id="24" group="online" key="<shift>f12" />
      </ui>    

      • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
        16 de Junho de 2011, 22:49

         

        Perry, 

         

        Muito Obrigado pela atenção e pela resposta rápida,  quanto as outras teclas (que são as mais importantes pra mim) 

        <Key>Escape:    Reset()\n\
        <Key>Return:    Newline()\n\
        <Key>Control_R: Enter()\n\
        <Key>End:       EraseEOF()\n\
        <Key>Pause:     Clear()\n\
        <Key>Prior:     PA("1")\n\
        <Key>Next:      PA("2")\n\

        Ficariam como ? tem alguma documentação das actions ?

        Abraço e obrigado.

        • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
          16 de Junho de 2011, 23:14

           

          Olá,Ficariam mais ou menos assim (não sei quais as teclas para "prior" e "next" por isso deixei como ""):<ui> <accelerator name="escape" action="Reset" group="online" key="Escape" /> <accelerator name="return" action="Return" group="online" key="Return" /> <accelerator name="enter" action="Enter" group="online" key="Enter" /> <accelerator name="end" action="EraseEOF" group="online" key="End" /> <accelerator name="pause" action="Clear" group="online" key="Pause" /> <accelerator name="prior" action="pakey" id="1" group="online" key="" /> <accelerator name="next" action="pakey" id="2" group="online" key="" /></ui> O conteúdo do campo name= não precisa obrigatoriamente estar relacionado com a tecla; ele é usado apenas para juntar ações iguais que existam em mais de um elemento da interface, por exemplo, uma ação que existe na toolbar e no menu.A lista parcial das ações pode ser encontrada em www.​soft​ware​publ​ico.​gov.​br/d​otlr​n/cl​ubs/​pw32​70/x​owik​i/ac​tion​sMai​s sobre personalização dos menus em http://www.softwarepublico.gov.br/dotlrn/clubs/pw3270/xowiki/Actions 

          • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
            17 de Junho de 2011, 0:06

             

            Obrigado, 

            Funcionou direitinho , exceto pela tecla Control_R (sou da velha guarda e uso o enter no control da direita) ele não dá erro dizendo que a tecla é invalida mas não dá o enter.

            Abraço

            • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
              17 de Junho de 2011, 0:20

               

              Olá,Por "control da direita" seria o enter do teclado numérico? Se for esse o nome dele é KP_EnterA lista completa de teclas reconhecida pelo gtk pode ser achada na net (eu achei pelo google em www.​kode​rs.c​om/c​/fid​D9E5​E78F​D91F​E6AB​DD6D​3F78​DA5E​4A0F​ADE7​9933​.asp​x ), porém, nem todas as teclas listadas lá existem nos teclados PC.

              • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
                17 de Junho de 2011, 0:30

                 

                Perry, 

                 Obrigado novamente, a tecla que estou falando é a tecla control , que fica do lado direito da barra de espaço depois do alt (Alt_R) e tecla menu (Hyper_R) ..
                Seria essa :

                162 #define GDK_Control_R 0xFFE4
                 Mas não funciona nem por decreto.

                • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                  17 de Junho de 2011, 1:27

                   

                  Olá,Acho que entendi: Você quer associar uma ação ao ctrl-direito puro, sem combinar com nenhuma outra tecla? Se for isso pode ser preciso um ajuste no código para dar um tratamento especial já que as ações da <ctrl> normalmente só atuam em combinação com outra tecla.  

                • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                  17 de Junho de 2011, 10:01

                   

                  Olá,Implementei o teste das teclas GDK_Control_L e R; no linux parece ter funcionado normal. Falta testar nas outras plataformas. 

                  • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
                    17 de Junho de 2011, 10:33

                     

                    Bom dia, é exatamente isso que eu quero , colocar a tecla control_r pura , sem nenhuma combinação.

                    Estou usando plataforma linux (ubuntu) , estava testando a tecla como Control_R e não funcionou, preciso colocar GDK_Control_R ?

                    Abraço

                    • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                      17 de Junho de 2011, 11:32

                       

                      Olá,Não, o GDK_ eu mesmo completo; algumas teclas (como por exemplo o ctrl, o shift e o alt) precisam de tratamento especial no código para uso em separado já que normalmente são usadas em combinação com outras.Um detalhe importante sobre a tecla Ctrl no linux é que, para que ela seja passada aos aplicativos a função que avisa do ponteiro do mouse quando você pressiona ctrl tem que estar desligada no painel de controle. Você instalou no Ubuntu usando os .deb ou recompilou manualmente? 

                      • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
                        17 de Junho de 2011, 11:54

                         

                        A Função de mostrar o ponteiro esta desabilitada, instalei usando os .deb disponiveis.

                        • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                          17 de Junho de 2011, 15:03

                           

                          Olá,Ok, nesse caso me dê um tempinho para gerar um novo set de .deb. Serve Ubuntu 11.04? 

                          • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
                            17 de Junho de 2011, 15:14

                             

                            Fala Perry, Não esquenta a cabeça, eu faço o build do SVN ... assim que eu testar eu falo se funcionou.

                             

                            Abraço e obrigado pelo suporte

                            • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
                              17 de Junho de 2011, 15:48

                               

                              Funcionou perfeitamente com a ultima versão do SVN .. Quanto a Action Newline, que existe no x3270, será implementada ?  Obrigado.

                              • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                                17 de Junho de 2011, 16:20

                                 

                                Olá,Você consegue testar se a ação "newline" está ok nesse último release (1526)? 

                                • 7d44cb75d2df3274354675de4f2b1897?only path=false&size=50&d=404Eduardo Rocha(usuário não autenticado)
                                  17 de Junho de 2011, 16:39

                                   

                                  Amigo, Perfeito parabéns pelo trabalho com o emulador e pelo suporte.Se precisar de alguma ajuda pra testar alguma coisa, pode contar. Abraço 

                                  • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                                    17 de Junho de 2011, 17:41

                                     

                                    Olá,Obrigado pela ajuda com os testes. Novas sugestões são sempre bem vindas. 

                                    • 4f679703f287ebc647b232b82aeea132?only path=false&size=50&d=404Eduardo Bisogno Andrade(usuário não autenticado)
                                      24 de Junho de 2011, 15:45

                                       

                                      Olá

                                       

                                         Qual configuração para utilizar o Enter normal (0x13) coma função newline? Funcionou com outras teclas, mas com o Enter nem pisca.

                                      • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                                        24 de Junho de 2011, 16:49

                                         

                                        OláFiz um teste rápido alterando direto o arquivo default.xml e funcionou:Onde está: <accelerator action='Return' key='Return' />Substitui por: <accelerator action='Newline' key='Return' /> Alterou o enter do teclado normal para a função newline e manteve o enter do teclado numérico (KP_Enter) com a função default. 

                                        • 4f679703f287ebc647b232b82aeea132?only path=false&size=50&d=404Eduardo Bisogno Andrade(usuário não autenticado)
                                          24 de Junho de 2011, 17:57

                                           

                                          Olá

                                           

                                             O KP_Enter do teclado numérico não funcionou, assim como o Control_R também não. Seguem as regras usadas:

                                              <accelerator action='NewLine' key='Return' />
                                              <accelerator action='Enter' key='KP_Enter' />   
                                             <accelerator action='Enter' key='Control_R' group='online'/>

                                           O parâmetro KPAlternative  está com false no arquivo de configuração, pode ter algum impacto no problema?

                                          • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                                            24 de Junho de 2011, 18:10

                                             

                                            Olá,Estranho, deveria funcionar; Você está testando com a última revisão do svn? O KPAlternative não afeta isso; ele muda apenas a função das teclas +/- do teclado numérico. 

                                            • 4f679703f287ebc647b232b82aeea132?only path=false&size=50&d=404Eduardo Bisogno Andrade(usuário não autenticado)
                                              27 de Junho de 2011, 12:59

                                               

                                              Olá

                                               

                                                 Estou testando com versão 4.2.3, realmente KP_Enter e Enter não estão funcionando; O Enter identificado como 'Return' funciona como nova linha, mas o do teclado numérico está sendo identificado como 'Return' também. Como referido, o Ctrl_R nem pisca.

                                              • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                                                27 de Junho de 2011, 14:39

                                                 

                                                Olá,4.2.3 seria o pacote windows que enviei para a área de arquivos? Se for esse o newline está funcionando nele quando associado a qualquer outro código? Confesso que essa função nunca foi testada em windows e, dadas as diferenças no tratamento de teclado pode ser preciso verificar/alterar algo. 

                                                • 4f679703f287ebc647b232b82aeea132?only path=false&size=50&d=404Eduardo Bisogno Andrade(usuário não autenticado)
                                                  27 de Junho de 2011, 16:42

                                                   

                                                  Olá

                                                   

                                                   

                                                     É esse o pacote. O Newline funciona normalmente, o que não funciona realmente é o mapa de teclas segundo o GTK. As teclas com padrão ISO_****_*** (ISO_Left_Tab por exemplo) são reconhecidas no Windows, mas KP_Enter e as outras não.

                                                  • 3f09f0772d9354bc3661d73bf02b0f60?only path=false&size=50&d=404Perry Werneck(usuário não autenticado)
                                                    29 de Junho de 2011, 10:45

                                                     

                                                    Olá,O tratamento das teclas CTRL-L e CTRL-R precisava de ajustes no windows e deve estar ok na versão que estou enviando agora. Quando ao enter e kp-enter parece que, no windows, elas informam o mesmo código, daí, fica um pouco mais complicado para tratar. 

Essa comunidade não possui posts nesse blog