Translation

(itstool) path: listitem/para
English
Very powerful editor, allowing search-and-replace on both strings and regular expressions (patterns), jumping to start/end of block expression, etc, etc.
177/1530
Context English Portuguese (Brazil) State
<prompt>%</prompt> <userinput>gdb <filename><replaceable>progname</replaceable></filename></userinput>
GDB is free software and you are welcome to distribute copies of it
under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.13 (i386-unknown-freebsd), Copyright 1994 Free Software Foundation, Inc.
(gdb) <userinput>core <filename><replaceable>progname</replaceable>.core</filename></userinput>
Core was generated by `<filename><replaceable>progname</replaceable></filename>'.
Program terminated with signal 11, Segmentation fault.
Cannot access memory at address 0x7020796d.
#0 0x164a in bazz (anint=0x5) at temp.c:17
(gdb)
<prompt>%</prompt> <userinput>gdb a.out</userinput>
GDB is free software and you are welcome to distribute copies of it
under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.13 (i386-unknown-freebsd), Copyright 1994 Free Software Foundation, Inc.
(gdb) <userinput>core a.out.core</userinput>
Core was generated by `a.out'.
Program terminated with signal 11, Segmentation fault.
Cannot access memory at address 0x7020796d.
#0 0x164a in bazz (anint=0x5) at temp.c:17
(gdb)
In this case, the program was called <filename><replaceable>progname</replaceable></filename>, so the core file is called <filename><replaceable>progname</replaceable>.core</filename>. We can see that the program crashed due to trying to access an area in memory that was not available to it in a function called <function>bazz</function>. Neste caso, o programa foi chamado <filename> a.out </filename> , então o arquivo principal é chamado <filename> a.out.core </filename> . Podemos ver que o programa travou devido a tentar acessar uma área na memória que não estava disponível para ele em uma função chamada <function> bazz </function>
Sometimes it is useful to be able to see how a function was called, as the problem could have occurred a long way up the call stack in a complex program. <command>bt</command> causes <command>gdb</command> to print out a back-trace of the call stack: Às vezes é útil poder ver como uma função foi chamada, já que o problema poderia ter ocorrido um longo caminho até a pilha de chamadas em um programa complexo. <command> bt </command> causas de comando <command> gdb </command> para imprimir um rastreamento da pilha de chamadas:
(gdb) <userinput>bt</userinput>
#0 0x164a in bazz (anint=0x5) at temp.c:17
#1 0xefbfd888 in end ()
#2 0x162c in main () at temp.c:11
(gdb)
(gdb) <userinput>bt</userinput>
#0 0x164a in bazz (anint=0x5) at temp.c:17
#1 0xefbfd888 in end ()
#2 0x162c in main () at temp.c:11
(gdb)
The <function>end()</function> function is called when a program crashes; in this case, the <function>bazz()</function> function was called from <function>main()</function>. O <function> fim() </function> função é chamada quando um programa falha; neste caso, o <function> bazz () </function> função foi chamada de <function> a Principal() </function>
Attaching to a Running Program with gdb Anexando a um programa em execução
One of the neatest features about <command>gdb</command> is that it can attach to a program that is already running. Of course, that requires sufficient permissions to do so. A common problem is stepping through a program that forks and wanting to trace the child, but the debugger will only trace the parent. Uma das características mais interessantes sobre <command> gdb </command> é que ele pode se conectar a um programa que já está em execução. Claro, isso pressupõe que você tenha permissões suficientes para isso. Um problema comum é quando você está percorrendo um programa que se bifurca e deseja rastrear o filho, mas o depurador só permitirá rastrear o pai.
To do that, start up another <command>gdb</command>, use <command>ps</command> to find the process ID for the child, and do O que você faz é iniciar outra <command> gdb </command> , usar <command> ps </command> para encontrar o ID do processo para o filho e fazer
(gdb) <userinput>attach <replaceable>pid</replaceable></userinput> (gdb) <userinput>attach <replaceable>pid</replaceable></userinput>
in <command>gdb</command>, and then debug as usual. dentro <command> gdb </command> e, em seguida, depurar como de costume
Now all that is needed is to attach to the child, set <symbol>PauseMode</symbol> to <literal>0</literal>, and wait for the <function>sleep()</function> call to return! Agora tudo que você tem a fazer é anexar à criança, definir <symbol> PauseMode </symbol> para <literal> 0 </literal> e aguarde o <function> dormir() </function> ligue para voltar!
Using Emacs as a Development Environment Usando o Emacs como um ambiente de desenvolvimento
Emacs Emacs
Emacs is a highly customizable editor—indeed, it has been customized to the point where it is more like an operating system than an editor! Many developers and sysadmins do in fact spend practically all their time working inside Emacs, leaving it only to log out. O Emacs é um editor altamente personalizável - de fato, foi customizado ao ponto de se parecer mais com um sistema operacional do que com um editor! Muitos desenvolvedores e administradores de sistemas gastam praticamente todo o seu tempo trabalhando dentro do Emacs, deixando apenas para logar Fora.
It is impossible even to summarize everything Emacs can do here, but here are some of the features of interest to developers: É impossível resumir tudo o que o Emacs pode fazer aqui, mas aqui estão algumas das características de interesse para os desenvolvedores:
Very powerful editor, allowing search-and-replace on both strings and regular expressions (patterns), jumping to start/end of block expression, etc, etc. Editor muito poderoso, permitindo pesquisar e substituir em cadeias de caracteres e expressões regulares (padrões), saltando para o início / fim da expressão de bloco, etc, etc.
Pull-down menus and online help. Menus suspensos e ajuda on-line.
Language-dependent syntax highlighting and indentation. Realce e recuo de sintaxe dependente de idioma.
Completely customizable. Completamente personalizável.
You can compile and debug programs within Emacs. Você pode compilar e depurar programas dentro do Emacs.
On a compilation error, you can jump to the offending line of source code. Em um erro de compilação, você pode ir para a linha ofensiva do código-fonte.
Friendly-ish front-end to the <command>info</command> program used for reading GNU hypertext documentation, including the documentation on Emacs itself. Friendly-ish front-end para o <command> informação </command> programa usado para ler a documentação do hipertexto GNU, incluindo a documentação do próprio Emacs.
Friendly front-end to <command>gdb</command>, allowing you to look at the source code as you step through your program. Amigável front-end para <command> gdb </command> , permitindo que você olhe para o código-fonte enquanto percorre seu programa.
And doubtless many more that have been overlooked. E, sem dúvida, muitos mais que foram esquecidos.
Emacs can be installed on FreeBSD using the <package>editors/emacs</package> port. O Emacs pode ser instalado no FreeBSD usando o <package> editores / emacs </package> porta.
Once it is installed, start it up and do <literal>C-h t</literal> to read an Emacs tutorial—that means hold down <keycap>control</keycap>, press <keycap>h</keycap>, let go of <keycap>control</keycap>, and then press <keycap>t</keycap>. (Alternatively, you can use the mouse to select <guimenuitem>Emacs Tutorial</guimenuitem> from the <guimenu>Help</guimenu> menu.) Uma vez instalado, inicie e faça <userinput> Ch t </userinput> ler um tutorial do Emacs - isso significa segurar o <keycap> ao controle </keycap> pressione o botão <keycap> h </keycap> , solte o <keycap> ao controle </keycap> tecla e, em seguida, pressione <keycap> t </keycap> . (Alternativamente, você pode usar o mouse para selecionar <guimenuitem> Tutorial Emacs </guimenuitem> de <guimenu> Socorro </guimenu> cardápio.)
Although Emacs does have menus, it is well worth learning the key bindings, as it is much quicker when you are editing something to press a couple of keys than to try to find the mouse and then click on the right place. And, when you are talking to seasoned Emacs users, you will find they often casually throw around expressions like <quote><literal>M-x replace-s RET foo RET bar RET</literal></quote> so it is useful to know what they mean. And in any case, Emacs has far too many useful functions for them to all fit on the menu bars. Embora o Emacs tenha menus, vale a pena aprender os atalhos de teclado, pois é muito mais rápido quando você está editando algo para pressionar algumas teclas do que tentar localizar o mouse e, em seguida, clicar no lugar certo. E quando você está conversando com usuários experientes do Emacs, você descobrirá que eles frequentemente lançam expressões como <quote><literal> Mx substitui RET foo RET bar RET </literal></quote> Por isso, é útil saber o que eles significam. E, de qualquer forma, o Emacs tem muitas funções úteis para todos eles caberem nas barras de menus.
Fortunately, it is quite easy to pick up the key-bindings, as they are displayed next to the menu item. My advice is to use the menu item for, say, opening a file until you understand how it works and feel confident with it, then try doing C-x C-f. When you are happy with that, move on to another menu command. Felizmente, é muito fácil pegar os atalhos de teclado, como eles são exibidos ao lado do item de menu. Meu conselho é usar o item de menu para, digamos, abrir um arquivo até você entender como ele funciona e se sentir confiante com tente fazer Cx Cf. Quando estiver satisfeito com isso, passe para outro comando de menu.
If you cannot remember what a particular combination of keys does, select <guimenuitem>Describe Key</guimenuitem> from the <guimenu>Help</guimenu> menu and type it in—Emacs will tell you what it does. You can also use the <guimenuitem>Command Apropos</guimenuitem> menu item to find out all the commands which contain a particular word in them, with the key binding next to it. Se você não consegue lembrar o que uma determinada combinação de teclas faz, selecione <guimenuitem> Descrever chave </guimenuitem> de <guimenu> Socorro </guimenu> menu e digite-o - o Emacs lhe dirá o que faz. Você também pode usar o <guimenuitem> Comando Apropos </guimenuitem> item de menu para descobrir todos os comandos que contêm uma palavra em particular neles, com a chave de ligação ao lado dele.
By the way, the expression above means hold down the <keysym>Meta</keysym> key, press <keysym>x</keysym>, release the <keysym>Meta</keysym> key, type <userinput>replace-s</userinput> (short for <literal>replace-string</literal>—another feature of Emacs is that you can abbreviate commands), press the <keysym>return</keysym> key, type <userinput>foo</userinput> (the string you want replaced), press the <keysym>return</keysym> key, type bar (the string you want to replace <literal>foo</literal> with) and press <keysym>return</keysym> again. Emacs will then do the search-and-replace operation you have just requested. By the way, a expressão acima significa segurar o <keysym> Meta </keysym> pressione o botão <keysym> x </keysym> , liberte o <keysym> Meta </keysym> Tipo de chave <userinput> substituir-s </userinput> (abreviatura de <literal> substituir string </literal> —Uma outra característica do Emacs é que você pode abreviar comandos), pressione o <keysym> Retorna </keysym> Tipo de chave <userinput> foo </userinput> (a string que você deseja substituir), pressione o <keysym> Retorna </keysym> key, type bar (a string que você deseja substituir <literal> foo </literal> com) e pressione <keysym> Retorna </keysym> novamente. O Emacs fará então a operação de busca e substituição que você acabou de solicitar.
If you are wondering what on earth <keysym>Meta</keysym> is, it is a special key that many <trademark class="registered">UNIX</trademark> workstations have. Unfortunately, PC's do not have one, so it is usually <keycap>alt</keycap> (or if you are unlucky, the <keysym>escape</keysym> key). Se você está se perguntando o que na terra <keysym> Meta </keysym> chave é, é uma chave especial que muitos <trademark class="registered"> UNIX </trademark> estações de trabalho têm. Infelizmente, o PC não tem um, então é geralmente o <keycap> alt </keycap> chave (ou se você tiver azar, o <keysym> escapar </keysym> chave).

Loading…

New source string a year ago
Browse all component changes

Glossary

English Portuguese (Brazil)
No related strings found in the glossary.

Source information

Source string comment
(itstool) path: listitem/para
Source string location
book.translate.xml:2351
String age
a year ago
Source string age
a year ago
Translation file
books/pt_BR/developers-handbook.po, string 416