anjuta-manual - en to th translation catalogue (568 entries)

en: Anjuta IDE Manual
th: คู่มือ IDE แอนจูตา

en: Manual for the Anjuta IDE
th: คู่มือสำหรับ IDE แอนจูตา

en: Permission is granted to copy, distribute and/or modify this document under the terms of the <citetitle>GNU Free Documentation License</citetitle>, Version 1.1 or any later version published by the Free Software Foundation with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy of the <citetitle>GNU Free Documentation License</citetitle> from the Free Software Foundation by visiting <ulink type="http" url="http://www.fsf.org">their Web site</ulink> or by writing to: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
th: อนุญาตให้ทำซ้ำ เผยแพร่ และ/หรือ ดัดแปลงเอกสารนี้ได้ ภายใต้เงื่อนไขของ <citetitle>GNU Free Documentation License</citetitle> รุ่น 1.1 หรือรุ่นถัดมารุ่นใด ๆ ที่เผยแพร่โดยมูลนิธิซอฟต์แวร์เสรี (Free Software Foundation) โดยไม่มี "หัวข้อห้ามเปลี่ยน" (Invariant Sections), ไม่มี "ข้อความปกหน้า" (Front-Cover Texts) และไม่มี "ข้อความปกหลัง" (Back-Cover Texts) คุณอาจรับสำเนาของ <citetitle>GNU Free Documentation License</citetitle> จากมูลนิธิซอฟต์แวร์เสรีได้ที่ <ulink type="http" url="http://www.fsf.org">เว็บไซต์ของมูลนิธิ</ulink> หรือโดยเขียนไปที่: Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

en: Many of the names used by companies to distinguish their products and services are claimed as trademarks. Where those names appear in any GNOME documentation, and those trademarks are made aware to the members of the GNOME Documentation Project, the names have been printed in caps or initial caps.
th: มีชื่อหลายชื่อที่บริษัทต่าง ๆ ใช้แยกความแตกต่างของผลิตภัณฑ์และบริการของตนจากบริษัทอื่น และอ้างเป็นเครื่องหมายการค้า ที่ใดก็ตามที่ชื่อเหล่านั้นปรากฏในเอกสารของ GNOME และสมาชิกโครงการเอกสาร GNOME ได้รับทราบเกี่ยวกับเครื่องหมายการค้าเหล่านั้น ชื่อเหล่านั้นจะเขียนด้วยตัวพิมพ์ใหญ่ หรือขึ้นต้นด้วยตัวพิมพ์ใหญ่

en: Anjuta Manual 2.1.0
th: คู่มือแอนจูตา 2.1.0

en: Anjuta Team
th: ทีมแอนจูตา

en: Introduction
th: เกริ่นนำ

en: <application>Anjuta</application> is a versatile Integrated Development Environment (IDE) for the GNOME desktop. It features a number of advanced programming facilities includes project management, application wizards, an interactive debugger, an integrated Glade UI designer, integrated Devhelp API help, an integrated Valgrind memory profiler, an integrated gprof performance profiler, a class generator, a powerful source editor, source browsing, and more.
th: <application>แอนจูตา</application> เป็นชุดเครื่องมือพัฒนาเบ็ดเสร็จ (IDE) ที่มีความสามารถครบครันสำหรับเดสก์ท็อป GNOME มีเครื่องมือระดับสูงมากมายสำหรับการเขียนโปรแกรม ไม่ว่าจะเป็นการบริหารจัดการโครงการ เครื่องมือวิเศษสร้างโปรแกรม เครื่องมือดีบั๊กแบบโต้ตอบ การเชื่อมรวมกับเครื่องมือออกแบบส่วนติดต่อผู้ใช้สำหรับ Glade เชื่อมรวมกับคู่มือ API Devhelp เชื่อมรวมกับเครื่องมือตรวจสอบการใช้หน่วยความจำ Valgrind เชื่อมรวมกับเครื่องมือวัดประสิทธิภาพ gprof มีเครื่องมือสร้างคลาส เครื่องมือแก้ไขซอร์สที่เก่งกาจ เครื่องมือช่วยไล่ดูซอร์ส และอื่น ๆ

en: Anjuta DevStudio has been designed to be simple to operate yet powerful enough to fulfill all your programming needs. We've added many new features to Anjuta over the course of its development. Our focus is on delivering power and usability at the same time and making your software development enjoyable without overloading your senses. We intend to continue improving and stabilizing Anjuta to give you the best IDE experience possible. We hope you will have a good time using Anjuta. If not, please help us make it better by reporting bugs and suggestions.
th: Anjuta DevStudio ออกแบบมาเพื่อให้ง่ายต่อการใช้งาน แต่ยังทรงพลังมากพอที่จะตอบสนองทุกความต้องการของคุณในการเขียนโปรแกรม เราได้เพิ่มความสามารถใหม่ ๆ มากมายในแอนจูตาตลอดการพัฒนา เราให้ความสำคัญกับการเพิ่มขีดความสามารถและความสะดวกใช้ในเวลาเดียวกัน รวมทั้งการทำให้การพัฒนาซอฟต์แวร์ของคุณสนุกสนานโดยไม่เพิ่มภาระต่อการเรียนรู้จนเกินไป เราจะมุ่งปรับปรุงและสร้างเสถียรภาพให้กับแอนจูตาต่อไป เพื่อให้คุณได้รับความรู้สึกที่ดีกับ IDE เท่าที่จะทำได้ เราหวังว่าคุณจะมีความสุขกับการใช้แอนจูตา หากพบปัญหา กรุณาช่วยเราปรับปรุง ด้วยการรายงานบั๊กและให้คำแนะนำ

en: The following screenshot illustrates some of the things you will find in Anjuta.
th: ภาพหน้าจอต่อไปนี้แสดงบางส่วนของสิ่งที่คุณจะพบในแอนจูตา

en: Anjuta in action
th: แอนจูตาขณะใช้งาน

en: Anjuta has a flexible and advanced docking system that allows you to lay out all views in whatever way you like. You can drag and drop the views using drag bars and rearrange the layout. The layouts are persistent for each project so you can maintain different layouts for different projects. All dock views are minimizable to avoid clutter in the main window. Minimized views appear as icons on the left side of the main window. You can configure all menu actions either by typing when the cursor is over a menu item (the usual GNOME way) or through a dedicated shortcut configuration user interface.
th: แอนจูตามีระบบ dock ที่ยืดหยุ่นและมากความสามารถ ที่ช่วยให้คุณสามารถจัดวางสิ่งต่าง ๆ ในหน้าต่างได้ในแบบที่คุณต้องการ คุณสามารถลากวางช่องแสดงต่าง ๆ ได้โดยใช้แถบลากเพื่อจัดเรียงใหม่ การจัดเรียงจะคงอยู่สำหรับแต่ละโครงการ ทำให้คุณสามารถใช้การจัดเรียงแบบต่าง ๆ ไปตามแต่ละโครงการได้ ช่องแสดงที่ dock ไว้ทั้งหมดสามารถย่อเก็บได้ เพื่อลดความเบียดเสียดในหน้าต่างหลัก ช่องแสดงที่ถูกย่อเก็บจะปรากฏเป็นไอคอนที่ด้านซ้ายของหน้าต่างหลัก คุณสามารถตั้งค่าปุ่มลัดของเมนูทั้งหมดได้ ด้วยการพิมพ์ขณะที่เคอร์เซอร์เลือกที่เมนูอยู่ (ตามวิธีปกติของ GNOME) หรือจะทำผ่านส่วนตั้งค่าปุ่มลัดโดยเฉพาะก็ได้

en: Please report any problems with <application>Anjuta</application> - this will help to improve the software, as well as helping the open source community.
th: กรุณารายงานปัญหาใด ๆ ก็ตามที่คุณพบใน <application>แอนจูตา</application> - การรายงานนี้เป็นการช่วยปรับปรุงตัวซอฟต์แวร์เอง และเป็นการช่วยชุมชนโอเพนซอร์สด้วย

en: Getting Familiar with Anjuta
th: ทำความรู้จักกับแอนจูตา

en: Menus and shortcuts
th: เมนูและปุ่มลัด

en: At the top of the <application>Anjuta</application> main window is the menu bar. You can access almost all of Anjuta's functionality through menu items. Operations have been grouped according to their type. For example, file operations have been grouped into the <guisubmenu>File</guisubmenu> menu.
th: ที่ด้านบนสุดของหน้าต่างหลัก <application>แอนจูตา</application> จะเป็นแถบเมนู คุณสามารถสั่งงานแอนจูตาได้เกือบทั้งหมดที่รายการเมนูนี้ คำสั่งต่าง ๆ จะจัดเป็นกลุ่มตามประเภท ตัวอย่างเช่น คำสั่งเกี่ยวกับแฟ้มจะจัดรวมอยู่ในเมนู <guisubmenu>แฟ้ม</guisubmenu>

en: Menubar
th: แถบเมนู

en: Anjuta menubar
th: แถบเมนูของแอนจูตา

en: File menu
th: เมนูแฟ้ม

en: Shortcut keys are available for many menu items. All shortcut keys are shown alongside the corresponding menu items. Some other useful shortcuts are listed here.
th: รายการเมนูหลายรายการจะมีปุ่มลัด โดยปุ่มลัดจะแสดงอยู่ข้าง ๆ กับรายการเมนูนั้น ๆ ปุ่มลัดอื่น ๆ ที่เป็นประโยชน์ เช่น

en: <emphasis>Switch Editor Page:</emphasis><keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Page Up</keycap></keycombo> (forward) and <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Page Down</keycap></keycombo> (backward). You can also switch pages by right-clicking on the notebook tabs and selecting a filename from the pop-up menu (useful when all the tabs in the editor are not visible at once). Some desktop configurations may already have these shortcut keys assigned. In that case, you will need to reconfigure them (not in Anjuta, because they are fixed) if you want to use these shortcuts.
th: <emphasis>สลับหน้าเครื่องมือแก้ไข:</emphasis> <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Page Up</keycap></keycombo> (ไปข้างหน้า) และ <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Page Down</keycap></keycombo> (ถอยหลัง) นอกจากนี้ คุณยังสามารถสลับหน้าได้โดยคลิกขวาที่แท็บสมุด แล้วเลือกชื่อแฟ้มจากเมนูแบบผุดขึ้น (เป็นประโยชน์ในกรณีที่ไม่สามารถมองเห็นแท็บในเครื่องมือแก้ไขได้พร้อมกันทั้งหมด) เดสก์ท็อปบางชุดอาจมีการกำหนดหน้าที่ปุ่มลัดเหล่านี้ไว้ ในกรณีเช่นนั้น คุณจะต้องตั้งค่าใหม่ (ไม่ใช่ที่แอนจูตา เพราะปุ่มลัดถูกกำหนดไว้ตายตัว) ถ้าคุณต้องการใช้ปุ่มลัดเหล่านี้

en: <emphasis>Context Help:</emphasis><keycombo><keycap>Shift</keycap><keycap>F1</keycap></keycombo>. Place the cursor on the word (for example, the function name) for which you want to get API help and type this shortcut. Context help only works if you have <application>Devhelp</application> installed; otherwise, the context help menu and toolbar button will be inactive. You can get Devhelp from the <application>Devhelp</application> website. You will also have to install the related <application>Devhelp</application> books.
th: <emphasis>วิธีใช้ตามบริบท:</emphasis><keycombo><keycap>Shift</keycap><keycap>F1</keycap></keycombo> วางเคอร์เซอร์ที่คำ (เช่น ที่ชื่อฟังก์ชัน) ที่คุณต้องการขอดูวิธีใช้ API แล้วกดปุ่มลัดนี้ วิธีใช้ตามบริบทนี้จะทำงานได้ก็ต่อเมื่อคุณติดตั้ง <application>DevHelp</application> ไว้แล้วเท่านั้น มิฉะนั้น เมนูและปุ่มแถบเครื่องมือวิธีใช้ตามบริบทจะไม่ทำงาน คุณสามารถหา Devhelp ได้จากเว็บไซต์ของ <application>DevHelp</application> และคุณจะต้องติดตั้งข้อมูลหนังสือ <application>DevHelp</application> ที่เกี่ยวข้องด้วย

en: <emphasis>Autocomplete:</emphasis><keycombo><keycap>Ctrl</keycap><keycap>Enter</keycap></keycombo>. Type this shortcut with the cursor placed at the end of an incomplete word and a list of words matching the remaining part will appear. Scroll and select the right word from the list if you find one.
th: <emphasis>เติมเต็มคำอัตโนมัติ:</emphasis><keycombo><keycap>Ctrl</keycap><keycap>Enter</keycap></keycombo> กดปุ่มลัดนี้ขณะที่เคอร์เซอร์อยู่ที่ท้ายคำที่ไม่สมบูรณ์ จะปรากฏรายการของคำที่ตรงพร้อมส่วนที่เหลือให้ จากนั้นก็เลื่อนและเลือกคำที่เหมาะสมจากรายการคำได้

en: <emphasis>More shortcuts:</emphasis> Look for the shortcut keys displayed on the right side of menu item labels. Shortcuts can also be changed as explained in the tip below.
th: <emphasis>ปุ่มลัดเพิ่มเติม:</emphasis> มองหาปุ่มลัดที่แสดงที่ด้านขวาของป้ายชื่อรายการเมนู ปุ่มลัดเหล่านี้ยังสามารถเปลี่ยนแปลงได้ ดังคำอธิบายในเกร็ดด้านล่าง

en: Customize shortcuts
th: กำหนดปุ่มลัดเอง

en: You can change the default shortcuts by choosing <menuchoice><guisubmenu>Edit</guisubmenu><guimenuitem>Preferences</guimenuitem></menuchoice> and selecting the <interface> Shortcuts</interface> tab.
th: คุณสามารถเปลี่ยนปุ่มลัดปริยายได้ โดยเลือก <menuchoice><guisubmenu>แก้ไข</guisubmenu><guimenuitem>ปรับแต่ง</guimenuitem></menuchoice> แล้วเลือกแท็บ <interface>ปุ่มลัด</interface>

en: Main Window
th: หน้าต่างหลัก

en: The main window contains several view windows which can be rearranged by dragging on their title bars. They can also be minimized by clicking on the minimize buttons on the left of title bars.
th: ในหน้าต่างหลักจะมีหน้าต่างแสดงหลายช่อง ซึ่งสามารถจัดวางใหม่ได้ด้วยการลากที่แถบชื่อ หน้าต่างแสดงเหล่านี้สามารถย่อเก็บได้โดยการคลิกที่ปุ่มย่อเก็บที่ด้านซ้ายของแถบชื่อ

en: The <interface>Documents window</interface> will have one document active at a time (if there are any files opened). All file commands will apply to this active document. You can switch to any document by clicking on its tab. You can do the same by right-clicking on the page tabs and choosing the document from the pop-up menu that will appear. This is especially useful when you have a lot of files opened, but not all of them are visible in the page tab area.
th: <interface>หน้าต่างเอกสาร</interface> จะมีเอกสารที่ทำงานอยู่เพียงคราวละเอกสาร (ถ้ามีแฟ้มเปิดอยู่) ทุกคำสั่งที่เกี่ยวกับแฟ้มจะกระทำกับเอกสารที่ทำงานอยู่นี้ คุณสามารถสลับไปยังเอกสารใด ๆ ได้โดยคลิกที่แท็บของเอกสารนั้น หรือจะใช้วิธีคลิกขวาบนแท็บแบ่งหน้า แล้วเลือกเอกสารจากเมนูแบบผุดขึ้นจะแสดงให้เห็นก็ได้ วิธีนี้จะเป็นประโยชน์ในกรณีที่คุณมีแฟ้มเปิดอยู่เป็นจำนวนมาก แต่ไม่สามารถเห็นได้ทั้งหมดในพื้นที่แท็บ

en: The <interface>Project window</interface> shows a tree of project files if you have a project opened. Otherwise, the <interface>Project window</interface> is usually hidden. Double-clicking on any item in the <interface>Project window</interface> will open that file.
th: <interface>หน้าต่างโครงการ</interface> จะแสดงแผนภาพต้นไม้ของแฟ้มต่าง ๆ ในโครงการถ้าคุณเปิดโครงการอยู่ ถ้าไม่มีโครงการเปิดอยู่ <interface>หน้าต่างโครงการ</interface> ก็มักจะถูกซ่อนไว้ การดับเบิลคลิกที่รายการใด ๆ ใน <interface>หน้าต่างโครงการ</interface> จะเป็นการเปิดแฟ้มนั้น ๆ

en: The <interface>Files window</interface> shows a file tree. If no project is open, the file tree usually points to the file system root but you can change this in the preferences. If a project is open, the window shows all files in the project. Double-clicking opens a file in the appropriate application as configured in the GNOME MIME preferences. Right-clicking opens a context menu which gives you choices about how to open the file.
th: <interface>หน้าต่างแฟ้ม</interface> แสดงแผนภาพต้นไม้ของแฟ้ม ถ้าไม่มีโครงการเปิดอยู่ แผนภาพต้นไม้ของแฟ้มโดยปกติก็จะชี้ไปที่รากของระบบแฟ้ม แต่คุณก็สามารถเปลี่ยนพฤติกรรมนี้ได้ในค่าปรับแต่ง ถ้ามีโครงการเปิดอยู่ หน้าต่างนี้ก็จะแสดงแฟ้มทั้งหมดที่อยู่ในโครงการ การดับเบิลคลิกจะเปิดแฟ้มด้วยโปรแกรมตามที่กำหนดไว้ในค่าปรับแต่ง MIME ของ GNOME การคลิกขวาจะผุดเมนูให้คุณเลือกวิธีเปิดแฟ้ม

en: The <interface>Symbols window</interface> shows a tree of available symbols in the project generated from the <application>ctags</application> parser. Double-clicking opens an editor window with the corresponding file and line.
th: <interface>หน้าต่างสัญลักษณ์</interface> จะแสดงแผนภาพต้นไม้ของสัญลักษณ์ที่มีอยู่ในโครงการตามที่สร้างจากตัวแจง <application>ctags</application> การดับเบิลคลิกจะเปิดแฟ้มที่บรรทัดที่มีสัญลักษณ์นั้น ๆ ในหน้าต่างเครื่องมือแก้ไข

en: There is also a <interface>Search tab</interface> in the Symbols window where you can search for symbols.
th: และยังมี <interface>แท็บค้นหา</interface> ในหน้าต่างสัญลักษณ์ ซึ่งคุณสามารถใช้ค้นหาสัญลักษณ์ต่าง ๆ ได้

en: The <interface>Message window</interface> will list all the messages (both <filename>stdout</filename> and <filename>stderr</filename> outputs) when an external command is executed. The <interface>Message window</interface> is usually hidden, but appears as soon as an external command is executed, such as during file or project compilation, debugging sessions, searches, and many other operations. <application>Anjuta</application> also adds its own messages here when necessary.
th: <interface>หน้าต่างข้อความ</interface> จะแสดงข้อความทั้งหมด (ทั้งจาก <filename>stdout</filename> และ <filename>stderr</filename>) เมื่อมีการเรียกคำสั่งภายนอก โดยปกติแล้ว <interface>หน้าต่างข้อความ</interface> จะถูกซ่อนไว้ แต่จะปรากฏทันทีที่มีการเรียกคำสั่งภายนอก เช่น ขณะคอมไพล์แฟ้มหรือโครงการ ขณะดีบั๊ก ค้นหา และการกระทำอื่น ๆ อีกหลายอย่าง นอกจากนี้ <application>แอนจูตา</application> ยังเพิ่มข้อความเองที่นี่ด้วยเมื่อจำเป็น

en: The colors used to display the messages are important. Messages displayed in the standard foreground color (usually black) are normal messages. Messages displayed in orange are warnings, and those displayed in red are errors. Warning and error messages are <emphasis>linked</emphasis>: double-clicking on such a message will take you to the particular file and line number specified in the message.
th: สีที่ใช้แสดงข้อความมีความสำคัญ ข้อความที่แสดงด้วยสีข้อความมาตรฐาน (โดยปกติเป็นสีดำ) เป็นข้อความปกติ ข้อความที่แสดงด้วยสีส้มเป็นคำเตือน และที่เป็นสีแดงคือข้อผิดพลาด คำเตือนและข้อผิดพลาดจะเป็น <emphasis>ลิงก์</emphasis> เมื่อดับเบิลคลิกที่ข้อความดังกล่าว จะนำคุณไปยังแฟ้มและบรรทัดที่ระบุในข้อความ

en: For example, when you compile a file which contains errors, some red messages will appear showing what the problems are, and where they occur. Double-clicking on such messages will open the file and highlight the line containing the error.
th: ตัวอย่างเช่น เมื่อคุณคอมไพล์แฟ้มที่มีข้อผิดพลาด จะมีข้อความสีแดงแจ้งปัญหาพร้อมระบุตำแหน่งที่เกิด การดับเบิลคลิกที่ข้อความดังกล่าวจะเปิดแฟ้มนั้นพร้อมทั้งเน้นบรรทัดที่มีข้อผิดพลาด

en: The <interface>Terminal window</interface> is a terminal emulator where you can type commands just like in the GNOME Terminal application.
th: <interface>หน้าต่างเทอร์มินัล</interface> เป็นเทอร์มินัลจำลอง ซึ่งคุณสามารถพิมพ์คำสั่งได้เหมือนกับในโปรแกรมเทอร์มินัล GNOME

en: Session management
th: การจัดการวาระ

en: All settings, including window sizes and positions, are saved when you exit <application>Anjuta</application>. Session management is still under development, so you should not exit <application>Anjuta</application> with any unsaved documents. <application>Anjuta</application> will display a warning if you try to exit with unsaved documents still open.
th: การตั้งค่าทั้งหมด รวมทั้งขนาดและตำแหน่งของหน้าต่าง จะถูกบันทึกไว้เมื่อคุณออกจาก <application>แอนจูตา</application> แต่การจัดการวาระยังอยู่ระหว่างการพัฒนา ดังนั้น คุณจึงไม่ควรออกจาก <application>แอนจูตา</application> โดยมีเอกสารที่ยังไม่บันทึกตกค้าง <application>แอนจูตา</application> จะแสดงคำเตือนถ้าคุณพยายามออกโดยมีเอกสารที่ยังไม่บันทึกเปิดอยู่

en: File Operations
th: การกระทำกับแฟ้ม

en: Creating a new file and inserting text
th: การสร้างแฟ้มใหม่และการแทรกข้อความ

en: Creating a New File
th: การสร้างแฟ้มใหม่

en: To create a new file, choose <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>New</guimenuitem></menuchoice> from the menu bar, or click on the <guibutton>New File</guibutton> button on the main toolbar. A new page will appear in the editor (or a new window if the parent document is windowed). New documents will be named <filename>newfile#1</filename>, <filename>newfile#2</filename>, <filename>newfile#3</filename> and so on.
th: การสร้างแฟ้มใหม่ ทำได้โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>ใหม่</guimenuitem></menuchoice> จากแถบเมนู หรือคลิกที่ปุ่ม <guibutton>แฟ้มใหม่</guibutton> บนแถบเครื่องมือหลัก จะปรากฏหน้าใหม่ในเครื่องมือแก้ไข (หรือเปิดหน้าต่างใหม่ ถ้าเอกสารแม่อยู่ในหน้าต่าง) เอกสารใหม่จะมีชื่อเป็น <filename>newfile#1</filename>, <filename>newfile#2</filename>, <filename>newfile#3</filename> ไปเรื่อย ๆ

en: Save file
th: บันทึกแฟ้ม

en: You should save new documents as soon as possible to avoid any data loss in case of a crash.
th: คุณควรบันทึกเอกสารใหม่ทันทีที่เป็นไปได้ เพื่อหลีกเลี่ยงการสูญหายของข้อมูลในกรณีที่โปรแกรมพัง

en: File Wizard
th: เครื่องมือช่วยสร้างแฟ้ม

en: New File Wizard
th: เครื่องมือช่วยสร้างแฟ้มใหม่

en: The Open File dialog
th: กล่องโต้ตอบเปิดแฟ้ม

en: A wizard can also be used to create a new file. To create a new file, choose <menuchoice><guisubmenu>File</guisubmenu><guisubmenu>New</guisubmenu><guimenuitem>File</guimenuitem></menuchoice> from the menu bar. This will open the New File dialog. Select the file type. Enter the filename. The suffix will be automatically added. You can add license information (according to your license choice) and a header. In case of a C/C++ header file, you can also add an header template. Click <guibutton>OK</guibutton> to validate the creation. <placeholder-1/>
th: เครื่องมือช่วยสามารถใช้สร้างแฟ้มใหม่ได้ การสร้างแฟ้มใหม่ ทำได้โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guisubmenu>ใหม่</guisubmenu><guimenuitem>แฟ้ม</guimenuitem></menuchoice> จากแถบเมนู จะเป็นการเปิดกล่องโต้ตอบ "แฟ้มใหม่" จากนั้น เลือกชนิดของแฟ้ม และป้อนชื่อแฟ้ม นามสกุลของแฟ้มจะถูกเพิ่มให้โดยอัตโนมัติ คุณสามารถเพิ่มข้อมูลสัญญาอนุญาต (ตามสัญญาอนุญาตที่คุณเลือก) และแฟ้มส่วนหัว ในกรณีที่เป็นแฟ้มส่วนหัวของ C/C++  คุณสามารถเพิ่มแม่แบบสำหรับแฟ้มส่วนหัวได้ด้วย เสร็จแล้วคลิก <guibutton>ตกลง</guibutton> เพื่อตรวจสอบการสร้าง <placeholder-1/>

en: <application>Anjuta</application> occasionally also creates new file windows during some operations. For example, some Subversion operations such as <command>Diff</command> and <command>View Log</command> create new file windows and add the output there. You can save the contents of these windows to real files if you like.
th: ในบางโอกาส <application>แอนจูตา</application> ยังมีการเปิดหน้าต่างแฟ้มใหม่ในระหว่างปฏิบัติการบางอย่าง ตัวอย่างเช่น ปฏิบัติการบางอย่างของ Subversion เช่น <command>Diff</command> และ <command>ดูปูม</command> จะเปิดหน้าต่างแฟ้มใหม่และเขียนผลลัพธ์ลงที่นั่น คุณสามารถบันทึกเนื้อหาของหน้าต่างเหล่านี้ลงในแฟ้มจริงได้ถ้าต้องการ

en: Inserting Macros
th: การแทรกแมโคร

en: You can use <emphasis>macros</emphasis> to quickly edit repetitive sequences of text.
th: คุณสามารถใช้ <emphasis>แมโคร</emphasis> ในการแก้ไขข้อความชุดซ้ำ ๆ ได้อย่างรวดเร็ว

en: The Macro plugin must be activated.
th: ปลั๊กอินแมโครจะต้องทำงานก่อน

en: Inserting
th: การแทรก

en: Two types of macros are available: Anjuta macros and user macros (displayed as "My macros"). Anjuta macros are not modifiable, but you can define and modify your own user macros.
th: แมโครมี 2 ชนิด: แมโครของแอนจูตาและแมโครของผู้ใช้ (แสดงเป็น "แมโครของฉัน") แมโครของแอนจูตาไม่สามารถแก้ไขได้ แต่คุณสามารถกำหนดและปรับเปลี่ยนแมโครผู้ใช้ของคุณเองได้

en: To insert a macro, move the cursor to the desired place. Select <menuchoice><guisubmenu>Edit</guisubmenu><guisubmenu>Macros</guisubmenu><guimenuitem>Macros...</guimenuitem></menuchoice>. A dialog window appears. Select the desired macro in the list. The result of the macro expansion is displayed in the window and a summary is shown in the dialog window. Choose <guibutton>Insert</guibutton>. The expanded macro text is inserted at the cursor position.
th: การแทรกแมโคร ทำได้โดยเลื่อนเคอร์เซอร์ไปยังตำแหน่งที่ต้องการ เลือก <menuchoice><guisubmenu>แก้ไข</guisubmenu><guisubmenu>แมโคร</guisubmenu><guimenuitem>แมโคร...</guimenuitem></menuchoice> จะปรากฏกล่องโต้ตอบ เลือกแมโครที่ต้องการในรายชื่อ ผลของการแทนที่แมโครที่เลือกจะแสดงในหน้าต่าง พร้อมกับข้อมูลสรุปเกี่ยวกับแมโคร จากนั้นคลิก <guibutton>แทรก</guibutton> ข้อความแทนที่ของแมโครจะถูกแทรกลงที่ตำแหน่งของเคอร์เซอร์

en: Macro
th: แมโคร

en: The Macro dialog
th: กล่องโต้ตอบแมโคร

en: Another way to insert a macro is to select <menuchoice><guisubmenu>Edit</guisubmenu><guisubmenu>Macros</guisubmenu><guimenuitem>Insert Macro...</guimenuitem></menuchoice>, then to press the desired macro shortcut. <placeholder-1/>
th: อีกวิธีหนึ่งที่จะแทรกแมโครคือเลือก <menuchoice><guisubmenu>แก้ไข</guisubmenu><guisubmenu>แมโคร</guisubmenu><guimenuitem>แทรกแมโคร...</guimenuitem></menuchoice> แล้วกดปุ่มลัดของแมโครที่ต้องการ <placeholder-1/>

en: Defining Macros
th: การนิยามแมโคร

en: From the Insert Macro window, choose <guibutton>Add</guibutton> or select <menuchoice><guisubmenu>Edit</guisubmenu><guisubmenu>Macros</guisubmenu><guimenuitem>Add Macro... </guimenuitem></menuchoice>. The Add/Edit window appears. Enter the macro name, choose or define a category and enter a shortcut. Then edit text relative to your macro. The character ' | ' will indicate the cursor position after the macro insertion. Choose <guibutton>OK</guibutton>. The macro is added to the list.
th: คลิก <guibutton>เพิ่ม</guibutton> จากหน้าต่างแทรกแมโคร หรือเลือกเมนู <menuchoice><guisubmenu>แก้ไข</guisubmenu><guisubmenu>แมโคร</guisubmenu><guimenuitem>เพิ่มแมโคร...</guimenuitem></menuchoice> จะปรากฏหน้าต่าง เพิ่ม/แก้ไข จากนั้นก็ป้อนชื่อแมโคร เลือกหรือกำหนดประเภท แล้วป้อนปุ่มลัด จากนั้น แก้ไขข้อความสำหรับแมโครของคุณ โดยอักขระ ' | ' จะแสดงตำแหน่งเคอร์เซอร์หลังจากการแทรกแมโคร เสร็จแล้ว คลิก <guibutton>ตกลง</guibutton> แมโครจะถูกเพิ่มเข้าไปในรายชื่อ

en: You can also erase a macro by selecting it in the list and choosing <guibutton>Remove</guibutton>. This only works for user macros (My Macros), of course.
th: คุณสามารถลบแมโครได้ โดยเลือกแมโครในรายชื่อ แล้วคลิก <guibutton>เอาออก</guibutton> แน่นอนว่าการลบนี้ใช้ได้เฉพาะกับแมโครผู้ใช้ (แมโครของฉัน) เท่านั้น

en: Add/Edit Macro
th: เพิ่ม/แก้ไขแมโคร

en: Add Edit dialog
th: กล่องโต้ตอบ เพิ่ม/แก้ไข

en: Similarly, you can edit and modify a macro by selecting it in the list and choosing <guibutton>Edit</guibutton>. <placeholder-1/>
th: ในทำนองเดียวกัน คุณสามารถแก้ไขและปรับเปลี่ยนแมโครได้ โดยเลือกในรายชื่อ แล้วคลิก <guibutton>แก้ไข</guibutton> <placeholder-1/>

en: Macro Keywords
th: คำหลักสำหรับแมโคร

en: Macro keywords are available. They can be included in macro definitions. These macro keywords start and finish with the character ' @ '.
th: มีคำหลักจำนวนหนึ่งสำหรับแมโคร ซึ่งสามารถใช้ในนิยามแมโครได้ คำหลักสำหรับแมโครเหล่านี้ จะเริ่มต้นและลงท้ายด้วยอักขระ '@'

en: Keyword Macro
th: แมโครที่ใช้คำหลัก

en: The Keyword macro
th: แมโครที่ใช้คำหลัก

en: Available macro keywords are @DATE_TIME@, @DATE_YMD@, @DATE_Y@, @USER_NAME@, @FILE_NAME@, @FILE_NAME_UP@, @FILE_NAME_UP_PREFIX@, @EMAIL@, @TABSIZE@, @INDENTSIZE@, and @USETABS@. <placeholder-1/>
th: คำหลักสำหรับแมโครที่มีให้คือ : @DATE_TIME@, @DATE_YMD@, @DATE_Y@, @USER_NAME@, @FILE_NAME@, @FILE_NAME_UP@, @FILE_NAME_UP_PREFIX@, @EMAIL@, @TABSIZE@, @INDENTSIZE@, @USETABS@ <placeholder-1/>

en: Opening and Saving Files
th: การเปิดและบันทึกแฟ้ม

en: Open File dialog
th: กล่องโต้ตอบเปิดแฟ้ม

en: <emphasis>Opening a file:</emphasis> To open an existing file, choose <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Open</guimenuitem></menuchoice> from the menu bar, click on the <guibutton>Open</guibutton> button on the toolbar, or press <keycombo><keycap>Ctrl</keycap><keycap>O</keycap></keycombo>. This will display the <interface>Open File</interface> dialog. <placeholder-1/> Select or enter the name of file you want to open, then click <guibutton>Open</guibutton>. To open more than one file at once, select multiple files to open by holding down the <keycap>Ctrl</keycap> key and clicking each file in turn; then press <guibutton>Open</guibutton>. If you change your mind, click <guibutton>Cancel</guibutton> to dismiss the dialog without opening the file.
th: <emphasis>การเปิดแฟ้ม:</emphasis> การเปิดแฟ้มที่มีอยู่ก่อนแล้ว ทำได้โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>เปิด</guimenuitem></menuchoice> จากแถบเมนู หรือคลิกที่ปุ่ม <guibutton>เปิด</guibutton> บนแถบเครื่องมือ หรือกด <keycombo><keycap>Ctrl</keycap><keycap>O</keycap></keycombo> ก็ได้ จะปรากฏกล่องโต้ตอบ <interface>เปิดแฟ้ม</interface>  <placeholder-1/> จากนั้น เลือกหรือป้อนชื่อแฟ้มที่คุณต้องการเปิด แล้วคลิก <guibutton>เปิด</guibutton> การเปิดแฟ้มมากกว่าหนึ่งแฟ้มพร้อมกัน ก็ทำได้โดยเลือกแฟ้มต่าง ๆ ที่จะเปิดโดยกด <keycap>Ctrl</keycap> ค้างไว้ แล้วคลิกแฟ้มเพิ่มทีละแฟ้ม เสร็จแล้วกดปุ่ม <guibutton>เปิด</guibutton> ถ้าคุณเปลี่ยนใจ ก็คลิก <guibutton>ยกเลิก</guibutton> เพื่อปิดกล่องโต้ตอบโดยไม่มีการเปิดแฟ้ม

en: Open Multiple File dialog
th: กล่องโต้ตอบเปิดหลายแฟ้ม

en: The Open File dialog in multiple-select mode
th: กล่องโต้ตอบแฟ้มในโหมดเลือกหลายรายการ

en: You can enable the <emphasis>Show Hidden Files</emphasis> option through the pop-up menu that appears when you right-click in the Open File dialog. This option will make hidden files (files starting with ".") visible in the file list. Clear the option to hide hidden files. The Open File dialog also has a built-in file type filter. Select the appropriate file type filter in the dialog and the file list will be limited to the files of the selected type only.
th: คุณสามารถเปิดใช้งานตัวเลือก <emphasis>แสดงแฟ้มซ่อน</emphasis> ผ่านเมนูแบบผุดขึ้นที่ปรากฏเมื่อคุณคลิกขวาในกล่องโต้ตอบเปิดแฟ้ม ตัวเลือกนี้จะทำให้แฟ้มที่ซ่อนอยู่ (แฟ้มที่ขึ้นต้นด้วย ".") ปรากฏในรายชื่อแฟ้ม หากต้องการซ่อนแฟ้มซ่อนก็เลิกกาตัวเลือกนี้ นอกจากนี้ กล่องโต้ตอบเปิดแฟ้มยังมีตัวกรองชนิดของแฟ้มในตัว เมื่อคุณเลือกตัวกรองชนิดแฟ้มที่เหมาะสมในกล่องโต้ตอบ รายชื่อแฟ้มจะแสดงเฉพาะแฟ้มชนิดที่เลือกเท่านั้น

en: The Save As File
th: การบันทึกเป็นแฟ้ม

en: <emphasis>Saving a file:</emphasis> To save a file, choose <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Save</guimenuitem></menuchoice> from the menu bar, click on the <guibutton>Save</guibutton> button on the toolbar, or press <keycombo><keycap>Ctrl</keycap><keycap>S</keycap></keycombo>. This will save the file. If the file is new, a <interface>Save As</interface> dialog will appear. Enter a filename and click <guibutton>Save</guibutton> to save the new file with the name supplied. <placeholder-1/>
th: <emphasis>การบันทึกแฟ้ม:</emphasis> วิธีบันทึกแฟ้ม ทำได้โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>บันทึก</guimenuitem></menuchoice> จากแถบเมนู หรือคลิกปุ่ม <guibutton>บันทึก</guibutton> บนแถบเครื่องมือ หรือกด <keycombo><keycap>Ctrl</keycap><keycap>S</keycap></keycombo> ก็ได้ จะเป็นการบันทึกแฟ้ม ถ้าเป็นแฟ้มใหม่ จะปรากฏกล่องโต้ตอบ <interface>บันทึกแฟ้มเป็น</interface> ให้คุณป้อนชื่อแฟ้มแล้วคลิก <guibutton>บันทึก</guibutton> เพื่อบันทึกแฟ้มใหม่ด้วยชื่อที่กำหนด <placeholder-1/>

en: File autosave
th: การบันทึกแฟ้มอัตโนมัติ

en: If you have enabled autosave, Anjuta will not autosave any new files. You must first save them manually. The same applies to the <guimenuitem>Save All</guimenuitem> option: Anjuta will not save new files, if you haven't saved them first manually. <emphasis>You must save a file manually before autosave or <guimenuitem>Save All</guimenuitem> will work with it.</emphasis>
th: ถ้าคุณเปิดใช้งานการบันทึกอัตโนมัติ แอนจูตาจะยังไม่บันทึกแฟ้มใหม่ใด ๆ โดยอัตโนมัติ คุณต้องสั่งบันทึกเองก่อน กับตัวเลือก <guimenuitem>บันทึกทั้งหมด</guimenuitem> ก็เช่นกัน: แอนจูตาจะไม่บันทึกแฟ้มที่สร้างใหม่ ถ้าคุณยังไม่ได้สั่งบันทึกแฟ้มเหล่านั้นเองก่อน <emphasis>คุณจะต้องสั่งบันทึกแฟ้มเองก่อน การบันทึกอัตโนมัติหรือ <guimenuitem>บันทึกทั้งหมด</guimenuitem> จึงจะเริ่มทำงานกับแฟ้มเหล่านั้น</emphasis>

en: <emphasis>Saving a file with a different name:</emphasis> You can explicitly save a file with a new filename. To do this, choose <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Save As</guimenuitem></menuchoice> from the menu bar. A <interface>Save As</interface> dialog will appear prompting you to enter the new filename. Enter the name and click <guibutton>Save</guibutton>.
th: <emphasis>การบันทึกแฟ้มด้วยชื่อใหม่:</emphasis> คุณสามารถเจาะจงบันทึกแฟ้มโดยกำหนดชื่อใหม่ได้ โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>บันทึกเป็น</guimenuitem></menuchoice> จากแถบเมนู จะปรากฏกล่องโต้ตอบ <interface>บันทึกแฟ้มเป็น</interface> ขึ้นมาให้คุณป้อนชื่อแฟ้มใหม่ คุณก็ป้อนชื่อแฟ้มแล้วคลิก <guibutton>บันทึก</guibutton>

en: File save as overwrite
th: การบันทึกแฟ้มโดยเขียนทับ

en: When you use <guimenuitem>Save As</guimenuitem> with an existing file, the original is not deleted. It is left unchanged since the last save. If a file with the new filename already exists, a confirmation dialog will appear to ensure that you want to overwrite it. Clicking <guibutton>Yes</guibutton> will overwrite the file with the file you are saving.
th: เมื่อคุณใช้ <guimenuitem>บันทึกเป็น</guimenuitem> กับแฟ้มที่มีอยู่แล้ว แฟ้มต้นฉบับจะไม่ถูกลบ โดยจะไม่มีการเปลี่ยนแปลงจากที่บันทึกครั้งสุดท้าย สำหรับแฟ้มที่ตั้งชื่อใหม่นั้น ถ้ามีแฟ้มที่ชื่อซ้ำกันอยู่ก่อนแล้ว จะมีกล่องโต้ตอบยืนยันปรากฏขึ้นมา เพื่อถามให้แน่ใจว่าคุณต้องการเขียนทับแฟ้มดังกล่าว ถ้าคลิก <guibutton>ใช่</guibutton> ก็จะเขียนทับแฟ้มนั้นด้วยแฟ้มที่คุณกำลังบันทึก

en: <emphasis>Closing a file:</emphasis> To close a file, choose <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Close</guimenuitem></menuchoice> from the menu bar, or click on the <guibutton>Close</guibutton> button on the toolbar. (You can also close a file by clicking the X in its filename tab.) This will close the current file. If the file is not saved, or is a new file, then <application>Anjuta</application> will prompt you to save the file before closing it.
th: <emphasis>การปิดแฟ้ม:</emphasis> วิธีปิดแฟ้ม ทำได้โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>ปิด</guimenuitem></menuchoice> จากแถบเมนู หรือคลิกปุ่ม <guibutton>ปิด</guibutton> บนแถบเครื่องมือ (และคุณยังสามารถปิดแฟ้มโดยการคลิก X ในแท็บชื่อแฟ้มได้ด้วย) การปิดนี้เป็นการปิดแฟ้มปัจจุบัน ถ้าแฟ้มนั้นยังไม่ถูกบันทึก หรือเป็นแฟ้มใหม่ <application>แอนจูตา</application> จะถามคุณเพื่อบันทึกแฟ้มนั้นก่อนปิด

en: Editing Files
th: การแก้ไขแฟ้ม

en: <application>Anjuta</application> has a number of features which help you edit and work with source files. The following sections describe how to use some of the interesting features available.
th: <application>แอนจูตา</application> มีความสามารถหลายอย่างที่ช่วยคุณแก้ไขและทำงานกับแฟ้มซอร์ส หัวข้อต่อไปนี้ จะอธิบายวิธีใช้ความสามารถบางอย่างที่น่าสนใจ

en: Editor Margins
th: ขอบของเครื่องมือแก้ไข

en: The Tags toolbar
th: แถบเครื่องมือแท็ก

en: <emphasis>Editor Margins:</emphasis> Editor margins appear to the left of the editor and are used for some special purposes. There are three editor margins available: the <emphasis>line number margin</emphasis>, the <emphasis>marker margin</emphasis> and the <emphasis>code fold margin</emphasis>. By default (that is, when you run <application>Anjuta</application> for the first time) only the code fold margin will be visible. The rest can be made visible via <menuchoice><guimenu>View</guimenu><guisubmenu>Editor</guisubmenu></menuchoice>. <placeholder-1/>
th: <emphasis>ขอบของเครื่องมือแก้ไข:</emphasis> ขอบของเครื่องมือแก้ไขจะอยู่ทางด้านซ้ายของเครื่องมือแก้ไข และใช้เพื่อวัตถุประสงค์พิเศษบางอย่าง ขอบเครื่องมือแก้ไขมีสามขอบ คือ <emphasis>ขอบเลขบรรทัด</emphasis>, <emphasis>ขอบเครื่องหมาย</emphasis> และ <emphasis>ขอบพับโค้ด</emphasis> โดยค่าปริยายนั้น (กล่าวคือ เมื่อคุณเรียกทำงาน <application>แอนจูตา</application> ครั้งแรก) จะเห็นเพียงขอบพับโค้ดเท่านั้น ส่วนที่เหลือสามารถสั่งให้แสดงได้ทางเมนู <menuchoice><guimenu>มุมมอง</guimenu><guisubmenu>เครื่องมือแก้ไข</guisubmenu></menuchoice> <placeholder-1/>

en: The <emphasis>line number margin</emphasis> is largest of all the three margins (and is slightly darker then rest) and displays a document's line numbers. The <emphasis>line number margin</emphasis> can be shown or hidden by toggling <menuchoice><guimenu>View</guimenu><guisubmenu>Editor</guisubmenu><guimenuitem>Line Numbers Margin</guimenuitem></menuchoice>. Left-clicking on this margin will select an entire line (including the trailing newline, if present). You can set font properties for the line number margin in the preferences.
th: <emphasis>ขอบแสดงเลขบรรทัด</emphasis> จะมีขนาดใหญ่ที่สุดในบรรดาขอบทั้งสาม (และเข้มกว่าขอบอื่น ๆ เล็กน้อย) เป็นขอบสำหรับแสดงเลขบรรทัดของเอกสาร <emphasis>ขอบแสดงเลขบรรทัด</emphasis> สามารถสั่งให้แสดงหรือซ่อนได้ด้วยการสลับค่า <menuchoice><guimenu>มุมมอง</guimenu><guisubmenu>เครื่องมือแก้ไข</guisubmenu><guimenuitem>ขอบแสดงเลขบรรทัด</guimenuitem></menuchoice> การคลิกซ้ายที่ขอบนี้จะเลือกบรรทัดทั้งบรรทัด (รวมถึงอักขระขึ้นบรรทัดใหม่ด้วยถ้ามี) คุณสามารถกำหนดคุณสมบัติแบบอักษรสำหรับขอบแสดงเลขบรรทัดนี้ได้ในกล่องโต้ตอบปรับแต่ง

en: The <emphasis>marker margin</emphasis> can be shown or hidden via <menuchoice><guimenu>View</guimenu><guisubmenu>Editor</guisubmenu><guimenuitem>Markers Margin</guimenuitem></menuchoice>. This margin displays graphical icons to mark the given line. The margin may display bookmark markers (blue and rectangular), breakpoint markers (red and circular) and line indicator markers (which look like a yellow pointed arrow). A bookmark marker indicates a bookmarked line, and can be toggled via <menuchoice><guimenu>Goto</guimenu><guisubmenu>Bookmark</guisubmenu><guimenuitem> Toggle Bookmark</guimenuitem></menuchoice> with the cursor placed on that line. A breakpoint marker is used in the debugger to indicate a debugging breakpoint (see the Debugging section for more details). A line indicator marker is used to indicate the current program position in the debugger.
th: <emphasis>ขอบเครื่องหมาย</emphasis> สามารถสั่งให้แสดงหรือซ่อนได้ทางเมนู <menuchoice><guimenu>มุมมอง</guimenu><guisubmenu>เครื่องมือแก้ไข</guisubmenu><guimenuitem>ขอบเครื่องหมาย</guimenuitem></menuchoice> ขอบนี้จะแสดงไอคอนกราฟิกเพื่อทำเครื่องหมายให้กับบรรทัดที่กำหนด เครื่องหมายซึ่งจะแสดงในขอบนี้อาจเป็นเครื่องหมายที่คั่นหน้า (สี่เหลี่ยมสีฟ้า) เครื่องหมายจุดพัก (วงกลมสีแดง) และเครื่องหมายกำกับบรรทัด (หัวลูกศรสีเหลือง) เครื่องหมายที่คั่นหน้าใช้สำหรับระบุบรรทัดที่คั่นหน้าไว้ ซึ่งสามารถสลับได้จากเมนู <menuchoice><guimenu>ไปยัง</guimenu><guisubmenu>ที่คั่นหน้า</guisubmenu><guimenuitem>สลับที่คั่นหน้า</guimenuitem></menuchoice> ในขณะที่เคอร์เซอร์วางอยู่ที่บรรทัดนั้น ส่วนเครื่องหมายจุดพักใช้ในเครื่องมือดีบั๊ก เพื่อทำเครื่องหมายจุดพักของการดีบั๊ก (ดูรายละเอียดเพิ่มเติมได้ที่หัวข้อการดีบั๊ก) และเครื่องหมายกำกับบรรทัดใช้ระบุตำแหน่งปัจจุบันของโปรแกรมในเครื่องมือดีบั๊ก

en: The <emphasis>code fold margin</emphasis> is where the folding tree is visible. Clicking on folding tree nodes will fold or unfold code blocks. An underline will also be drawn below a folded line to make it more obvious that a block of code has been folded below the line. For more details on code folding, see the section <emphasis>Code Folding</emphasis> below.
th: <emphasis>ขอบพับโค้ด</emphasis> คือที่ที่จะแสดงแผนภาพต้นไม้ของการพับโค้ด การคลิกที่โหนดของแผนภาพต้นไม้ของการพับนี้ จะเป็นการพับหรือคลี่บล็อคของโค้ด โดยจะขีดเส้นใต้บรรทัดที่พับ เพื่อให้เห็นชัดเจนมากขึ้นว่าบล็อคของโค้ดถูกพับไว้ใต้บรรทัดนั้น ดูข้อมูลเพิ่มเติมเกี่ยวกับการพับโค้ดได้ที่หัวข้อ <emphasis>การพับโค้ด</emphasis> ที่ด้านล่าง

en: Invisible margin marker
th: เครื่องหมายเมื่อไม่ใช้ขอบ

en: Editor markers when the marker margin is invisible
th: เครื่องหมายที่เครื่องมือแก้ไขใช้เมื่อไม่ได้แสดงขอบเครื่องหมาย

en: If the marker margin is not visible, Anjuta displays markers by changing the background color of a line. For example, if a breakpoint marker is set in a line and the marker margin is not visible, that line will be displayed with a red background. Similarly, for a bookmark marker and a line indicator marker the background color of the line will be sky blue and yellow, respectively. If you do not like this (perhaps due to some contrasting themes), enable the marker margin via <menuchoice><guimenu>View</guimenu><guisubmenu>Editor</guisubmenu><guimenuitem>Marker Margin</guimenuitem></menuchoice>. <placeholder-1/>
th: ถ้าไม่ได้เปิดใช้ขอบเครื่องหมายอยู่ แอนจูตาจะแสดงเครื่องหมายด้วยการเปลี่ยนสีพื้นหลังของบรรทัด ตัวอย่างเช่น ถ้ามีเครื่องหมายจุดพักอยู่ในบรรทัดโดยที่ไม่ได้เปิดใช้ขอบเครื่องหมายอยู่ บรรทัดนั้นก็จะแสดงด้วยพื้นหลังสีแดง ในทำนองเดียวกัน สำหรับเครื่องหมายที่คั่นหน้าและเครื่องหมายกำกับบรรทัด สีพื้นหลังของบรรทัดจะสีฟ้าและสีเหลืองตามลำดับ ถ้าคุณไม่ชอบการแสดงแบบนี้ (อาจเนื่องมาจากชุดตกแต่งที่สีตัดกันเกินไป) คุณก็สามารถเปิดใช้ขอบเครื่องหมายได้จากเมนู <menuchoice><guimenu>มุมมอง</guimenu><guisubmenu>เครื่องมือแก้ไข</guisubmenu><guimenuitem>ขอบเครื่องหมาย</guimenuitem></menuchoice> <placeholder-1/>

en: Editor Guides
th: เส้นแนวในเครื่องมือแก้ไข

en: The editor can be set to display certain document information which is normally invisible, including <emphasis>indentation guides</emphasis>, <emphasis>white space</emphasis> and <emphasis>line end characters</emphasis>. They can be make visible or invisible by toggling the menu items in <menuchoice><guimenu>View</guimenu><guisubmenu>Editor</guisubmenu></menuchoice>. Indentation guides are small dotted lines drawn to connect matching braces in source code. When the cursor is over a matching brace, its dotted indentation guide is highlighted to emphasize the indentation level visually.
th: เครื่องมือแก้ไขสามารถกำหนดให้แสดงข้อมูลบางอย่างของเอกสารที่โดยปกติจะมองไม่เห็นได้ เช่น <emphasis>แนวการร่นย่อหน้า</emphasis>, <emphasis>ช่องว่าง<emphasis> และ <emphasis/>อักขระปิดบรรทัด</emphasis> ข้อมูลเหล่านี้สามารถสั่งให้แสดงหรือไม่แสดงได้ ด้วยการสลับค่ารายการในเมนู <menuchoice><guimenu>มุมมอง</guimenu><guisubmenu>เครื่องมือแก้ไข</guisubmenu></menuchoice> เส้นแนวการร่นย่อหน้าเป็นเส้นไข่ปลาเล็ก ๆ ที่วาดเชื่อมวงเล็บปีกกาที่เข้าคู่กันในซอร์สโค้ด และเมื่อเคอร์เซอร์วางอยู่ที่วงเล็บปีกกาที่เข้าคู่กัน เส้นแนวการร่นย่อหน้าของวงเล็บคู่นั้นก็จะถูกเน้นเพื่อให้เห็นระดับของการร่นอย่างชัดเจน

en: Editor with guides
th: เครื่องมือแก้ไขพร้อมเส้นแนว

en: Syntax highlighting
th: การเน้นไวยากรณ์

en: <application>Anjuta</application> can highlight the syntax of many different languages. This is usually done automatically by determining the type of a file from its extension. If <application>Anjuta</application> cannot determine the type of a file, there will be no syntax highlighting. You can explicitly force a particular highlight style by selecting the style from the menu <menuchoice><guimenu>View</guimenu><guisubmenu>Editor</guisubmenu><guisubmenu> Highlight Mode</guisubmenu></menuchoice>.
th: <application>แอนจูตา</application> สามารถเน้นไวยากรณ์ได้หลายภาษา การเน้นนี้มักเป็นไปโดยอัตโนมัติ โดยพิจารณาชนิดของแฟ้มจากนามสกุล ถ้า <application>แอนจูตา</application> ไม่สามารถระบุชนิดของแฟ้มได้ ก็จะไม่มีการเน้นไวยากรณ์ คุณสามารถบังคับเจาะจงรูปแบบการเน้นได้ โดยเลือกรูปแบบจากเมนู <menuchoice><guimenu>มุมมอง</guimenu><guisubmenu>เครื่องมือแก้ไข</guisubmenu><guisubmenu>โหมดเน้น</guisubmenu></menuchoice>

en: Anjuta uses a properties file named <filename>$prefix/share/anjuta/properties/anjuta.properties</filename>, which has the same format as a SciTE properties file but does not use all properties. The style of each element for all languages is defined in a file named <filename>$prefix/share/anjuta/properties/styles.properties</filename>. It uses some common properties defined by Anjuta in the file <filename>$home/.config/anjuta/scintilla/editor-style.properties</filename>.
th: แอนจูตาใช้แฟ้มคุณสมบัติชื่อ <filename>$prefix/share/anjuta/properties/anjuta.properties</filename> ซึ่งมีรูปแบบข้อมูลเหมือนกับแฟ้มคุณสมบัติของ SciTE แต่ไม่ได้ใช้คุณสมบัติทั้งหมด รูปแบบของการแสดงแต่ละองค์ประกอบของทุกภาษาจะกำหนดไว้ในแฟ้มชื่อ <filename>$prefix/share/anjuta/properties/styles.properties</filename> ซึ่งจะใช้คุณสมบัติบางอย่างตามที่กำหนดโดยแอนจูตาร่วมกันในแฟ้ม <filename>$home/.config/anjuta/scintilla/editor-style.properties</filename>

en: Code folding
th: การพับโค้ด

en: Anjuta can display <emphasis>code folds</emphasis> for source files in block-structured languages (such as C, C++, Pascal, and Java). All code blocks in a source file can be folded or unfolded by clicking on the fold points in the code fold margin of the <interface>Editor</interface> window (usually a +/- symbol or up/down arrow). These fold points automatically appear for source files which use code blocks.
th: แอนจูตาสามารถแสดง <emphasis>การพับโค้ด</emphasis> สำหรับแฟ้มซอร์สที่เขียนด้วยภาษาที่มีโครงสร้างเป็นแบบบล็อค (เช่น C, C++, Pascal, Java) ได้ ทุกบล็อคของโค้ดในซอร์สสามารถพับหรือคลี่ออกได้ โดยการคลิกที่จุดพับในขอบพับโค้ดของหน้าต่าง <interface>เครื่องมือแก้ไข</interface> (โดยปกติจะเป็นสัญลักษณ์ +/- หรือลูกศรขึ้น/ลง) จุดพับเหล่านี้จะปรากฏโดยอัตโนมัติสำหรับแฟ้มซอร์สที่มีบล็อคของโค้ด

en: Code folding is especially useful when editing large source files with thousands of lines. Once the folds are closed, a document appears to become smaller, facilitating easy browsing and editing of the file.
th: การพับโค้ดมีประโยชน์สำหรับการแก้ไขแฟ้มซอร์สขนาดใหญ่ที่มีหลายพันบรรทัดโดยเฉพาะ เพื่อพับบล็อคเก็บแล้ว เอกสารก็จะดูเล็กลง ช่วยให้ไล่ดูและแก้ไขแฟ้มได้ง่าย

en: Please note that code folding and editor guides are only available in the Scintilla-based editor.
th: โปรดทราบว่าการพับโค้ดและเส้นแนวในเครื่องมือแก้ไขมีเฉพาะในเครื่องมือแก้ไขที่ใช้ Scintilla เท่านั้น

en: Auto-formatting source code
th: การจัดรูปแบบซอร์สโค้ดโดยอัตโนมัติ

en: Anjuta can automatically indent (auto-format) C or C++ source or header files. This gives a clean look to the source code, increases legibility, reduces the likelihood of syntax errors, and above all saves time. To auto-indent the current source file, choose <menuchoice><guimenu>Edit</guimenu><guimenuitem>Auto Indent </guimenuitem></menuchoice> on the menu bar. You can change the style of formatting by customizing the choices in the preferences.
th: แอนจูตาสามารถร่นย่อหน้าอัตโนมัติ (จัดรูปแบบอัตโนมัติ) ให้กับซอร์สหรือแฟ้มส่วนหัวในภาษา C หรือ C++ ได้ การร่นย่อหน้าอัตโนมัตินี้ ทำให้ซอร์สโค้ดดูสะอาด อ่านง่าย ลดโอกาสของความผิดพลาดทางไวยากรณ์ และเหนือสิ่งอื่นใด ช่วยประหยัดเวลา การร่นย่อหน้าแฟ้มซอร์สปัจจุบันโดยอัตโนมัติ ทำได้โดยเลือก <menuchoice><guimenu>แก้ไข</guimenu><guimenuitem>ร่นย่อหน้าอัตโนมัติ</guimenuitem></menuchoice> ในแถบเมนู คุณสามารถเปลี่ยนแนวทางการจัดรูปแบบได้ โดยกำหนดตัวเลือกต่าง ๆ ในการปรับแต่งค่า

en: The Symbol Browser
th: เบราว์เซอร์สัญลักษณ์

en: You can browse C and C++ source and header files using <emphasis>tags</emphasis> in the files. A tag (or <emphasis>symbol</emphasis>) refers to a named entity such as a function definition, structure, or macro. Anjuta scans open C and C++ source and header files for available tags.
th: คุณสามารถไล่ดูซอร์สและแฟ้มส่วนหัวภาษา C และ C++ ได้โดยใช้ <emphasis>แท็ก</emphasis> ที่อยู่ในแฟ้ม แท็ก (หรือ <emphasis>สัญลักษณ์</emphasis>) หนึ่ง ๆ จะอ้างถึงสิ่งที่มีชื่ออยู่ในซอร์ส เช่น ตัวฟังก์ชัน ข้อมูลโครงสร้าง หรือแมโคร แอนจูตาจะสำรวจแฟ้มซอร์สและส่วนหัว C และ C++ ที่เปิดอยู่เพื่อหาแท็กที่มี

en: Symbol browser
th: เบราว์เซอร์สัญลักษณ์

en: <application>Anjuta</application> will automatically scan for tags in all of the source and header files of any open project. You can jump to any function definition, structure definition, class definition or other tag without manually opening the containing file. You don't even have to know which file the tag is found in. The symbol browser lists all available symbols in the project. <placeholder-1/>
th: <application>แอนจูตา</application> จะสำรวจหาแท็กในซอร์สและแฟ้มส่วนหัวทุกแฟ้มของโครงการที่เปิด คุณสามารถกระโดดไปยังตัวฟังก์ชัน การกำหนดข้อมูลโครงสร้าง การกำหนดคลาส หรือแท็กอื่น ๆ ได้ โดยไม่ต้องเปิดแฟ้มด้วยตัวเอง คุณไม่จำเป็นต้องรู้แม้แต่ว่าแฟ้มใดที่มีแท็กนั้นอยู่ เบราว์เซอร์สัญลักษณ์จะแสดงสัญลักษณ์ทั้งหมดที่มีอยู่ในโครงการให้ <placeholder-1/>

en: Tag synchronization
th: การปรับแท็กให้ตรงกัน

en: You don't have to worry about the synchronization and update of the tag database. <application>Anjuta</application> will take care of everything. You just have to decide which tag you want to go to!
th: คุณไม่ต้องกังวลเกี่ยวกับการปรับข้อมูลของฐานข้อมูลแท็ก <application>แอนจูตา</application> จะดูแลทุกอย่างให้ สิ่งที่คุณต้องทำมีเพียงตัดสินใจว่าแท็กไหนที่คุณต้องการกระโดดไป!

en: Searching for and Replacing text in files
th: การค้นหาและแทนที่ข้อความในแฟ้ม

en: Searching
th: การค้นหา

en: To search for a <emphasis>string</emphasis> or <emphasis>regular expression</emphasis> in the current file, choose <menuchoice><guimenu>Edit</guimenu><guisubmenu>Search</guisubmenu><guimenuitem>Find</guimenuitem></menuchoice> or press <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F</keycap></keycombo>. This will open the <interface>Find</interface> dialog.
th: การค้นหา <emphasis>ข้อความ</emphasis> หรือ <emphasis>นิพจน์เรกิวลาร์</emphasis> ในแฟ้มปัจจุบัน ทำได้โดยเลือก <menuchoice><guimenu>แก้ไข</guimenu><guisubmenu>ค้นหา</guisubmenu><guimenuitem>หา</guimenuitem></menuchoice> หรือกด <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F</keycap></keycombo> จะเป็นการเปิดกล่องโต้ตอบ <interface>หา</interface>

en: Use the text box to specify the string to search for, and select whether it is a normal string or a regular expression. You can also specify the direction of search, whether the search is case-sensitive or not, and the scope of the search. Click <guibutton>Search</guibutton> to start searching.
th: ใช้กล่องข้อความระบุข้อความที่จะค้นหา และเลือกเพื่อระบุว่าเป็นข้อความปกติหรือนิพจน์เรกิวลาร์ คุณสามารถระบุทิศทางของการค้นหา ระบุว่าจะค้นหาแบบตัวพิมพ์ใหญ่-เล็กตรงกันหรือไม่ รวมทั้งขอบเขตของการค้นหาได้ คลิก <guibutton>ค้นหา</guibutton> เพื่อเริ่มต้นการค้นหา

en: If the search is successful, Anjuta will jump to the matched text or perform another action (according to the <guilabel>Search Action</guilabel> you choose in the <guilabel>Search Target</guilabel> tab). If the search is not successful, Anjuta will display a message indicating that the search text was not found.
th: ถ้าการค้นหานั้นประสบความสำเร็จ แอนจูตาจะกระโดดไปยังข้อความที่พบ หรือกระทำอย่างอื่น (ตาม <guilabel>การกระทำขณะค้นหา</guilabel> ที่คุณเลือกในแท็บ <guilabel>เป้าหมายการค้นหา</guilabel>) หากการค้นหาไม่ประสบความสำเร็จ แอนจูตาจะแสดงข้อความบอกว่าไม่พบข้อความที่ค้นหา

en: If you want to search again, click the <guibutton>Search</guibutton> button again or press <keycombo><keycap>Ctrl</keycap><keycap>G</keycap></keycombo>. This will find the next match (use <keycombo><keycap>Shift</keycap><keycap>Ctrl</keycap><keycap>G</keycap></keycombo> for the previous match). You can even change the search text when you do this; enter the new string in the <guilabel>Search Expression</guilabel> text box in the search dialog.
th: ถ้าคุณต้องการค้นหาอีกครั้ง ก็คลิกที่ปุ่ม <guibutton>ค้นหา</guibutton> ซ้ำอีก หรือกด <keycombo><keycap>Ctrl</keycap><keycap>G</keycap></keycombo> จะเป็นการหาจุดถัดไปที่ตรงกัน (ใช้ <keycombo><keycap>Shift</keycap><keycap>Ctrl</keycap><keycap>G</keycap></keycombo> ถ้าจะหาจุดก่อนหน้าที่ตรงกัน) คุณยังสามารถเปลี่ยนคำค้นได้ด้วยในระหว่างนี้ โดยป้อนข้อความใหม่ในช่อง <guilabel>นิพจน์ค้นหา</guilabel> ในกล่องโต้ตอบค้นหา

en: Search Text dialog
th: กล่องโต้ตอบค้นหาข้อความ

en: To stop a long search, press the <guibutton>Stop</guibutton> button.
th: หากต้องการหยุดการค้นหาที่ยาวนาน ก็กดปุ่ม <guibutton>หยุด</guibutton>

en: Specifying Search Range
th: การระบุช่วงค้นหา

en: In the <interface>Search Target</interface> tab, define the search location and the action to be performed if the search succeeds.
th: ในแท็บ <interface>เป้าหมายการค้นหา</interface> กำหนดตำแหน่งที่จะค้นหา และการกระทำที่จะทำถ้าหาพบ

en: You can define the maximum number of actions to be performed.
th: คุณสามารถกำหนดจำนวนการกระทำสูงสุดที่จะทำได้

en: Search Target dialog
th: กล่องโต้ตอบเป้าหมายการค้นหา

en: You can select which text will be searched.
th: ผู้ใช้สามารถเลือกแหล่งข้อความที่จะเข้าไปค้นหาได้

en: Search Target In choice
th: เป้าหมายการค้นหาขณะแสดงตัวเลือก

en: Searching in Files
th: การค้นหาในแฟ้มต่าง ๆ

en: To find text in your project, set <guilabel>Search In</guilabel> to All Project Files.
th: การค้นหาข้อความในโครงการของคุณทั้งโครงการ ทำได้โดยเลือกข้อมูล <guilabel>ค้นหาใน:</guilabel> เป็น "แฟ้มโครงการทั้งหมด"

en: In the <guilabel>Search Expression</guilabel> tab, enter the text you want to search for and specify search options, such as the <guilabel>Match case</guilabel> or <guilabel>Match complete words</guilabel> options. Click <guibutton>Search</guibutton> to start searching.
th: ในแท็บ <guilabel>นิพจน์ค้นหา</guilabel> ป้อนข้อความที่คุณต้องการค้นหา และระบุตัวเลือกการค้นหา เช่น <guilabel>ตัวพิมพ์ใหญ่-เล็กตรงกัน</guilabel> หรือ <guilabel>จับคู่ทั้งคำ</guilabel> แล้วคลิก <guibutton>ค้นหา</guibutton> เพื่อเริ่มต้นการค้นหา

en: To find text in a set of files, set <guilabel>Search In</guilabel> to Specify File Patterns. Define the search variables. Click <guibutton>Search</guibutton> to start searching.
th: การค้นหาข้อความในกลุ่มแฟ้ม ทำได้โดยเลือกข้อมูล <guilabel>ค้นหาใน:</guilabel> เป็น "ระบุแพตเทิร์นของแฟ้ม" จากนั้น กำหนดตัวแปรการค้นหา แล้วคลิก <guibutton>ค้นหา</guibutton> เพื่อเริ่มต้นการค้นหา

en: Search File Pattern
th: แพตเทิร์นระบุแฟ้มที่จะค้นหา

en: Specifying a Search Action
th: การระบุการกระทำขณะค้นหา

en: You can select which action will be performed when a search succeeds.
th: คุณสามารถเลือกการกระทำที่จะทำเมื่อค้นหาสำเร็จได้

en: Depending on the previous selections (<guilabel>Search In</guilabel>, <guilabel>Search Direction</guilabel> , and so on), some actions may be unavailable.
th: การกระทำบางอย่างอาจจะไม่สามารถใช้งานได้ ขึ้นอยู่กับการเลือกก่อนหน้านี้ (<guilabel>ค้นหาใน</guilabel>, <guilabel>ทิศทางค้นหา<guilabel> เป็นต้น)

en: Search Target Action choice
th: ตัวเลือกการกระทำในแท็บเป้าหมายการค้นหา

en: Replacing
th: การแทนที่

en: Searching and replacing is similar to just finding text, except that you also specify the replacement text in the <guilabel>Replace With</guilabel> text box, and also specify whether or not you want to be prompted before each replacement takes place (Replace First Match or Replace All Matches).
th: การค้นหาและแทนที่ ก็คล้ายกับการหาข้อความธรรมดา ยกเว้นว่าคุณต้องระบุข้อความแทนที่ในกล่องข้อความ <guilabel>แทนที่ด้วย</guilabel> รวมทั้งระบุว่าคุณต้องการให้ถามก่อนที่จะแทนที่แต่ละจุดหรือไม่ ("แทนที่ข้อความถัดไปที่ตรงกัน" หรือ "แทนที่ข้อความที่ตรงทั้งหมด")

en: Choose <guibutton>Replace</guibutton> to replace the matched text or <guibutton>Forward</guibutton> to jump to the next matched text.
th: เลือก <guibutton>แทนที่</guibutton> เพื่อแทนที่ข้อความที่ตรงกัน หรือ <guibutton>ค้นหา</guibutton> เพื่อกระโดดไปยังข้อความถัดไปที่ตรงกัน

en: Search Setting
th: การตั้งค่าการค้นหา

en: You may also save search options.
th: คุณสามารถบันทึกตัวเลือกการค้นหาได้ด้วย

en: The item highlighted in red is the active item. The default item specifies search settings which are loaded when Anjuta launches.
th: รายการที่เน้นสีแดงเป็นรายการที่ใช้งานอยู่ รายการปริยายจะระบุค่าตั้งของการค้นหาที่จะโหลดเมื่อเริ่มใช้งานแอนจูตา

en: Search Setting dialog
th: กล่องโต้ตอบตั้งค่าการค้นหา

en: Printing a file
th: การพิมพ์แฟ้ม

en: Print preview of a C file
th: ตัวอย่างก่อนพิมพ์ของแฟ้มภาษาซี

en: Print preview
th: ตัวอย่างก่อนพิมพ์

en: You can perform a print preview by selecting <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Print Preview</guimenuitem></menuchoice>. This will render the current file and present a preview of the print. Source code which is highlighted in the editor is also highlighted similarly in the preview (and subsequent print). The <guilabel>Printing</guilabel> tab of your editor plugin preferences contains additional options which let you print with line numbers, wrapped lines and/or headers. <placeholder-1/>
th: คุณสามารถดูตัวอย่างก่อนพิมพ์ได้โดยเลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>ตัวอย่างก่อนพิมพ์</guimenuitem></menuchoice> จะเป็นการวาดแฟ้มปัจจุบันและนำเสนอเป็นตัวอย่างของการพิมพ์ ซอร์สโค้ดที่เน้นในเครื่องมือแก้ไขก็จะเน้นเหมือนกันในตัวอย่างก่อนพิมพ์ (และในการพิมพ์ต่อไป) แท็บ <guilabel>การพิมพ์</guilabel> ในการปรับแต่งปลั๊กอินเครื่องมือแก้ไขของคุณ จะมีตัวเลือกเพิ่มเติมให้คุณสามารถพิมพ์โดยมีหมายเลขบรรทัด ตัดบรรทัด และ/หรือ มีส่วนหัวของหน้ากระดาษได้ <placeholder-1 />

en: Print Preferences
th: การปรับแต่งการพิมพ์

en: Print preferences
th: การปรับแต่งการพิมพ์

en: When you are ready to print and satisfied with the preview, select <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Print</guimenuitem></menuchoice> or <guibutton>Print</guibutton> from the print preview window. This will bring up the actual print dialog as shown below. Select the appropriate print parameters and press <guibutton>Print</guibutton> to print the file.
th: เมื่อคุณพร้อมที่จะพิมพ์และพอใจกับตัวอย่างแล้ว ก็ให้เลือก <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>พิมพ์</guimenuitem></menuchoice> หรือกดปุ่ม <guibutton>พิมพ์</guibutton> จากหน้าต่างตัวอย่างก่อนพิมพ์ จะเป็นการเปิดกล่องโต้ตอบสั่งพิมพ์จริงดังที่แสดงด้านล่าง เลือกพารามิเตอร์การพิมพ์ที่เหมาะสม แล้วกด <guibutton>พิมพ์</guibutton> เพื่อพิมพ์แฟ้มนั้น

en: You can also set landscaped or portrait page layout and the paper size, page orientation and paper type. Remember to set them up properly according to your printer, otherwise printing may not look correct.
th: คุณสามารถกำหนดแนววางกระดาษเป็นแนวนอนหรือแนวตั้ง กำหนดขนาดกระดาษ แนววางของหน้า และชนิดกระดาษได้ด้วย อย่าลืมกำหนดค่าเหล่านี้ให้ถูกต้องตามเครื่องพิมพ์ของคุณ มิฉะนั้นงานพิมพ์อาจออกมาไม่ถูกต้อง

en: Print Dialog
th: กล่องโต้ตอบสั่งพิมพ์

en: Project Management
th: การจัดการโครงการ

en: Anjuta has a powerful Project Manager plugin which can open most <ulink type="info" url="info:automake">automake/autoconf</ulink>-based projects. It might fail on some oddly-configured projects, but as long as the project uses automake/autoconf in a typical way, it should work.
th: แอนจูตามีปลั๊กอินเครื่องมือจัดการโครงการที่ทรงพลัง ซึ่งสามารถเปิดโครงการที่ใช้ <ulink type="info" url="info:automake">automake/autoconf</ulink> ได้เกือบทั้งหมด อาจมีบ้างบางโครงการที่เปิดไม่สำเร็จเพราะมีการตั้งค่าบางอย่างที่แปลกประหลาด แต่ตราบใดที่โครงการที่เปิดใช้ automake/autoconf แบบปกติ ก็ควรจะเปิดได้

en: The neat thing is that Anjuta does not store any project information beyond what is already available in the project structure. That is, there is no separate project data maintained by Anjuta and all project processing is done directly within the project structure. This allows a project to be maintained or developed outside Anjuta without any need to convert to or from an Anjuta-specific format. Since technically Anjuta projects are just automake projects, mixed development (with both Anjuta and non-Anjuta users) or switching back and forth between Anjuta and other tools is quite possible without any hindrance.
th: สิ่งที่เนี้ยบก็คือ แอนจูตาไม่เก็บข้อมูลใดของโครงการนอกเหนือไปจากที่มีอยู่แล้วในโครงสร้างโครงการ กล่าวคือ ไม่มีข้อมูลโครงการที่แยกดูแลต่างหากโดยแอนจูตา และการประมวลผลโครงการทั้งหมดจะดำเนินการโดยตรงภายในโครงสร้างโครงการ ช่วยให้โครงการสามารถนำไปดูแลหรือพัฒนานอกแอนจูตาได้ โดยไม่จำเป็นต้องแปลงรูปแบบข้อมูลไปมากับรูปแบบเฉพาะของแอนจูตาเลย และเนื่องจากในทางเทคนิค โครงการของแอนจูตาก็คือโครงการ automake การพัฒนาแบบผสม (ระหว่างผู้ใช้แอนจูตา กับผู้ที่ไม่ได้ใช้แอนจูตา) หรือการสลับไปมาระหว่างแอนจูตากับเครื่องมืออื่น ๆ จึงค่อนข้างทำได้โดยปราศจากอุปสรรคใด ๆ

en: Creating a New Project
th: การสร้างโครงการใหม่

en: Creating a project from a template
th: การสร้างโครงการใหม่จากแม่แบบ

en: The project wizard plugin uses a powerful template processing engine called <application>autogen</application>. All new projects are created from templates that are written in <application>autogen</application> syntax. The project wizard lets you create new projects from a selection of project templates. The selection includes simple generic, flat (no subdirectory), GTK+, GNOME, Java, Python projects and more. New templates can be easily downloaded and installed since each template is just a collection of text files.
th: ปลั๊กอินเครื่องมือวิเศษสร้างโครงการ ใช้กลไกประมวลผลแม่แบบที่ชื่อ <application>autogen</application> โครงการใหม่ทั้งหมดจะถูกสร้างจากแม่แบบซึ่งเขียนด้วยไวยากรณ์ของ <application>autogen</application> เครื่องมือวิเศษสร้างโครงการจะช่วยให้คุณสร้างโครงการใหม่ได้จากชุดแม่แบบของโครงการที่คัดสรรไว้ ซึ่งมีทั้งโครงการทั่วไปอย่างง่าย, โครงการแบบแบนราบ (ไม่มีไดเรกทอรีย่อย), โครงการ GTK+, GNOME, Java, Python และอื่น ๆ คุณสามารถดาวน์โหลดแม่แบบใหม่มาติดตั้งได้อย่างง่าย ๆ เนื่องจากแม่แบบเหล่านั้นเป็นเพียงชุดของแฟ้มข้อความธรรมดา

en: To create a project, choose the menu item <menuchoice><guisubmenu>File</guisubmenu><guisubmenu>New</guisubmenu><guimenuitem>Project …</guimenuitem></menuchoice> to start the application wizard. Read the first page carefully. Click on <guibutton>Next</guibutton> to proceed.
th: การสร้างโครงการ ทำได้โดยเลือกรายการเมนู <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guisubmenu>ใหม่</guisubmenu><guimenuitem>โครงการ …</guimenuitem></menuchoice> เพื่อเปิดเครื่องมือวิเศษสร้างโปรแกรม กรุณาอ่านหน้าแรกด้วยความระมัดระวัง แล้วคลิก <guibutton>ถัดไป</guibutton> เพื่อทำต่อไป

en: Select the type of application you want to create in the second page. Click on <guibutton>Next</guibutton> to proceed.
th: เลือกชนิดของโปรแกรมที่คุณต้องการสร้างในหน้าที่สอง แล้วคลิก <guibutton>ถัดไป</guibutton> เพื่อทำต่อไป

en: On the following pages, enter all necessary details for your project. You can change these settings later, but it is advisable to set them right initially in order to maintain the project's integrity. White spaces or any non-alphanumeric characters, except underscore (_) and dash (-), are not allowed in many of the entry boxes that follow (except perhaps the <guilabel>Author</guilabel> text box).
th: ในหน้าถัด ๆ ไป ให้คุณป้อนรายละเอียดที่จำเป็นสำหรับโครงการของคุณ คุณสามารถเปลี่ยนค่าต่าง ๆ เหล่านี้ได้ในภายหลัง แต่ขอแนะนำให้กำหนดค่าให้ถูกต้องตั้งแต่แรก เพื่อข้อมูลที่ครบสมบูรณ์ของโครงการ ช่องว่าง หรืออักขระที่ไม่ใช่ตัวหนังสือหรือตัวเลข ยกเว้นขีดเส้นใต้(_) และเครื่องหมายขีด (-) ไม่สามารถใช้ได้ในช่องป้อนข้อความเหล่านี้ (ยกเว้นช่อง <guilabel>ผู้เขียน</guilabel>)

en: You can also specify whether your project will have <emphasis>internationalization support</emphasis> using <application>gettext</application> (read the <ulink type="info" url="info:gettext">gettext info page</ulink> for more details). This gives your project multilingual support for different languages such as English, French and Dutch. The rest of the options are for setting whether the GNU copyright statement should appear in the comments at the top of each file, and for enabling GNOME desktop menu information if necessary. Shared library support allows you to add shared library modules later on. If you plan to have libraries in your project, it would be good to enable this. Depending on the project type that is being created, Anjuta may request additional information.
th: คุณยังสามารถระบุว่าโครงการของคุณจะมี <emphasis>การรองรับนานาภาษา</emphasis> โดยใช้ <application>gettext</application> ด้วยหรือไม่ (อ่านรายละเอียดเพิ่มเติมได้จาก <ulink type="info" url="info:gettext">หน้า info ของ gettext</ulink>) การรองรับนานาภาษาจะช่วยให้โครงการของคุณใช้ข้อความได้หลายภาษาตามท้องถิ่น เช่น อังกฤษ ฝรั่งเศส และดัตช์ ตัวเลือกที่เหลือจะเป็นการตั้งค่าว่าควรใส่ข้อความลิขสิทธิ์ของ GNU ไว้ในหมายเหตุที่ด้านบนของแต่ละแฟ้มหรือไม่ รวมทั้งการเปิดใช้เมนูเดสก์ท็อป GNOME หากจำเป็น การรองรับไลบรารีใช้ร่วมจะทำให้คุณเพิ่มมอดูลที่เป็นไลบรารีใช้ร่วมได้ในภายหลัง ถ้าคุณวางแผนที่จะมีไลบรารีในโครงการ ก็ควรจะเปิดใช้งาน นอกจากนี้ แอนจูตายังอาจขอข้อมูลอื่นเพิ่มเติมอีก ขึ้นอยู่กับชนิดของโครงการที่กำลังสร้าง

en: The final step is to verify the information you have just supplied. Click on <guibutton>Finish</guibutton> to start generating the project.
th: ขั้นตอนสุดท้ายเป็นการตรวจสอบยืนยันข้อมูลที่คุณป้อนมาทั้งหมด คลิก <guibutton>เสร็จสิ้น</guibutton> เพื่อเริ่มสร้างโครงการ

en: Once the project has been generated, you can try it out by building it and executing it.
th: เมื่อสร้างโครงการเสร็จแล้ว คุณสามารถทดลองได้ โดยลองประกอบสร้างโครงการและเรียกทำงาน

en: Importing Projects
th: การนำเข้าโครงการ

en: The import project feature is used to import an already existing project and convert it into an <application>Anjuta</application> project. Activate the import project wizard via <menuchoice><guimenu>File</guimenu><guimenu>New</guimenu><guimenuitem>Project from existing sources</guimenuitem></menuchoice> and follow the instructions dictated by the wizard. Once a project has been imported, it can be opened in <application>Anjuta</application> subsequently just like any other <application> Anjuta</application> project.
th: การนำเข้าโครงการ ใช้สำหรับนำเข้าโครงการที่มีอยู่แล้วและแปลงให้เป็นโครงการของ <application>แอนจูตา</application> คุณสามารถเรียกเครื่องมือวิเศษนำเข้าโครงการได้ทางเมนู <menuchoice><guimenu>แฟ้ม</guimenu><guimenu>ใหม่</guimenu><guimenuitem>โครงการจากซอร์สที่มีอยู่แล้ว</guimenuitem></menuchoice> และทำตามคำแนะนำที่เครื่องมือวิเศษบอก เมื่อนำเข้าโครงการแล้ว ก็จะสามารถเปิดโครงการใน <application>แอนจูตา</application> ได้เหมือนโครงการอื่น ๆ ทั่วไปของ <application>แอนจูตา</application>

en: The import project feature only works if your existing project uses <ulink type="info" url="info:automake">autoconf/automake</ulink> or, to a very limited extent, a plain Makefile.
th: การนำเข้าโครงการจะใช้ได้ต่อเมื่อโครงการที่มีอยู่ของคุณใช้ <ulink type="info" url="info:automake">autoconf/automake</ulink> หรือใช้ Makefile ธรรมดาแบบจำกัดมากเท่านั้น

en: Loading and Saving Projects
th: การโหลดและบันทึกโครงการ

en: Loading Projects
th: การโหลดโครงการ

en: To open a project, choose the menu item <menuchoice><guisubmenu>File</guisubmenu><guimenuitem>Open …</guimenuitem></menuchoice>. Select the project file (<filename>*.anjuta</filename>) in the dialog and click <guibutton>OK</guibutton>.
th: การเปิดโครงการ ทำได้โดยเลือกรายการเมนู <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guimenuitem>เปิด …</guimenuitem></menuchoice> เลือกแฟ้มโครงการ (<filename>*.anjuta</filename>) ในกล่องโต้ตอบ แล้วคลิก <guibutton>ตกลง</guibutton>

en: If the project has recently been opened, then you will find it listed in the menu <menuchoice><guisubmenu>File</guisubmenu><guisubmenu>Recent</guisubmenu></menuchoice>. Choose the project filename from the list, and the project will be opened.
th: ถ้าโครงการเคยถูกเปิดไปแล้วเมื่อเร็ว ๆ นี้ คุณก็จะพบชื่อโครงการอยู่ในเมนู <menuchoice><guisubmenu>แฟ้ม</guisubmenu><guisubmenu>ล่าสุด</guisubmenu></menuchoice> เลือกชื่อแฟ้มโครงการจากรายชื่อ ก็จะเป็นการเปิดโครงการนั้น

en: As soon as a project is opened, <application>Anjuta</application> will enter <emphasis>Project mode</emphasis>. There are three panes in the project window. The first is the project pane and lists project files organized by file type. The second is the symbol browser, which has already been discussed in the section <emphasis>The Symbol Browser</emphasis>. The third pane is the file view of the project and is more or less similar to a mini file-manager. In the file view, all the files present in the project tree are visible. Right-clicking on these files will pop up a context menu with file operations.
th: ทันทีที่โครงการถูกเปิดขึ้น <application>แอนจูตา</application> จะเข้าสู่ <emphasis>โหมดโครงการ</emphasis> โดยจะมีช่อง 3 ช่องในหน้าต่างโครงการ ช่องแรกคือช่องโครงการ แสดงรายชื่อแฟ้มต่าง ๆ ในโครงการแยกตามชนิด ช่องที่สองคือเบราว์เซอร์สัญลักษณ์ ซึ่งได้อธิบายไปแล้วในหมวด <emphasis>เบราว์เซอร์สัญลักษณ์</emphasis> ช่องที่สามคือช่องแสดงแฟ้มของโครงการในรูปที่คล้ายกับเครื่องมือจัดการแฟ้มขนาดเล็ก ในช่องแสดงแฟ้มนี้ จะแสดงแฟ้มทั้งหมดที่อยู่ในไดเรกทอรีโครงการ เมื่อคลิกขวาที่แฟ้มเหล่านี้ จะผุดเมนูบริบทให้เลือกการกระทำเกี่ยวกับแฟ้ม

en: If the project is also a CVS tree, then corresponding file revision numbers are also listed to the right of file names in the file view pane.
th: ถ้าโครงการเป็น CVS tree ด้วย ก็จะแสดงหมายเลขฉบับแก้ไขของแฟ้มไว้ที่ด้านขวาของชื่อแฟ้มในช่องแสดงแฟ้มด้วย

en: Saving Projects
th: การบันทึกโครงการ

en: The project is automatically saved when you close because all changes are made directly in the project structure.
th: โครงการจะถูกบันทึกโดยอัตโนมัติเมื่อคุณปิดโครงการ เพราะการเปลี่ยนแปลงทั้งหมด จะกระทำโดยตรงกับไดเรกทอรีของโครงการอยู่แล้ว

en: Project structure
th: โครงสร้างโครงการ

en: Project window
th: หน้าต่างโครงการ

en: The Project window
th: หน้าต่างโครงการ

en: Here is the <interface>Project window</interface> with its context menu (accessible by clicking on the right mouse button). <placeholder-1/>
th: นี่คือ <interface>หน้าต่างโครงการ</interface> พร้อมเมนูบริบท (สามารถเปิดได้โดยคลิกที่เมาส์ปุ่มขวา) <placeholder-1/>

en: The <interface>Project window</interface> displays the project's <ulink type="info" url="info:automake"><application>automake</application></ulink> hierarchy organized into <emphasis>groups</emphasis> of <emphasis>targets</emphasis>. Groups correspond to directories in your project and targets correspond to normal <application>automake</application> targets (not to be confused with make targets). The <interface>Project window</interface> actually has two parts: the lower part shows the complete project hierarchy and the upper part lists important targets directly. Important targets include executable and library targets; the view makes these easily accessible. This is particularly useful in large projects where the hierarchy can be deep and hard to navigate from the tree alone. Targets are, in turn, composed of source files.
th: <interface>หน้าต่างโครงการ</interface> แสดงโครงสร้างลำดับชั้นของ <ulink type="info" url="info:automake"><application>automake</application></ulink> ในโครงการ โดยแบ่งเป็น <emphasis>กลุ่ม</emphasis> ของ <emphasis>เป้าหมาย</emphasis> กลุ่มในที่นี้ก็คือไดเรกทอรีในโครงการ และเป้าหมายก็คือเป้าหมายของ <application>automake</application> ตามปกติ (อย่าสับสนกับเป้าหมายของ make) อันที่จริง <interface>หน้าต่างโครงการ</interface> จะมีสองส่วน ส่วนล่างแสดงลำดับชั้นทั้งหมดของโครงการ และส่วนบนแสดงรายชื่อเป้าหมายที่สำคัญโดยตรง เป้าหมายที่สำคัญได้แก่เป้าหมายที่เป็นแฟ้มโปรแกรมและไลบรารีเป็นต้น การแสดงเช่นนี้ทำให้เข้าถึงเป้าหมายดังกล่าวได้ง่าย ซึ่งมีประโยชน์อย่างยิ่งในโครงการขนาดใหญ่ ที่อาจมีลำดับชั้นที่ลึกและยากที่จะท่องหาจากแผนภาพต้นไม้เพียงอย่างเดียว เป้าหมายต่าง ๆ จะประกอบด้วยแฟ้มซอร์สอีกทีหนึ่ง

en: <emphasis>Groups</emphasis> are used to logically organize targets. A project can contain any number of groups. Each group can have subgroups as well as targets. In automake projects, groups are just subdirectories in the project. The top-level group is always labeled "/".
th: <emphasis>กลุ่ม</emphasis> จะใช้ในการจำแนกเป้าหมายตามตรรกะ โครงการหนึ่ง ๆ สามารถมีกลุ่มจำนวนเท่าใดก็ได้ แต่ละกลุ่มสามารถมีกลุ่มย่อยและเป้าหมายต่าง ๆ ได้ ในโครงการ automake กลุ่มก็คือไดเรกทอรีย่อยในโครงการนั่นเอง กลุ่มระดับบนสุดจะมีชื่อเป็น "/" เสมอ

en: <emphasis>Targets</emphasis> are the build targets in the project, such as programs (executable binaries), scripts, libraries and miscellaneous data. Not all target types are built from sources; some exist just to organize sources and therefore may not exist physically (e.g. a Miscellaneous Data target). Targets exist under groups. See <link linkend="adding-target">"Adding targets"</link> for a full list of available target types.
th: <emphasis>เป้าหมาย</emphasis> คือเป้าหมายของการประกอบสร้างในโครงการ เช่น โปรแกรม (แฟ้มโปรแกรมไบนารี), สคริปต์, ไลบรารี และข้อมูลเบ็ดเตล็ด ไม่ใช่เป้าหมายทุกชนิดที่จะประกอบสร้างจากซอร์ส บางอย่างมีอยู่เพียงเพื่อจัดซอร์สและอาจไม่มีตัวตนทางกายภาพ (เช่น เป้าหมายที่เป็นข้อมูลเบ็ดเตล็ด) เป้าหมายต่าง ๆ จะอยู่ภายใต้กลุ่ม ดูรายชื่อชนิดของเป้าหมายทั้งหมดได้ที่หัวข้อ <link linkend="adding-target">"การเพิ่มเป้าหมาย"</link>

en: <emphasis>Source files</emphasis> may be used to build targets, though some source files simply belong to targets. They exist only under targets. Many target types expect certain type of source files (e.g. the Programs and Libraries target types), but some can accept any file (e.g. a Miscellaneous Data target).
th: <emphasis>แฟ้มซอร์ส</emphasis> อาจใช้ในการประกอบสร้างเป้าหมาย แม้ว่าบางแฟ้มจะเพียงแค่เป็นของเป้าหมายก็ตาม แฟ้มซอร์สจะต้องอยู่ภายใต้เป้าหมายเท่านั้น เป้าหมายหลายชนิดเจาะจงชนิดของแฟ้มซอร์ส (เช่น เป้าหมายชนิดโปรแกรมและไลบรารี) แต่บางเป้าหมายสามารถใช้กับแฟ้มชนิดใดก็ได้ (เช่น เป้าหมายที่เป็นข้อมูลเบ็ดเตล็ด)

en: Each project group and target is configurable in the standard <application>automake</application> way. You can set compiler and linker flags directly for each target, or set <application>configure</application> variables. Groups allow you to set an installation destination for their targets.
th: แต่ละกลุ่มและเป้าหมายของโครงการ สามารถตั้งค่าได้ตามวิธีมาตรฐานของ <application>automake</application> คุณสามารถกำหนดแฟล็กของคอมไพเลอร์และลิงเกอร์ให้กับแต่ละเป้าหมายได้โดยตรง หรือจะตั้งค่าตัวแปร <application>configure</application> ก็ได้ คุณสามารถกำหนดจุดติดตั้งของเป้าหมายต่าง ๆ ภายในกลุ่มได้ด้วย

en: Just like the file manager, the project manager view also has convenience actions (accessible from the context menu) for source files and targets.
th: เช่นเดียวกับเครื่องมือจัดการแฟ้ม มุมมองเครื่องมือจัดการโครงการยังมีคำสั่งสะดวกใช้ (สามารถเข้าถึงได้จากเมนูบริบท) สำหรับแฟ้มซอร์สและเป้าหมายด้วย

en: Many command-line tools are available to maintain and manage a project, and each tool has its own specific rules and capabilities. <application>Anjuta</application> tries to automate most common operations using plugins. However, you might occasionally still need to perform certain operations manually.
th: มีเครื่องมือบรรทัดคำสั่งมากมายที่สามารถใช้ดูแลและจัดการโครงการได้ และแต่ละเครื่องมือก็จะมีกฎและความสามารถเฉพาะของตนเอง <application>แอนจูตา</application> พยายามทำให้การกระทำต่าง ๆ ที่ใช้บ่อยทำงานเป็นอัตโนมัติโดยใช้ปลั๊กอิน แต่บางครั้งคุณก็อาจยังจำเป็นต้องสั่งการด้วยตนเอง

en: You may modify a project's structure using external tools or by hand-editing the project files. It doesn't matter whether the project is loaded in <application>Anjuta</application> or not. <application>Anjuta</application> will update itself with any external changes made to a project.
th: คุณอาจปรับเปลี่ยนโครงสร้างของโครงการโดยใช้เครื่องมือภายนอก หรือแก้ไขแฟ้มโครงการด้วยมือได้ ไม่สำคัญว่าโครงการจะโหลดใน <application>แอนจูตา</application> หรือไม่ <application>แอนจูตา</application> จะปรับข้อมูลตัวเองตามการเปลี่ยนแปลงภายนอกที่เกิดขึ้นกับโครงการเอง

en: Groups and targets
th: กลุ่มและเป้าหมาย

en: Adding Groups
th: การเพิ่มกลุ่ม

en: Select <menuchoice><guisubmenu>Project</guisubmenu><guimenuitem>Add Group</guimenuitem></menuchoice> and a dialog to add a new group will pop up.
th: เลือก <menuchoice><guisubmenu>โครงการ</guisubmenu><guimenuitem>เพิ่มกลุ่ม</guimenuitem></menuchoice> แล้วกล่องโต้ตอบสำหรับเพิ่มกลุ่มใหม่จะผุดขึ้นมา

en: Select the group under which to add the new group.
th: เลือกกลุ่มที่จะเพิ่มกลุ่มใหม่

en: Enter the name of the new group and click <guibutton>Add</guibutton>.
th: ป้อนชื่อของกลุ่มใหม่นั้น แล้วคลิก <guibutton>เพิ่ม</guibutton>

en: To add a new group (which is a directory in automake-based projects): <placeholder-1/>
th: วิธีเพิ่มกลุ่มใหม่ (ซึ่งก็คือไดเรกทอรีในโครงการที่ใช้ automake): <placeholder-1/>

en: With automake projects, a new directory with the given name will be created under the parent group's directory.
th: สำหรับโครงการ automake ไดเรกทอรีใหม่ที่มีชื่อตามที่กำหนดจะถูกสร้างขึ้นภายใต้ไดเรกทอรีของกลุ่มแม่

en: You can also add a new group from the <interface>Project</interface> window directly. Right-click the group under which to add the new group, then choose <guimenuitem>Add Group</guimenuitem> from the context menu.
th: คุณยังสามารถเพิ่มกลุ่มใหม่จากหน้าต่าง <interface>โครงการ</interface> ได้โดยตรง โดยคลิกขวาที่กลุ่มที่จะเพิ่มกลุ่มใหม่ แล้วเลือก <guimenuitem>เพิ่มกลุ่ม</guimenuitem> จากเมนูบริบท

en: Removing Groups
th: การลบกลุ่ม

en: Right-click the group in the <interface>Project Manager</interface> view.
th: คลิกขวาที่กลุ่มในมุมมอง <interface>เครื่องมือจัดการโครงการ</interface>

en: Select <guimenuitem>Remove</guimenuitem> from the context menu.
th: เลือก <guimenuitem>เอาออก</guimenuitem> จากเมนูบริบท

en: To remove a group: <placeholder-1/>
th: วิธีลบกลุ่ม: <placeholder-1/>

en: The target and sources associated with the group will also be removed from the project. (They are not deleted from the file system, though. You can add them to the project again later if you like.)
th: เป้าหมายและซอร์สที่เกี่ยวข้องกับกลุ่มจะถูกลบออกจากโครงการ (แต่ไม่ได้ถูกลบออกจากระบบแฟ้ม คุณสามารถเพิ่มกลับเข้ามาในโครงการได้อีกในภายหลังถ้าต้องการ)

en: Adding Targets
th: การเพิ่มเป้าหมาย

en: Select <menuchoice><guisubmenu>Project</guisubmenu><guimenuitem>Add Target</guimenuitem></menuchoice> and a dialog to add a new target will popup.
th: เลือก <menuchoice><guisubmenu>โครงการ</guisubmenu><guimenuitem>เพิ่มเป้าหมาย</guimenuitem></menuchoice> แล้วกล่องโต้ตอบสำหรับเพิ่มเป้าหมายใหม่จะผุดขึ้น

en: Select the group under which to add the target.
th: เลือกกลุ่มที่จะเพิ่มเป้าหมาย

en: Select the target type.
th: เลือกชนิดของเป้าหมาย

en: Enter a name for the new target and click <guibutton>Add</guibutton>.
th: ป้อนชื่อเป้าหมายใหม่ แล้วคลิก <guibutton>เพิ่ม</guibutton>

en: To add a new target: <placeholder-1/>
th: วิธีเพิ่มเป้าหมายใหม่: <placeholder-1/>

en: You can also add a new target from the <interface>Project</interface> window directly. Right-click the group under which to add the target, then select <guimenuitem>Add target</guimenuitem> from the context menu.
th: คุณยังสามารถเพิ่มเป้าหมายใหม่จากหน้าต่าง <interface>โครงการ</ interface> ได้โดยตรง โดยคลิกขวาที่กลุ่มที่จะเพิ่มเป้าหมายใหม่ แล้วเลือก <guimenuitem>เพิ่มเป้าหมาย</guimenuitem> จากเมนูบริบท

en: Target names usually require some standard prefix and suffix, depending on the type of target. Anjuta will warn you if a name is not valid and may provide an example of a valid name.
th: ชื่อเป้าหมาย โดยปกติจะต้องขึ้นต้นและลงท้ายด้วยคำมาตรฐานที่กำหนดไว้ ขึ้นอยู่กับชนิดของเป้าหมาย แอนจูตาจะเตือนถ้าชื่อนั้นไม่ถูกต้อง และอาจให้ตัวอย่างชื่อที่ถูกต้องด้วย

en: The <emphasis>Program</emphasis> target type is for executable binaries. Select this type if you want to add an executable to the project. By default, all program targets will be installed in the standard executable directory, e.g. /usr/bin or /usr/local/bin. You can override this by specifying a different installation directory in the properties of the group containing the target.
th: เป้าหมายชนิด <emphasis>โปรแกรม</emphasis> ใช้สำหรับแฟ้มโปรแกรมไบนารี ใช้เมื่อคุณต้องการเพิ่มแฟ้มโปรแกรมไบนารีในโครงการ โดยปกติแล้ว เป้าหมายชนิดโปรแกรมทั้งหมดจะถูกติดตั้งในไดเรกทอรีมาตรฐานสำหรับแฟ้มโปรแกรม เช่น /usr/bin หรือ /usr/local/bin คุณสามารถเปลี่ยนที่ได้ โดยระบุไดเรกทอรีติดตั้งอื่นในคุณสมบัติของกลุ่มที่บรรจุเป้าหมายนั้น

en: The <emphasis>Shared Library</emphasis> target type is for shared or dynamic libraries. Select this type if you are adding a shared library to the project. By default, all shared libraries are installed in the standard libraries directory, e.g. /usr/lib or /usr/local/lib. You can override this by specifying a different installation directory in the properties of the group containing the target.
th: เป้าหมายชนิด <emphasis>ไลบรารีใช้ร่วม</emphasis> ใช้สำหรับไลบรารีใช้ร่วมหรือไลบรารีแบบไดนามิก ใช้เมื่อคุณจะเพิ่มไลบรารีใช้ร่วมในโครงการ โดยปกติแล้ว ไลบรารีใช้ร่วมทั้งหมดจะถูกติดตั้งในไดเรกทอรีมาตรฐานสำหรับไลบรารี เช่น /usr/lib หรือ /usr/local/lib คุณสามารถเปลี่ยนที่ได้ โดยระบุไดเรกทอรีติดตั้งอื่นในคุณสมบัติของกลุ่มที่บรรจุเป้าหมายนั้น

en: The <emphasis>Static Library</emphasis> target type is for static libraries. Select this type if you are adding a static library to the project. By default, all static libraries are installed in the standard libraries directory, e.g. /usr/lib or /usr/local/lib. You can override this by specifying a different installation directory in the properties of the group containing the target.
th: เป้าหมายชนิด <emphasis>ไลบรารีสแตติก</emphasis> ใช้สำหรับไลบรารีแบบสแตติก ใช้เมื่อคุณจะเพิ่มไลบรารีแบบสแตติกในโครงการ โดยปกติแล้ว ไลบรารีแบบสแตติกทั้งหมดจะถูกติดตั้งในไดเรกทอรีมาตรฐานสำหรับไลบรารี เช่น /usr/lib หรือ /usr/local/lib คุณสามารถเปลี่ยนที่ได้ โดยระบุไดเรกทอรีติดตั้งอื่นในคุณสมบัติของกลุ่มที่บรรจุเป้าหมายนั้น

en: The <emphasis>Java Module</emphasis> target type is for Java modules. Select this type if you are grouping Java sources into a module. You need to provide an installation directory for this target where the .class files will be installed. It can be set in the properties of the group containing the target.
th: เป้าหมายชนิด <emphasis>มอดูลจาวา</emphasis> ใช้สำหรับมอดูลของจาวา ใช้เมื่อคุณจะจัดกลุ่มซอร์สจาวาเข้าด้วยกันเป็นมอดูล คุณต้องระบุไดเรกทอรีติดตั้งสำหรับเป้าหมายนี้ เพื่อติดตั้งแฟ้ม .class ด้วย ค่านี้สามารถกำหนดได้ในคุณสมบัติของกลุ่มนี้ที่บรรจุเป้าหมายนั้น

en: There can really be only one Java module in a group. This is a restriction made by automake. Please read the automake info page for more details.
th: ในกลุ่มหนึ่ง ๆ สามารถมีมอดูลจาวาได้เพียงหนึ่งมอดูลเท่านั้น นี่เป็นข้อจำกัดที่กำหนดโดย automake กรุณาอ่านข้อมูลเพิ่มเติมได้จากหน้า info ของ automake

en: The <emphasis>Python Module</emphasis> target type is for Python modules. Select this type if you are grouping Python sources into a module. You need to provide an installation directory for this target where the sources will be installed. It can be set in the properties of the group containing the target.
th: เป้าหมายชนิด <emphasis>มอดูลไพธอน</emphasis> ใช้สำหรับมอดูลของไพธอน ใช้เมื่อคุณจะจัดกลุ่มซอร์สไพธอนเข้าด้วยกันเป็นมอดูล คุณต้องระบุไดเรกทอรีติดตั้งสำหรับเป้าหมายนี้ เพื่อติดตั้งซอร์สด้วย ค่านี้สามารถกำหนดได้ในคุณสมบัติของกลุ่มนี้ที่บรรจุเป้าหมายนั้น

en: The <emphasis>Scripts</emphasis> target type is for grouping scripts. They will be installed in the standard executable directory.
th: เป้าหมายชนิด <emphasis>สคริปต์</emphasis> ใช้สำหรับจัดกลุ่มสคริปต์ สคริปต์ทั้งหมดจะถูกติดตั้งในไดเรกทอรีมาตรฐานสำหรับแฟ้มโปรแกรม

en: The <emphasis>Miscellaneous Data</emphasis> target type is for grouping simple files in a project. You must specify an installation directory in the group properties.
th: เป้าหมายชนิด <emphasis>ข้อมูลเบ็ดเตล็ด</emphasis> ใช้สำหรับจัดกลุ่มแฟ้มทั่วไปในโครงการ คุณต้องระบุไดเรกทอรีติดตั้งในคุณสมบัติของกลุ่มด้วย

en: The <emphasis>Header Files</emphasis> target type is for grouping C/C++ header files that need to be installed on a system (for example as part of a library API). (For header files that do not need to be installed, make them part of the Program target along with the sources.) Header files will be installed in the standard include directory unless an installation path is specified in the group properties.
th: เป้าหมายชนิด <emphasis>แฟ้มส่วนหัว</emphasis> ใช้สำหรับจัดกลุ่มแฟ้มส่วนหัวของ C/C++ ที่ต้องติดตั้งลงในระบบ (ตัวอย่างเช่น เพื่อเป็นส่วนหนึ่งของ API ของไลบรารี) (สำหรับแฟ้มส่วนหัวไม่ต้องติดตั้ง ก็ทำให้เป็นส่วนหนึ่งของเป้าหมายชนิดโปรแกรมร่วมกับซอร์สอื่น ๆ เสีย) แฟ้มส่วนหัวจะถูกติดตั้งในไดเรกทอรีมาตรฐานสำหรับแฟ้มส่วนหัว เว้นแต่จะมีการระบุพาธติดตั้งในคุณสมบัติของกลุ่ม

en: The <emphasis>Man Documentation</emphasis> and <emphasis>Info Documentation</emphasis> target types are for grouping man and info documentation respectively. By default, documentation files will be installed in the standard installation directories.
th: เป้าหมายชนิด <emphasis>เอกสารแบบ Man</emphasis> และ <emphasis>เอกสารแบบ Info</emphasis> ใช้สำหรับจัดกลุ่มเอกสารแบบ man และ info ตามลำดับ โดยปกติแล้ว แฟ้มเอกสารเหล่านี้จะถูกติดตั้งในไดเรกทอรีติดตั้งมาตรฐาน

en: There are several target types for automake projects. They are: <placeholder-1/>
th: มีเป้าหมายหลายชนิดสำหรับโครงการ automake คือ: <placeholder-1/>

en: Removing Targets
th: การลบเป้าหมาย

en: Right-click the target in the <interface>Project Manager</interface> view.
th: คลิกขวาที่เป้าหมายในมุมมอง <interface>เครื่องมือจัดการโครงการ</interface>

en: To remove a target: <placeholder-1/>
th: วิธีลบเป้าหมาย: <placeholder-1/>

en: The sources associated with the targets will also be removed from the project (they are not deleted from the file system, though).
th: ซอร์สที่เกี่ยวข้องกับเป้าหมายจะถูกลบออกจากโครงการด้วย (แต่จะไม่ถูกลบออกจากระบบแฟ้ม)

en: Adding and Removing Files
th: การเพิ่มและลบแฟ้ม

en: Adding Source Files
th: การเพิ่มแฟ้มซอร์ส

en: Select the menu item <menuchoice><guisubmenu>Project</guisubmenu><guimenuitem>Add Source File</guimenuitem></menuchoice>. From the dialog, select the target to which the file should be added and the file itself. You can add multiple files at once. To do that, select multiple files from the file selection dialog using either the <keycap>Shift</keycap> or <keycap>Ctrl</keycap> key. Then click <guibutton>Add</guibutton> to add the files to the project.
th: เลือกรายการเมนู <menuchoice><guisubmenu>โครงการ</guisubmenu><guimenuitem>เพิ่มแฟ้มซอร์ส</guimenuitem></menuchoice> จากนั้น จากกล่องโต้ตอบ เลือกเป้าหมายที่จะเพิ่มแฟ้มเข้าและตัวแฟ้มที่จะเพิ่ม คุณสามารถเพิ่มแฟ้มได้ทีละหลายแฟ้ม โดยเลือกหลายแฟ้มจากกล่องโต้ตอบเลือกแฟ้มด้วยปุ่ม <keycap>Shift</keycap> หรือ <keycap>Ctrl</keycap> แล้วคลิกปุ่ม <guibutton>เพิ่ม</guibutton> เพื่อเพิ่มแฟ้มเข้าในโครงการ

en: By default, the current editor file will be preselected for addition in the dialog. Another convenient way to add a file is to right-click it in the <interface>File Manager</interface> and choose <guimenuitem>Add to project</guimenuitem> from the context menu.
th: โดยปกติแล้ว แฟ้มที่เปิดอยู่ในเครื่องมือแก้ไขจะถูกเลือกไว้ในกล่องโต้ตอบสำหรับเพิ่มเลย อีกวิธีที่สะดวกในการเพิ่มแฟ้มคือ คลิกขวาใน <interface>เครื่องมือจัดการแฟ้ม</interface> แล้วเลือก <guimenuitem>เพิ่มเข้าในโครงการ</guimenuitem> จากเมนูบริบท

en: If the file you choose has already been added to the project, then <application>Anjuta</application> will not add it again. It will also give you a warning that the file has already been added.
th: ถ้าแฟ้มที่คุณเลือกถูกเพิ่มเข้าไปในโครงการอยู่ก่อนแล้ว <application>แอนจูตา</application> ก็จะไม่เพิ่มอีก และจะเตือนคุณว่าแฟ้มนั้นถูกเพิ่มไปแล้ว

en: If the file you choose is not in the project directory, you will be asked to confirm that you wish to copy the file into the target's directory. <application>Anjuta</application> cannot add files which are outside of a target's directory without copying them in.
th: ถ้าแฟ้มที่คุณเลือกไม่ได้อยู่ในไดเรกทอรีโครงการ คุณจะถูกถามยืนยันว่าคุณต้องการจะคัดลอกแฟ้มเข้าไปในไดเรกทอรีของเป้าหมายหรือไม่ <application>แอนจูตา</application> ไม่สามารถเพิ่มแฟ้มที่อยู่นอกไดเรกทอรีของเป้าหมายเข้าไปโดยตรงได้ โดยไม่คัดลอกเข้าไปก่อน

en: Removing Source Files
th: การเอาแฟ้มซอร์สออก

en: To remove a file from the project, right-click the file you want to remove in the <interface>Project window</interface> and choose <guimenuitem>Remove</guimenuitem> from the context menu.
th: การเอาแฟ้มออกจากโครงการ ทำได้โดยคลิกขวาที่แฟ้มที่คุณต้องการเอาออกใน <interface>หน้าต่างโครงการ</interface> แล้วเลือก <guimenuitem>เอาออก</guimenuitem> จากเมนูบริบท

en: A confirmation dialog will appear, and the file will be removed from the project.
th: จะปรากฏกล่องโต้ตอบยืนยัน แล้วแฟ้มนั้นจะถูกเอาออกจากโครงการ

en: The file is not deleted!
th: แฟ้มนั้นไม่ได้ถูกลบ!

en: The file is not deleted from the filesystem. It still exists, and you can add it back again later if you so wish. The file is only removed from the project listing, and will not take part in any project operations such as compiling, building, or distribution.
th: แฟ้มที่เอาออกนั้น ไม่ได้ถูกลบออกจากระบบแฟ้ม แฟ้มจะยังคงอยู่เหมือนเดิม และคุณสามารถเพิ่มกลับเข้ามาใหม่ได้ถ้าต้องการ แฟ้มนั้นเพียงแค่ถูกลบออกจากรายชื่อของโครงการเท่านั้น และจะไม่มีส่วนในการทำงานใด ๆ ของโครงการอีก ไม่ว่าจะเป็นการคอมไพล์ การประกอบสร้าง การแจกจ่าย เป็นต้น

en: Project Configuration
th: การตั้งค่าโครงการ

en: Project configuration involves setting the correct build flags for targets, groups and the project itself. You can set these flags in their respective properties dialogs.
th: การตั้งค่าโครงการเป็นการตั้งค่าแฟล็กของการประกอบสร้างที่ถูกต้องสำหรับเป้าหมายต่าง ๆ กลุ่มต่าง ๆ และตัวโครงการเอง คุณสามารถตั้งค่าแฟล็กเหล่านี้ได้ในกล่องโต้ตอบคุณสมบัติของแต่ละส่วนดังกล่าว

en: You can freely use autoconf and automake variables that are automatically set for the project during configuration. Apart from these automatically set variables, you can also define your own variables in <link linkend="project-properties">Project Properties</link> and use them in properties. This will make it easy to update flags later, especially when a variable is used in several targets.
th: คุณสามารถใช้ตัวแปรของ autoconf และ automake ซึ่งถูกกำหนดค่าโดยอัตโนมัติสำหรับโครงการในระหว่างการตั้งค่าได้อย่างอิสระ นอกเหนือจากตัวแปรที่ถูกกำหนดค่าโดยอัตโนมัติเหล่านี้ คุณยังสามารถกำหนดตัวแปรของคุณเองใน <link linkend="project-properties">คุณสมบัติโครงการ</link> และใช้ตัวแปรเหล่านั้นในคุณสมบัติต่าง ๆ ได้ ซึ่งจะทำให้ง่ายต่อการปรับค่าแฟล็กในภายหลัง โดยเฉพาะเมื่อมีการใช้ตัวแปรในหลายเป้าหมาย

en: <emphasis>$(prefix)</emphasis>: The installation prefix. The project is installed under various subdirectories under this prefix. By default it is /usr/local.
th: <emphasis>$(prefix)</emphasis>: prefix ของการติดตั้ง โครงการจะถูกติดตั้งภายใต้ไดเรกทอรีย่อยหลายไดเรกทอรีภายใต้ prefix นี้ ค่าปริยายคือ /usr/local

en: <emphasis>$(bindir)</emphasis>: The installation directory for executable binaries. All your executable and script targets will be installed in this directory. By default, it is $(prefix)/bin.
th: <emphasis>$(bindir)</emphasis>: ไดเรกทอรีสำหรับติดตั้งแฟ้มโปรแกรมไบนารี เป้าหมายทั้งหมดที่เป็นแฟ้มโปรแกรมและสคริปต์จะถูกติดตั้งในไดเรกทอรีนี้ ค่าปริยายคือ $(prefix)/bin

en: <emphasis>$(libdir)</emphasis>: The installation directory for libraries. All your library targets (both shared and static) will be installed in this directory or a subdirectory below it. By default, it is $(prefix)/lib.
th: <emphasis>$(libdir)</emphasis>: ไดเรกทอรีสำหรับติดตั้งไลบรารี เป้าหมายที่เป็นไลบรารีทั้งหมด (ทั้งแบบใช้ร่วมและแบบสแตติก) จะถูกติดตั้งในไดเรกทอรีนี้หรือไดเรกทอรีย่อยที่ต่ำลงไป ค่าปริยายคือ $(prefix)/lib

en: <emphasis>$(module_CFLAGS)</emphasis> and $(module_LIBS): These flags are set by <application>configure</application> for the packages that your project depends on. The packages used by the project are set in <link linkend="project-properties">Project Properties</link>. 'module' is a package group that you specify in the project properties as described below.
th: <emphasis>$(module_CFLAGS)</emphasis> และ $(module_LIBS): แฟล็กเหล่านี้ถูกกำหนดค่าโดยสคริปต์ <application>configure</application> เพื่อใช้แพกเกจอื่นซึ่งโครงการของคุณต้องใช้ แพกเกจต่าง ๆ ที่โครงการใช้จะกำหนดใน <link linkend="project-properties">คุณสมบัติโครงการ</link> 'module' ในที่นี้คือกลุ่มแพกเกจซึ่งคุณระบุในคุณสมบัติโครงการ ดังจะอธิบายด้านล่าง

en: Some of the many common variables are listed here. For full list of them see the <ulink url="info:automake">automake info documentation</ulink>. <placeholder-1/>
th: ตัวแปรที่ใช้บ่อยบางส่วนได้ลงรายชื่อไว้ที่นี่ สำหรับรายชื่อทั้งหมด ดูได้ที่ <ulink url="info:automake">เอกสาร info ของ automake</ulink> <placeholder-1/>

en: Project properties
th: คุณสมบัติโครงการ

en: Set the project name, version and URL in the <guibutton>General</guibutton> page. <application>configure</application> variables can also be use in these fields. The URL is the bug report URL for the project.
th: กำหนดชื่อ รุ่น และ URL ของโครงการในหน้า <guibutton>ทั่วไป</guibutton> สามารถใช้ตัวแปร <application>configure</application> ในช่องข้อมูลเหล่านี้ได้ ในที่นี้ URL หมายถึง URL สำหรับรายงานบั๊กของโครงการ

en: Add and remove dependencies for your project in the <guibutton>Packages</guibutton> page. See below for details.
th: เพิ่มและลบสิ่งที่ต้องใช้สำหรับโครงการของคุณในหน้า <guibutton>แพกเกจ</guibutton> ดูรายละเอียดได้ที่ด้านล่าง

en: Create more configure variables in the <guibutton>Variables</guibutton> page to use in group and target properties.
th: สร้างตัวแปร configure เพิ่มเติมในหน้า <guibutton>ตัวแปร</guibutton> เพื่อใช้ในคุณสมบัติของกลุ่มและเป้าหมาย

en: The project properties dialog can be opened only by choosing <menuchoice><guisubmenu>Project</guisubmenu><guimenuitem>Properties</guimenuitem></menuchoice> from the toplevel menu bar. You can: <placeholder-1/>
th: กล่องโต้ตอบคุณสมบัติโครงการสามารถเปิดได้โดยเลือก <menuchoice><guisubmenu>โครงการ</guisubmenu><guimenuitem>คุณสมบัติ</guimenuitem></menuchoice> จากแถบเมนูบนสุด คุณสามารถ: <placeholder-1/>

en: Project properties dialog
th: กล่องโต้ตอบคุณสมบัติโครงการ

en: Dependencies are external packages that the project uses and are hence required to build it. Only packages installed using <ulink url="info:pkg-config">pkg-config</ulink> can be added from this interface. For others, the configure.ac file can be edited manually. <placeholder-1/>
th: สิ่งที่ต้องใช้ เป็นแพกเกจภายนอกที่โครงการเรียกใช้ จึงเป็นสิ่งที่ต้องการเพื่อประกอบสร้างโครงการ ส่วนติดต่อนี้สามารถเพิ่มได้เฉพาะแพกเกจที่ติดตั้งโดยใช้ <ulink url="info:pkg-config">pkg-config</ulink> เท่านั้น สำหรับแพกเกจอื่น ๆ คุณสามารถแก้ไขแฟ้ม configure.ac เองได้ <placeholder-1/>

en: External package dependencies are grouped into <emphasis>modules</emphasis>, so that their combined build flags can be conveniently added to different targets. <emphasis>Modules</emphasis> are just arbitrary groups of packages and can be named anything (only alphanumeric characters and _ are allowed in module names). Usually, they follow the name of targets they would be used in. Consequently, for small projects with single targets, just one module to hold all dependencies is enough.
th: แพกเกจภายนอกที่ต้องใข้ จะจัดกลุ่มเป็น <emphasis>มอดูล</emphasis> เพื่อที่จะสามารถรวมแฟล็กสำหรับประกอบสร้างของแพกเกจในกลุ่มสำหรับเพิ่มเข้าในเป้าหมายต่าง ๆ เป็นกลุ่มก้อนได้อย่างสะดวก <emphasis>มอดูล</emphasis> ในที่นี้เป็นเพียงการจัดกลุ่มแพกเกจตามความต้องการโดยไม่มีข้อจำกัด และสามารถตั้งชื่ออะไรก็ได้ (ชื่อมอดูลใช้ได้เพียงตัวอักษร ตัวเลข และ _ เท่านั้น) โดยปกติก็จะใช้ชื่อตามเป้าหมายที่กลุ่มแพกเกจจะใช้ด้วย ดังนั้น สำหรับโครงการขนาดเล็กที่มีเป้าหมายเดียว ใช้เพียงมอดูลเดียวแทนสิ่งที่ต้องใช้ทั้งหมดก็เพียงพอ

en: Each package exports a set of <emphasis>compiler flags</emphasis> and <emphasis>libraries</emphasis>. They are aggregated together for all packages under a module, and <application>configure</application> variables <emphasis>$(module_CFLAGS)</emphasis> and <emphasis>$(module_LIBS)</emphasis> are defined. These variables can then be used in <link linkend="group-properties">Group properties</link> and <link linkend="target-properties">Target properties</link>.
th: แพกเกจแต่ละแพกเกจจะส่งออก <emphasis>แฟล็กของคอมไพเลอร์</emphasis> และ <emphasis>ไลบรารี</emphasis> มาชุดหนึ่ง ค่าเหล่านี้จากแพกเกจทั้งหมดในมอดูลจะรวมเข้าด้วยกัน และกำหนดเป็นตัวแปร <application>configure</application> ชื่อ <emphasis>$(module_CFLAGS)</emphasis> และ <emphasis>$(module_LIBS)</emphasis> ตัวแปรเหล่านี้สามารถใช้ใน <link linkend="group-properties">คุณสมบัติกลุ่ม</link> และ <link linkend="target-properties">คุณสมบัติเป้าหมาย</link> ได้

en: Select <menuchoice><guisubmenu>Project</guisubmenu><guimenuitem>Properties</guimenuitem></menuchoice> to bring up the project properties dialog.
th: เลือก <menuchoice><guisubmenu>โครงการ</guisubmenu><guimenuitem>คุณสมบัติ</guimenuitem></menuchoice> เพื่อเปิดกล่องโต้ตอบคุณสมบัติโครงการ

en: Select the tab <guibutton>Packages</guibutton> to bring up the Packages page.
th: เลือกแท็บ <guibutton>แพกเกจ</guibutton> เพื่อเข้าสู่หน้าแพกเกจ

en: Select the <emphasis>module</emphasis> to add the package to. If there is no module created yet or there is no appropriate module, create one by clicking <guibutton>Add module</guibutton>. Give a sensible name to the module, preferably in UPPERCASE to match other <application>configure</application> variables (only use alphanumeric and '_' characters) and press <keycap>Enter</keycap> to create it.
th: เลือก <emphasis>มอดูล</emphasis> ที่จะเพิ่มแพกเกจ ถ้ายังไม่มีมอดูลที่สร้างไว้ หรือไม่มีมอดูลที่เหมาะสม ก็สร้างได้โดยคลิก <guibutton>เพิ่มมอดูล</guibutton> ตั้งชื่อที่สมเหตุสมผลให้กับมอดูล โดยควรใช้ตัวพิมพ์ใหญ่ทั้งหมด เพื่อให้เหมือนกับตัวแปร <application>configure</application> อื่น ๆ (ใช้เฉพาะตัวอักษร ตัวเลข และ '_' เท่านั้น) แล้วกด <keycap>Enter</keycap> เพื่อสร้างมอดูล

en: Click <guibutton>Add Package</guibutton> to bring up the package selection dialog.
th: คลิก <guibutton>เพิ่มแพกเกจ</guibutton> เพื่อเปิดกล่องโต้ตอบเลือกแพกเกจ

en: Select the package to add and click <guibutton>Add</guibutton>.
th: เลือกแพกเกจที่จะเพิ่ม แล้วคลิก <guibutton>เพิ่ม</guibutton>

en: Click <guibutton>Close</guibutton> to close the properties dialog.
th: คลิก <guibutton>ปิด</guibutton> เพื่อปิดกล่องโต้ตอบคุณสมบัติ

en: To add a package dependency: <placeholder-1/>
th: วิธีเพิ่มแพกเกจที่ต้องใช้: <placeholder-1/>

en: Group properties
th: คุณสมบัติกลุ่ม

en: Group properties dialog
th: กล่องโต้ตอบคุณสมบัติกลุ่ม

en: To edit a group's properties, double-click the group in the <interface>Project</interface> window to open the <interface>Group Properties</interface> dialog. (You can alternatively right-click the group and select <guimenuitem>Properties</guimenuitem> from the context menu.) <placeholder-1/>
th: การแก้ไขคุณสมบัติของกลุ่ม ทำได้โดยดับเบิลคลิกที่กลุ่มในหน้าต่าง <interface>โครงการ</interface> เพื่อเปิดกล่องโต้ตอบ <interface>คุณสมบัติกลุ่ม</interface> (หรืออีกทางหนึ่ง คุณสามารถคลิกขวาที่กลุ่มและเลือก <guimenuitem>คุณสมบัติ</guimenuitem> จากเมนูบริบท) <placeholder-1/>

en: <emphasis>Includes</emphasis>: Set your include directories for your C and C++ targets here. You need to provide the full include options of the compiler here, e.g. -I/usr/include/blah. The include paths will be used to find header files included by your source files. (You can also add other compiler flags here, but it's preferable to set them in their respective <emphasis>compiler flags</emphasis> fields as described below.)
th: <emphasis>พาธแฟ้มส่วนหัว</emphasis>: กำหนดไดเรกทอรีแฟ้มส่วนหัวสำหรับเป้าหมาย C และ C++ ของคุณที่นี่ คุณต้องป้อนตัวเลือกพาธแฟ้มส่วนหัวเต็ม ๆ ของคอมไพเลอร์ เช่น -I/usr/include/blah พาธแฟ้มส่วนหัวจะใช้ในหาแฟ้มส่วนหัวต่าง ๆ ที่ใช้ในแฟ้มซอร์สของคุณ (คุณยังสามารถเพิ่มแฟล็กคอมไพเลอร์อื่น ๆ ที่นี่ได้เช่นกัน แต่ทางที่ดี ควรกำหนดในช่องข้อมูล <emphasis>แฟล็กของคอมไพเลอร์</emphasis> โดยเฉพาะจะดีกว่า ดังจะอธิบายด้านล่าง)

en: <emphasis>Compiler flags</emphasis>: Set your compiler-specific flags here. There are different fields for different compiler categories. Flags that can be set here depend on the actual compiler used. The default compiler used for C/C++ is gcc/g++ (the GNU C compiler). Check out the <ulink url="info:gcc">gcc info documentation</ulink> for more details.
th: <emphasis>แฟล็กของคอมไพเลอร์</emphasis>: ตั้งค่าแฟล็กเฉพาะสำหรับคอมไพเลอร์ที่นี่ จะมีช่องข้อมูลแยกกันสำหรับคอมไพเลอร์ชนิดต่าง ๆ แฟล็กที่สามารถตั้งค่าในช่องเหล่านี้ จะขึ้นอยู่กับคอมไพเลอร์จริงที่ใช้ คอมไพเลอร์ปริยายสำหรับ C/C++ คือ gcc/g++ (GNU C Compiler) ตรวจสอบรายละเอียดเพิ่มเติมได้จาก <ulink url="info:gcc">เอกสาร info ของ gcc</ulink>

en: <emphasis>Install directories</emphasis>: The dialog will display a field for each target in the group that requires an installation directory. Set each installation directory as relative to one of the many <application>automake</application> directory variables, such as $(prefix), $(bindir), $(libdir), or $(datadir).
th: <emphasis>ไดเรกทอรีติดตั้ง</emphasis>: กล่องโต้ตอบจะแสดงช่องข้อมูลสำหรับเป้าหมายแต่ละอันในกลุ่มที่ต้องระบุไดเรกทอรีติดตั้ง คุณควรกำหนดไดเรกทอรีติดตั้งแต่ละตัวโดยสัมพัทธ์กับตัวแปรไดเรกทอรีของ <application>automake</application> เช่น $(prefix), $(bindir), $(libdir) หรือ $(datadir)

en: Properties set for a group apply to all the targets under it. So any compiler or linker flags set for a group will be automatically be part of all the targets in it (in addition to each target's individual properties). The following fields are available in the Group Properties dialog. <placeholder-1/>
th: คุณสมบัติที่กำหนดให้กับกลุ่มจะมีผลกับทุกเป้าหมายที่อยู่ในกลุ่ม ดังนั้น แฟล็กของคอมไพเลอร์หรือลิงเกอร์ใด ๆ ที่กำหนดให้กับกลุ่ม จะกลายเป็นส่วนหนึ่งของแฟล็กสำหรับเป้าหมายทั้งหมดในกลุ่มนั้น ๆ โดยอัตโนมัติ (เพิ่มเติมจากคุณสมบัติแต่ละรายการของแต่ละเป้าหมาย) กล่องโต้ตอบคุณสมบัติกลุ่มจะมีช่องข้อมูลต่อไปนี้ <placeholder-1/>

en: Target properties
th: คุณสมบัติเป้าหมาย

en: Any properties set for a target apply to that target only. A target also inherits properties from its containing group.
th: คุณสมบัติที่กำหนดให้กับเป้าหมายใด จะมีผลกับเป้าหมายนั้นเท่านั้น และเป้าหมายยังสืบทอดคุณสมบัติมาจากกลุ่มที่มันเป็นสมาชิกอีกด้วย

en: Target properties dialog
th: กล่องโต้ตอบคุณสมบัติเป้าหมาย

en: To set a target's properties, double-click the target in the <interface>Project window</interface> to open the Target Properties dialog. (You can alternatively right-click the target and select <guimenuitem>Properties</guimenuitem> from the context menu.) <placeholder-1/>
th: การตั้งค่าคุณสมบัติของเป้าหมาย ทำได้โดยดับเบิลคลิกที่เป้าหมายในหน้าต่าง <interface>โครงการ</interface> เพื่อเปิดกล่องโต้ตอบคุณสมบัติเป้าหมาย (หรืออีกทางหนึ่ง คุณสามารถคลิกขวาที่เป้าหมายและเลือก <guimenuitem>คุณสมบัติ</guimenuitem> จากเมนูบริบท) <placeholder-1/>

en: You can add the modules you have added in <link linkend="project-properties">Project properties</link> to a specific target here. To activate the module simply toggle the checkbox next to the module name. This will automatically add include and linker flags to that target and enable you to use the module within this target.
th: คุณสามารถเพิ่มมอดูลที่คุณได้เพิ่มไว้ใน <link linkend="project-properties">คุณสมบัติโครงการ</link> เข้าในเป้าหมายเป็นรายตัวได้ที่นี่ การเปิดใช้มอดูล ก็เพียงแต่กากล่องกาข้างชื่อมอดูล จะเป็นการเพิ่มแฟล็กพาธแฟ้มส่วนหัวและแฟล็กลิงเกอร์ให้กับเป้าหมาย และเปิดให้คุณใช้งานมอดูลดังกล่าวภายในเป้าหมายนี้โดยอัตโนมัติ

en: Advanced target options
th: ตัวเลือกระดับสูงของเป้าหมาย

en: The following fields are available in the advanced target configuration that you reach when you clicked the <guibutton>Advanded...</guibutton> button in the target properties dialog.
th: ช่องข้อมูลต่อไปนี้จะมีในการตั้งค่าเป้าหมายขั้นสูงที่คุณจะพบเมื่อคลิกปุ่ม <guibutton>ระดับสูง...</guibutton> ในกล่องโต้ตอบคุณสมบัติเป้าหมาย

en: <emphasis>Compiler settings</emphasis>: Set your compiler-specific flags here. There are different fields for different compiler categories. Flags that can be set here depend on the actual compiler used. The default compiler used for C/C++ is gcc/g++ (the GNU C compiler). Check out the <ulink url="info:gcc">gcc info documentation</ulink> for more details.
th: <emphasis>การตั้งค่าคอมไพเลอร์</emphasis>: ตั้งค่าแฟล็กเฉพาะสำหรับคอมไพเลอร์ที่นี่ จะมีช่องข้อมูลแยกกันสำหรับคอมไพเลอร์ชนิดต่าง ๆ แฟล็กที่สามารถตั้งค่าในช่องเหล่านี้ จะขึ้นอยู่กับคอมไพเลอร์จริงที่ใช้ คอมไพเลอร์ปริยายสำหรับ C/C++ คือ gcc/g++ (GNU C Compiler) ตรวจสอบรายละเอียดเพิ่มเติมได้จาก <ulink url="info:gcc">เอกสาร info ของ gcc</ulink>

en: <emphasis>Linker flags</emphasis>: Set linker flags that should be used when linking the target. These flags apply only to Program and Library targets. See the <ulink url="info:ld">ld info documentation</ulink> for available linker options.
th: <emphasis>แฟล็กของลิงเกอร์</emphasis>: ตั้งค่าแฟล็กของลิงเกอร์ที่จะใช้เมื่อลิงก์เป้าหมาย แฟล็กนี้จะมีผลกับเป้าหมายที่เป็นโปรแกรมและไลบรารีเท่านั้น ดูตัวเลือกลิงเกอร์ทั้งหมดได้จาก <ulink url="info:ld">เอกสาร info ของ ld</ulink>

en: <emphasis>Libraries</emphasis>: Set the libraries that the target depends on.
th: <emphasis>ไลบรารี</emphasis>: กำหนดไลบรารีที่เป้าหมายต้องใช้

en: Building
th: การประกอบสร้าง

en: Anjuta handles <application>autotools</application> projects. It is able to cope with other kinds of projects, such as projects using a user-written Makefile, but the current build interface is targeted at autotools projects. Some knowledge of them is useful to better understand the way a project is built.
th: แอนจูตาจะจัดการโครงการ <application>autotools</application> เป็นหลัก แม้จะสามารถจัดการกับโครงการชนิดอื่น ๆ เช่น โครงการที่ผู้ใช้เขียน Makefile เองได้ แต่ส่วนติดต่อสำหรับประกอบสร้างโครงการในปัจจุบันจะมุ่งไปที่โครงการ autotools ความรู้บางอย่างเกี่ยวกับ autotools จึงมีประโยชน์ในการทำความเข้าใจวิธีการที่โครงการถูกประกอบสร้าง

en: An autotools project is built in three steps:
th: โครงการ autotools จะแบ่งการประกอบสร้างเป็น 3 ขั้นตอน:

en: Generate
th: สร้าง

en: Configure
th: ตั้งค่า

en: Build
th: ประกอบสร้าง

en: <emphasis>Build</emphasis> is the main step in which all target files are generated from the source files. It can be divided into two subphases: <emphasis>Compile</emphasis> and <emphasis>Link</emphasis>. In the <emphasis>Compile</emphasis> phase each object file is generated from its corresponding source file. For instance, a source file <filename>hello.c</filename> will generate <filename>hello.o</filename> after compilation. Usually you do not need to worry about these object files — just think of them as intermediate files. In the <emphasis>Link</emphasis> phase, all object files and libraries are linked together to create the final executable. Some programming languages do not need a <emphasis>Compile</emphasis> and a <emphasis>Link</emphasis> phase. Moreover the <emphasis>Build</emphasis> step may be used to generate other files, like documentation which doesn't need such phases.
th: <emphasis>ประกอบสร้าง</emphasis> เป็นขั้นตอนหลักที่ทุกแฟ้มเป้าหมายจะถูกสร้างจากแฟ้มซอร์ส ขั้นตอนนี้สามารถแบ่งออกเป็นสองขั้นตอนย่อย คือ <emphasis>คอมไพล์</emphasis> และ <emphasis>ลิงก์</emphasis> ในขั้น <emphasis>คอมไพล์</emphasis> นั้น แฟ้มอ็อบเจกต์แต่ละแฟ้มจะถูกสร้างจากซอร์ส เช่น แฟ้มซอร์ส <filename>hello.c</filename> จะสร้าง <filename>hello.o</filename> หลังจากคอมไพล์เสร็จ โดยปกติแล้ว คุณไม่จำเป็นต้องกังวลเกี่ยวกับแฟ้มอ็อบเจกต์เหล่านี้ — เพียงแค่คิดว่าเป็นแฟ้มระหว่างทางก็พอ ส่วนในขั้น <emphasis>ลิงก์</emphasis> แฟ้มอ็อบเจกต์และไลบรารีทั้งหมดจะถูกลิงก์เข้าด้วยกันเพื่อสร้างเป็นแฟ้มโปรแกรมสุดท้าย ภาษาโปรแกรมบางภาษาไม่จำเป็นต้องมีขั้นตอน <emphasis>คอมไพล์</emphasis> และ <emphasis>ลิงก์</emphasis> นอกจากนี้ ขั้นตอน <emphasis>ประกอบสร้าง</emphasis> อาจถูกใช้สร้างแฟ้มอื่น ๆ เช่น แฟ้มเอกสาร ซึ่งไม่จำเป็นต้องใช้ขั้นตอนดังกล่าว

en: <emphasis>Configure</emphasis> is the step in which the source tree is adjusted to your system. <application>autotools</application> projects can be built on a wide range of systems using different compilers and having different library functions. This step runs a script named <filename>configure</filename> that will check for various characteristics of your system and create some of the files required to perform a build (such as <filename>Makefile</filename> and <filename>config.h</filename>). This step is used to select build options, too; for instance, a build option may disable optimization to make debugging easier or disable some experimental part of a program.
th: <emphasis>ตั้งค่า</emphasis> เป็นขั้นตอนที่ไดเรกทอรีของซอร์สถูกปรับให้เข้ากับระบบของคุณ โครงการ <application>autotools</application> สามารถประกอบสร้างในระบบต่าง ๆ ได้หลากหลาย โดยใช้คอมไพเลอร์ที่แตกต่างกันและมีฟังก์ชันในไลบรารีต่างกัน ขั้นตอนนี้จะเรียกสคริปต์ชื่อ <filename>configure</filename> ซึ่งจะตรวจสอบคุณลักษณะต่าง ๆ ของระบบของคุณ และสร้างแฟ้มบางแฟ้มที่จำเป็นในการประกอบสร้าง (เช่น <filename>Makefile</filename> และ <filename>config h.</filename>) ขั้นตอนนี้จะใช้ในการเลือกตัวเลือกของการประกอบสร้างด้วย เช่น อาจมีตัวเลือกของการประกอบสร้างที่ปิดการปรับประสิทธิภาพของโค้ด เพื่อให้ดีบั๊กได้ง่ายขึ้น หรืออาจมีตัวเลือกที่ปิดส่วนของโปรแกรมที่ยังอยู่ในระหว่างการทดลอง

en: <emphasis>Generate</emphasis> is the step in which the <filename>configure</filename> script and other related files are created. The <filename>configure</filename> script used above needs to run on various systems and checks a lot of things. It would be quite difficult to write it by hand. Moreover <application>autotools</application> enforces some project organization rules such as the presence of some mandatory files: <filename>NEWS</filename> and <filename>COPYING</filename>, for example. It includes several tools to create necessary files from simpler files written by the developer such as <filename>configure.in</filename> (or <filename>configure.ac</filename>) and <filename>Makefile.am</filename>. All these tools are commonly run from a script named <filename>autogen.sh</filename> in the project directory. This step is useful only for a developer (someone modifying the source files), as the <filename>configure</filename> script depends only on the source files, and is distributed within the project package. Note that the makefiles created by <application>configure</application> include some rules to automatically regenerate the project when needed, so it often not needed to rerun it directly.
th: <emphasis>สร้าง</emphasis> เป็นขั้นตอนที่สคริปต์ <filename>configure</filename> และแฟ้มอื่น ๆ ที่เกี่ยวข้องจะถูกสร้าง สคริปต์ <filename>configure</filename> ที่ใช้ข้างต้นนั้น จำเป็นต้องทำงานในระบบต่าง ๆ ที่หลากหลาย และมีการตรวจสอบจำนวนมาก จึงค่อนข้างยากที่จะเขียนขึ้นด้วยมือ นอกจากนี้ <application>autotools</application> ยังบังคับโครงสร้างองค์ประกอบบางอย่างของโครงการ เช่น ต้องมีแฟ้มบังคับบางแฟ้ม คือ <filename>NEWS</filename> และ <filename>COPYING</filename> เป็นต้น จึงมีเครื่องมือต่าง ๆ สำหรับสร้างแฟ้มที่จำเป็นจากแฟ้มที่ง่ายกว่าที่เขียนขึ้นโดยนักพัฒนา เช่น <filename>configure.in</filename> (หรือ <filename>configure.ac</filename>) และ <filename>Makefile.am</filename> เครื่องมือเหล่านี้มักจะถูกเรียกจากสคริปต์ชื่อ <filename>autogen.sh</filename> ในไดเรกทอรีโครงการ ขั้นตอนนี้จะมีประโยชน์สำหรับนักพัฒนา (คนที่แก้ไขแฟ้มซอร์สดังกล่าว) เท่านั้น เพราะสคริปต์ <filename>configure</filename> จะอาศัยแฟ้มซอร์สเท่านั้นในการสร้าง และจะแจกจ่ายมาในแพกเกจโครงการอยู่แล้ว และสังเกตว่า Makefile ต่าง ๆ ที่สร้างโดย <application>configure</application> จะมีกฎบางอย่างสำหรับสร้างโครงการซ้ำใหม่โดยอัตโนมัติเมื่อต้องการอยู่แล้ว จึงมักจะไม่จำเป็นต้องไปเรียกซ้ำเองโดยตรง

en: Read the info pages of <ulink type="info" url="info:automake"><application>automake</application></ulink> and <ulink type="info" url="info:autoconf"><application>autoconf</application></ulink> for more details on how these tools work.
th: อ่านรายละเอียดเพิ่มเติมเกี่ยวกับการทำงานของเครื่องมือเหล่านี้ได้จากหน้า info ของ <ulink type="info" url="info:automake"><application>automake</application></ulink> และ <ulink type="info" url="info:autoconf"><application>autoconf</application></ulink>

en: Generate and Configure
th: สร้างและตั้งค่า

en: Configure a project
th: ตั้งค่าโครงการ

en: You need to run this step before being able to build your project. This is usually run only once at the beginning of the first build process — for example, just after you have extracted a source tarball of a project distribution. After that, configuration is automatically handled by the subsequent build processes. If you have used the <emphasis>Application Wizard</emphasis> to create the application, then you will not need to run this separately: the wizard will run it as a part of the project generation process.
th: คุณต้องทำขั้นตอนนี้ก่อน จึงจะสามารถประกอบสร้างโครงการของคุณได้ ขั้นตอนนี้มักจะทำเพียงครั้งเดียวในช่วงเริ่มต้นของการประกอบสร้างครั้งแรก — เช่น หลังจากที่คุณได้แตกซอร์สจากแฟ้มทาร์ที่แจกจ่ายของโครงการ หลังจากนั้น การตั้งค่าจะถูกจัดการโดยอัตโนมัติในการประกอบสร้างครั้งถัด ๆ ไป และถ้าคุณได้ใช้ <emphasis>เครื่องมือวิเศษสร้างโปรแกรม</emphasis> เพื่อสร้างโปรแกรมแล้ว คุณจะไม่ต้องแยกทำขั้นนี้เลย เครื่องมือวิเศษจะทำให้ โดยเป็นส่วนหนึ่งของกระบวนการสร้างโครงการ

en: There is no requirement to run this only once. It can be run at any time, usually when the configuration options need to be changed. One thing to note is that if the <filename>config.h</filename> file in the top level directory is changed, running <filename>configure</filename> again will not overwrite it.
th: ไม่จำเป็นว่าจะต้องเรียกคำสั่งนี้เพียงครั้งเดียว คุณสามารถเรียกได้ทุกเวลา ซึ่งโดยปกติมักเรียกเมื่อต้องเปลี่ยนตัวเลือกของการตั้งค่า สิ่งหนึ่งที่ควรทราบก็คือ ถ้าแฟ้ม <filename>config.h</filename> ในไดเรกทอรีระดับบนมีการเปลี่ยนแปลง การเรียก <filename>configure</filename> ซ้ำจะไม่เขียนทับแฟ้มดังกล่าว

en: Whether you want to run the generate step or not
th: เลือกว่าคุณต้องการทำขั้นตอนสร้างโครงการหรือไม่

en: The generate step needs to be run once at the beginning of the project; then it is automatically handled by the build process. You can force it to run by checking the checkbox <interface>Regenerate project</interface>; you might do this if you encounter difficulties while building a project (e.g. if you receive build errors after you've modified lots of build files).
th: ขั้นตอนสร้างโครงการต้องทำหนึ่งครั้งเมื่อเริ่มต้นโครงการ จากนั้นจะถูกจัดการโดยอัตโนมัติโดยกระบวนการประกอบสร้าง คุณสามารถบังคับให้ทำขั้นตอนนี้ซ้ำได้ โดยกากล่องกา <interface>สร้างโครงการซ้ำ</interface> คุณอาจทำเช่นนี้หากคุณพบปัญหายุ่งยากในขณะประกอบสร้างโครงการ (เช่น ได้รับรายงานข้อผิดพลาดเกี่ยวกับการประกอบสร้าง หลังจากที่ได้ปรับเปลี่ยนแฟ้มที่เกี่ยวกับการประกอบสร้างไปมากมาย)

en: The configuration name
th: ชื่อของค่าตั้ง

en: This name is used to refer to each configuration. Some configurations (Default, Debug, Optimized) are already defined by default. One configuration includes a build directory and some configuration options.
th: ชื่อนี้จะใช้เพื่ออ้างถึงการตั้งค่าแต่ละแบบ ค่าตั้งบางแบบ (ปริยาย, ดีบั๊ก, ปรับประสิทธิภาพ) จะมีการกำหนดไว้แล้วโดยปริยาย ค่าตั้งแบบหนึ่ง ๆ จะประกอบด้วยไดเรกทอรีสำหรับประกอบสร้าง และตัวเลือกบางตัวสำหรับการตั้งค่าโครงการ

en: The build directory
th: ไดเรกทอรีสำหรับประกอบสร้าง

en: This is the build directory name. In the Default configuration, it is the same directory as the source directory but autotools supports building in a different directory.
th: เป็นชื่อไดเรกทอรีสำหรับใช้ประกอบสร้าง ในการตั้งค่าแบบปริยาย จะเป็นไดเรกทอรีเดียวกับไดเรกทอรีซอร์ส แต่ autotools รองรับการประกอบสร้างในไดเรกทอรีอื่นด้วย

en: Each configuration must have a different build directory and if one configuration uses the source directory, you cannot have other configurations at the same time. You need to run <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Remove Configuration</guimenuitem></menuchoice> on the configuration using the source directory before adding a new configuration.
th: ค่าตั้งแต่ละแบบต้องมีไดเรกทอรีสำหรับประกอบสร้างที่ต่างกัน และถ้ามีค่าตั้งแบบใดแบบหนึ่งใช้ไดเรกทอรีซอร์สแล้ว คุณจะไม่สามารถตั้งค่าแบบอื่น ๆ ได้ในเวลาเดียวกัน คุณจะต้องเรียก <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ลบค่าตั้ง</guimenuitem></menuchoice> กับค่าตั้งแบบที่ใช้ไดเรกทอรีซอร์ส ก่อนที่จะเพิ่มค่าตั้งแบบใหม่

en: Configure options
th: ตัวเลือกสำหรับตั้งค่า

en: These options are passed to the <filename>configure</filename> script. Some are standard, such as --prefix and CFLAGS; others depend on the project. You can get a list of allowed configuration options by running the <filename>configure</filename> script with the <option>--help</option> argument.
th: ตัวเลือกเหล่านี้จะถูกส่งผ่านไปให้สคริปต์ <filename>configure</filename> ตัวเลือกบางตัวเป็นตัวเลือกมาตรฐานเช่น --prefix และ CFLAGS ตัวเลือกอื่น ๆ จะขึ้นอยู่กับโครงการ คุณสามารถขอดูรายชื่อตัวเลือกสำหรับการตั้งค่าทั้งหมดที่มีได้ โดยเรียกสคริปต์ <filename>configure</filename> ด้วยอาร์กิวเมนต์ <option>-help</option>

en: Both generate and configure steps are launched with a single menu item: <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Configure Project…</guimenuitem></menuchoice>. This menu item brings a dialog where you can choose: <placeholder-1/>
th: ทั้งขั้นตอนสร้างและตั้งค่าโครงการ จะเรียกด้วยเมนูเดียวกัน คือ <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ตั้งค่าโครงการ...</guimenuitem></menuchoice> ซึ่งจะเปิดกล่องโต้ตอบที่คุณสามารถเลือกสิ่งต่อไปนี้ได้: <placeholder-1/>

en: Select a configuration
th: เลือกค่าตั้ง

en: If you have created different configurations, you can select which one is active by selecting it in <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Select Configuration</guimenuitem></menuchoice>.
th: ถ้าคุณได้สร้างค่าตั้งแบบต่าง ๆ ไว้ คุณสามารถเลือกแบบที่จะใช้งานได้ในเมนู <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>เลือกค่าตั้ง</guimenuitem></menuchoice>

en: Clean a configuration
th: ล้างค่าตั้ง

en: To clean the project and leave it in a state that requires rerunning the configure step, choose <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Remove Configuration</guimenuitem></menuchoice>. It run <command>make distclean</command> and deletes more files than <guimenuitem>Clean Project</guimenuitem>. In other words, it leaves the project as though it has just been extracted from a distribution tarball. Note that it does not remove the configuration directory itself; you can do that yourself if you like.
th: การเก็บกวาดโครงการให้กลับสู่สถานะที่ต้องทำขั้นตอนตั้งค่าใหม่ ทำได้โดยเลือก <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ลบค่าตั้ง</guimenuitem></menuchoice> จะเป็นการเรียก <command>make distclean</command> ซึ่งจะลบแฟ้มเกลี้ยงกว่า <guimenuitem>เก็บกวาดโครงการ</guimenuitem> พูดง่าย ๆ ก็คือ ทำให้โครงการเสมือนกับเพิ่งแตกจากแฟ้มทาร์มาใหม่ ๆ สังเกตว่านี่ยังไม่ได้ลบไดเรกทอรีที่ตั้งค่าไว้ คุณสามารถลบเองได้ถ้าต้องการ

en: Compile and Build
th: คอมไพล์และประกอบสร้าง

en: Compiling a file
th: การคอมไพล์แฟ้ม

en: In a project, individual source files can be compiled separately into objects (<filename>*.o</filename> files). Although you do not have to worry about these object files, sometimes it is handy to compile a file first (for example, to make sure there are no syntax errors). Building a whole project can take a lot of time, especially in the case of larger and more complex applications. Therefore, you will probably go through a series of edit-compile iterations while developing a project.
th: ในโครงการหนึ่ง ๆ แฟ้มซอร์สแต่ละแฟ้มสามารถแยกคอมไพล์เป็นแฟ้มอ็อบเจกต์  (<filename>*.o</filename>) ได้ แม้ว่าคุณไม่จำเป็นต้องกังวลเกี่ยวกับแฟ้มอ็อบเจกต์เหล่านี้ แต่บางครั้งการคอมไพล์แฟ้มเดียวก่อนก็สะดวกกว่า  (เช่น เพื่อให้แน่ใจว่าไม่มีข้อผิดพลาดทางไวยากรณ์) การประกอบสร้างโครงการทั้งโครงการอาจกินเวลานาน โดยเฉพาะในกรณีของโปรแกรมที่มีขนาดใหญ่และซับซ้อนมาก ๆ ดังนั้น คุณจึงอาจใช้วิธีวนแก้ไขและคอมไพล์ไปเรื่อย ๆ ในระหว่างพัฒนาโครงการ

en: To compile a file, choose the menu item <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Compile</guimenuitem></menuchoice> or press <keycap>F11</keycap>. This will compile the active file.
th: การคอมไพล์แฟ้ม ทำได้โดยเลือกรายการเมนู <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>คอมไพล์</guimenuitem></menuchoice> หรือกด <keycap>F11</keycap> ซึ่งจะคอมไพล์แฟ้มที่ทำงานอยู่

en: Building an executable
th: การประกอบสร้างแฟ้มโปรแกรม

en: <application>Anjuta</application> has no separate link command, simply because it is not necessary. The build process will compile all source files and link them together along with the necessary libraries. The build command will not recompile those files which are already up-to-date (this is called the <emphasis>dependency check</emphasis>). If you have already compiled all files individually, then the only thing the build step performs is the link. If you have already built the project and no dependent file has been modified, even the link stage will be skipped.
th: <application>แอนจูตา</application> ไม่มีคำสั่งลิงก์แยกต่างหาก ด้วยเหตุผลง่าย ๆ คือ มันไม่จำเป็น กระบวนการประกอบสร้างจะคอมไพล์แฟ้มซอร์สทั้งหมด แล้วลิงก์เข้าด้วยกันพร้อมกับไลบรารีที่จำเป็น โดยคำสั่งประกอบสร้างจะไม่คอมไพล์แฟ้มที่อ็อบเจกต์ทันแฟ้มซอร์สอยู่แล้วซ้ำอีก (เรียกว่า <emphasis>การตรวจสอบความขึ้นต่อกัน</emphasis>) ถ้าคุณได้แยกคอมไพล์แฟ้มทั้งหมดเรียบร้อยแล้ว สิ่งที่ขั้นตอนประกอบสร้างจะทำก็คือการลิงก์เท่านั้น และถ้าคุณได้ประกอบสร้างโครงการไปเรียบร้อยแล้ว โดยไม่ได้มีการเปลี่ยนแปลงแฟ้มซอร์สใด ๆ แม้แต่ขั้นตอนการลิงก์ก็จะถูกข้ามไป

en: So how exactly does the dependency check influence project development? If you have modified a file, then all of the source files that depend on the modified file are recompiled. All files (not just the object files and executable) in the project are checked for these dependencies during the build process. If it is found that a particular file is dependent on some other file which has been modified, then that file will be regenerated.
th: แล้วการตรวจสอบความขึ้นต่อกันดังกล่าวมีผลจริง ๆ อย่างไรกับการพัฒนาโครงการ? ถ้าคุณเปลี่ยนแปลงแฟ้มใดแฟ้มหนึ่ง แฟ้มซอร์สทั้งหมดที่ขึ้นอยู่กับแฟ้มที่แก้ไขนั้นก็จะถูกคอมไพล์ใหม่ แฟ้มทั้งหมดในโครงการ (ไม่ใช่เฉพาะแฟ้มอ็อบเจกต์และแฟ้มโปรแกรม) จะถูกตรวจสอบความขึ้นต่อกันเหล่านี้ในระหว่างกระบวนการประกอบสร้าง ถ้าพบว่าแฟ้มใดขึ้นอยู่กับแฟ้มอื่นที่มีการเปลี่ยนแปลง แฟ้มนั้นก็จะถูกสร้างใหม่

en: Can you imagine how your life (as a programmer) would be if the dependency check were not there? If you cannot answer just yet, then you will find out when you start developing big projects!
th: คุณพอจะนึกภาพออกไหม ว่าชีวิตของคุณ (ในฐานะโปรแกรมเมอร์) จะเป็นอย่างไร ถ้าไม่มีการตรวจสอบความขึ้นต่อกันนี้? ถ้าคุณยังไม่สามารถตอบได้ในตอนนี้ คุณจะพบเองเมื่อคุณเริ่มพัฒนาโครงการขนาดใหญ่!

en: <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Build</guimenuitem></menuchoice> will build all files in the directory of the currently active file.
th: <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ประกอบสร้าง</guimenuitem></menuchoice> จะประกอบสร้างทุกแฟ้มในไดเรกทอรีของแฟ้มปัจจุบันที่ทำงานอยู่

en: <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Build Project</guimenuitem></menuchoice> will build the whole project — all subdirectories are built recursively.
th: <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ประกอบสร้างโครงการ</guimenuitem></menuchoice> จะประกอบสร้างทั้งโครงการ — ทุกไดเรกทอรีย่อยจะถูกประกอบสร้างแบบ recursive

en: Other operations
th: การกระทำอื่น ๆ

en: Creating a distribution package
th: การสร้างแพกเกจสำหรับการแจกจ่าย

en: To build a tarball distribution of the project choose <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Build Tarball</guimenuitem></menuchoice>. This will create a tarball (<filename>*.tar.gz</filename>) and put it in the top-level project directory. Copy the file to a safe place for distribution.
th: การประกอบสร้างแฟ้มทาร์สำหรับแจกจ่ายของโครงการ ทำได้โดยเลือก <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ประกอบสร้างแฟ้มทาร์</guimenuitem></menuchoice> จะเป็นการสร้างแฟ้มทาร์ (<filename>*.tar.gz</filename>) ไว้ในไดเรกทอรีระดับบนสุดของโครงการ จากนั้นก็คัดลอกแฟ้มไปยังที่ที่ปลอดภัยสำหรับการแจกจ่าย

en: Installing a project
th: การติดตั้งโครงการ

en: Choosing the menu item <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Install</guimenuitem></menuchoice> will install the generated application on your system.
th: เลือกเมนู <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>ติดตั้ง</guimenuitem></menuchoice> จะติดตั้งโปรแกรมที่สร้างขึ้นลงในระบบของคุณ

en: System-wide installation
th: การติดตั้งเพื่อใช้ทั้งระบบ

en: You must be logged in as root to perform a system-wide install. Also note that for a GNOME application to use the pixmaps in the project, it must be installed as a system-wide application. Otherwise, when the application is executed in your project, there will be lots of "pixmap not found" errors. You can configure Anjuta to use <command>sudo</command> or <command>su</command> before installing the project in the build preferences.
th: คุณต้องเข้าสู่ระบบเป็น root เพื่อจะติดตั้งแบบใช้ทั้งระบบ สังเกตด้วยว่าการที่โปรแกรม GNOME จะใช้ pixmap ในโครงการได้ จะต้องติดตั้งเป็นโปรแกรมแบบใช้ทั้งระบบ มิฉะนั้น เมื่อโปรแกรมทำงานในโครงการของคุณ จะมีข้อผิดพลาด "ไม่พบ pixmap" จำนวนมาก คุณสามารถตั้งค่าแอนจูตาให้ใช้ <command>sudo</command> หรือ <command>su</command> ก่อนติดตั้งโครงการได้ในการปรับแต่งค่าการประกอบสร้าง

en: Cleaning
th: การเก็บกวาด

en: This deletes all of the files generated by the build process, including all object files (<filename>*.o</filename> files) and the executable(s). It can be applied on one directory or the whole project.
th: นี่เป็นการลบแฟ้มทั้งหมดที่สร้างขึ้นจากกระบวนการประกอบสร้าง รวมถึงแฟ้มอ็อบเจกต์ทั้งหมด (<filename>*.o</filename>) และแฟ้มโปรแกรม สามารถเก็บกวาดเพียงไดเรกทอรีเดียวหรือทั้งโครงการก็ได้

en: Choose the menu item <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Clean Project</guimenuitem></menuchoice> to clean all project files.
th: เลือกเมนู <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>เก็บกวาดโครงการ</guimenuitem></menuchoice> ถ้าต้องการเก็บกวาดแฟ้มทั้งหมดในโครงการ

en: Choose the menu item <menuchoice><guisubmenu>Build</guisubmenu><guimenuitem>Clean</guimenuitem></menuchoice> to clean only the directory of the current active file.
th: เลือกเมนู <menuchoice><guisubmenu>ประกอบสร้าง</guisubmenu><guimenuitem>เก็บกวาด</guimenuitem></menuchoice> ถ้าต้องการเก็บกวาดเฉพาะไดเรกทอรีของแฟ้มปัจจุบันที่ทำงานอยู่เท่านั้น

en: Debugging
th: การดีบั๊ก

en: To debug is human. To fix it is divine...
th: ดีบั๊กเป็นมนุษย์ แก้บั๊กเป็นเทพเจ้า...

en: Well, the <emphasis>human</emphasis> part is what this section is about. The <emphasis>divine</emphasis> part is up to you!
th: ส่วนของ <emphasis>มนุษย์</emphasis> คือสิ่งที่หัวข้อนี้พูดถึง แต่ส่วนของ <emphasis>เทพเจ้า</emphasis> นั้นขึ้นอยู่กับคุณ!

en: When a program does not behave in the way it is supposed to, we say the program contains a <emphasis>bug</emphasis>. A bug is not a compilation error — compilation errors are relatively easy to clear, because the compiler tells you where the problems are. By contrast, bugs are errors that happen during program execution and they can be hard (sometimes very hard!) to detect.
th: เมื่อโปรแกรมไม่ประพฤติตามที่ควรจะเป็น เราเรียกว่าโปรแกรมนั้นมี <emphasis>บั๊ก</emphasis> บั๊กไม่ใช่ข้อผิดพลาดของการคอมไพล์ — ข้อผิดพลาดของการคอมไพล์นั้นแก้ง่าย เพราะคอมไพเลอร์จะบอกจุดที่เป็นปัญหาให้ แต่สำหรับบั๊กแล้ว เป็นข้อผิดพลาดที่เกิดขึ้นระหว่างการทำงานของโปรแกรม และตรวจพบได้ยาก (บางครั้งยากมาก!)

en: Any program that you think is bug-free is never completely bug-free. All we can try to do is to reduce the number of bugs contained in the program. The process of removing bugs is known as <emphasis>debugging</emphasis>, and the tool that is used for debugging is called the <emphasis>debugger</emphasis>. <application>Anjuta</application> provides a very user-friendly and powerful debugging environment (actually, a GUI wrapper over <application>gdb</application>, a powerful command line debugging tool and standard on Linux).
th: โปรแกรมใดก็ตามที่คุณคิดว่าปลอดบั๊กจะไม่เคยปลอดบั๊กอย่างแท้จริง สิ่งที่เราทำได้คือลดจำนวนบั๊กที่มีอยู่ในโปรแกรม กระบวนการเอาบั๊กออกเรียกกันว่า <emphasis>การดีบั๊ก</emphasis> และเครื่องมือที่ใช้สำหรับการดีบั๊กก็เรียกว่า <emphasis>โปรแกรมดีบั๊ก</emphasis> <application>แอนจูตา</application> มีสภาพแวดล้อมสำหรับการดีบั๊กที่เป็นมิตรกับผู้ใช้และมีประสิทธิภาพ (ที่จริงแล้ว ก็เป็น GUI ครอบบน <application>gdb</application> ซึ่งเป็นเครื่องมือดีบั๊กแบบบรรทัดคำสั่งที่ทรงพลัง และเป็นมาตรฐานในลินุกซ์)

en: A debugger tracks and traces the execution of the program and provides various views of information needed to study the execution of the program.
th: โปรแกรมดีบั๊กจะติดตามและแกะรอยการทำงานของโปรแกรม และให้มุมมองต่าง ๆ ของข้อมูลที่จำเป็นในการศึกษาการทำงานของโปรแกรม

en: Start and stop
th: การเริ่มต้นและหยุด

en: Running an executable
th: การเรียกทำงานแฟ้มโปรแกรม

en: Attaching to a process
th: การแนบกับโพรเซส

en: Almost every feature of Anjuta is provided by a plugin. If you do not see the menus described here. It is probably because the debugger plugin is not loaded. Go in <menuchoice><guisubmenu>Edit</guisubmenu><guimenuitem>Preferences</guimenuitem><guimenuitem>General</guimenuitem><guimenuitem>Installed plugins</guimenuitem></menuchoice> and check that the debugger plugin is loaded. It is an user activatable plugin, so loaded or unloaded on request.
th: ความสามารถเกือบทุกอย่างของแอนจูตาจะมาในรูปของปลั๊กอิน ถ้าคุณไม่เห็นเมนูที่อธิบายที่นี่ ก็อาจเป็นเพราะยังไม่ได้โหลดปลั๊กอินโปรแกรมดีบั๊ก ไปที่เมนู <menuchoice><guisubmenu>แก้ไข</guisubmenu><guimenuitem>ปรับแต่ง</guimenuitem><guimenuitem>ทั่วไป</guimenuitem><guimenuitem>ปลั๊กอินที่ติดตั้งไว้</guimenuitem></menuchoice> แล้วตรวจสอบว่าปลั๊กอินของโปรแกรมดีบั๊กถูกโหลดอยู่หรือไม่ ปลั๊กอินนี้เป็นปลั๊กอินที่ให้ผู้ใช้เลือกเปิดใช้ได้ จึงโหลดหรือถอนได้ตามสั่ง

en: The debugger is always started with a program loaded. There are two ways to do this: <placeholder-1/><placeholder-2/>
th: โปรแกรมดีบั๊กจะเริ่มทำงานโดยมีโปรแกรมโหลดอยู่ด้วยเสมอ ซึ่งทำได้สองวิธี: <placeholder-1/><placeholder-2/>

en: Running a program with or without the debugger uses the same menu: select <menuchoice><guisubmenu>Run</guisubmenu><guimenuitem>Run Program</guimenuitem></menuchoice> to run a program without the debugger and <menuchoice><guisubmenu>Run</guisubmenu><guimenuitem>Debug Program</guimenuitem></menuchoice> to run it with the debugger.
th: การเรียกโปรแกรมทำงานโดยมีหรือไม่มีโปรแกรมดีบั๊กก็ใช้เมนูเดียวกัน คือ เลือกเมนู <menuchoice><guisubmenu>เรียกทำงาน</guisubmenu><guimenuitem>เรียกทำงาน</guimenuitem></menuchoice> เพื่อเรียกโปรแกรมโดยไม่มีโปรแกรมดีบั๊ก และ <menuchoice><guisubmenu>เรียกทำงาน</guisubmenu><guimenuitem>ดีบั๊กโปรแกรม</guimenuitem></menuchoice> เพื่อเรียกโปรแกรมพร้อมโปรแกรมดีบั๊ก

en: In order to better use the debugger, it is strongly recommended that you build your program with debugging information (-g for gcc) and no optimization (-O0 for gcc). This can be done by selecting the Debug configuration before building the program for the first time.
th: เพื่อการใช้โปรแกรมดีบั๊กที่ดีกว่า ขอแนะนำให้คุณประกอบสร้างโปรแกรมของคุณแบบมีข้อมูลดีบั๊ก (-g สำหรับ gcc) และไม่ต้องปรับประสิทธิภาพ (-O0 สำหรับ gcc) ซึ่งสามารถทำได้โดยเลือกค่าตั้งแบบดีบั๊กก่อนประกอบสร้างโปรแกรมครั้งแรก

en: The program that you want to debug
th: โปรแกรมที่คุณต้องการดีบั๊ก

en: The drop-down menu of the target drop-down combination box is pre-filled with all executables of the current project. But you can alternatively select another executable which is not part of the project. The debugger also accepts libtool executables; these are scripts generated by libtool which wrap real executables.
th: เมนูดึงลงของกล่องคอมโบกำหนดโปรแกรมเป้าหมาย จะถูกเติมล่วงหน้าด้วยแฟ้มโปรแกรมทั้งหมดของโครงการปัจจุบัน แต่คุณสามารถเลือกแฟ้มโปรแกรมอื่นที่ไม่ได้อยู่ในโครงการได้ โปรแกรมดีบั๊กยังรับแฟ้มโปรแกรมของ libtool ซึ่งเป็นสคริปต์ที่สร้างโดย libtool เพื่อครอบแฟ้มโปรแกรมจริงอีกด้วย

en: The command-line parameters
th: พารามิเตอร์บรรทัดคำสั่ง

en: The working directory
th: ไดเรกทอรีทำงาน

en: Environment variables
th: ตัวแปรสภาพแวดล้อม

en: Environment variables displayed in light gray are the current environment variables. You can add, modify or remove environment variables here.
th: ตัวแปรสภาพแวดล้อมที่แสดงเป็นสีเทาอ่อนคือตัวแปรสภาพแวดล้อมปัจจุบัน คุณสามารถเพิ่ม แก้ไข หรือลบตัวแปรสภาพแวดล้อมต่าง ๆ ได้ที่นี่

en: To debug Anjuta using Anjuta, you can use a different theme to change the look of the instance being debugged; for example, you could add "GTK2_RC_FILES=/usr/share/themes/Crux/gtk-2.0/gtkrc".
th: ถ้าต้องการดีบั๊กแอนจูตาด้วยแอนจูตา คุณสามารถใช้ชุดตกแต่งอื่นเพื่อเปลี่ยนหน้าตาของโปรแกรมตัวที่จะดีบั๊กได้ ตัวอย่างเช่น คุณสามารถเพิ่ม "GTK2_RC_FILES=usr/share/themes/Crux/gtk-2.0/gtkrc" ได้

en: Whether the program should run in a terminal or not. If so, the Anjuta terminal plugin is used.
th: เลือกว่าโปรแกรมจะทำงานในเทอร์มินัลหรือไม่ ถ้าใช่ ก็จะใช้ปลั๊กอินเทอร์มินัลของแอนจูตา

en: You can select which program to run and its environment using <menuchoice><guisubmenu>Run</guisubmenu><guimenuitem>Program Parameters…</guimenuitem></menuchoice>. You can choose: <placeholder-1/>
th: คุณสามารถเลือกโปรแกรมที่จะเรียกทำงาน พร้อมกับกำหนดตัวแปรสภาพแวดล้อมได้ โดยใช้เมนู <menuchoice><guisubmenu>เรียกทำงาน</guisubmenu><guimenuitem>พารามิเตอร์ของโปรแกรม…</guimenuitem></menuchoice> คุณสามารถเลือกสิ่งต่อไปนี้ได้: <placeholder-1/>

en: Attaching to a Process
th: การแนบกับโพรเซส

en: It is also possible to attach to a running process and debug it by choosing the menu item <menuchoice><guisubmenu>Run</guisubmenu><guimenuitem>Debug Process …</guimenuitem></menuchoice>. A list of all processes running on the system will appear.
th: เป็นไปได้ที่คุณจะแนบเข้ากับโพรเซสที่กำลังทำงานอยู่และดีบั๊กตัวโพรเซสนั้น โดยเลือกเมนู <menuchoice><guisubmenu>เรียกทำงาน</guisubmenu><guimenuitem>ดีบั๊กโพรเซส…</guimenuitem></menuchoice> จะปรากฏรายชื่อทุกโพรเซสที่กำลังทำงานอยู่ในระบบ

en: Attach to Process dialog
th: กล่องโต้ตอบ "แนบกับโพรเซส"

en: Select the process to attach to and click <guibutton>OK</guibutton> to start the debugger, attach to the selected process and stop it.
th: เลือกโพรเซสที่จะแนบแล้วคลิก <guibutton>แนบ</guibutton> เพื่อเริ่มโปรแกรมดีบั๊ก แนบกับโพรเซสที่เลือก และหยุดโพรเซส

en: It is currently not possible to load symbol information for an attached process. Symbols should be included in the process.
th: ขณะนี้ ยังไม่สามารถโหลดข้อมูลสัญลักษณ์สำหรับโพรเซสที่แนบได้ โพรเซสควรจะมีข้อมูลสัญลักษณ์มาด้วยในตัว

en: Stopping the Debugger
th: การหยุดโปรแกรมดีบั๊ก

en: Choose the menu item <menuchoice><guisubmenu>Run</guisubmenu><guimenuitem>Stop Debugger</guimenuitem></menuchoice> to stop the debugger. This will kill the program which is being debugged. If the debugger has been attached to a running process, the debugger will just detach from it without killing it. You will get a confirmation box if a program is currently attached or running.
th: เลือกเมนู <menuchoice><guisubmenu>เรียกทำงาน</guisubmenu><guimenuitem>หยุดโปรแกรมดีบั๊ก</guimenuitem></menuchoice> ถ้าต้องการหยุดโปรแกรมดีบั๊ก จะเป็นการฆ่าโปรแกรมที่กำลังดีบั๊กอยู่ แต่ถ้าโปรแกรมดีบั๊กกำลังแนบกับโพรเซสที่ทำงานอยู่ ก็จะแค่แยกตัวออกจากโพรเซสโดยไม่ฆ่าโพรเซส คุณจะพบกล่องโต้ตอบยืนยันถ้ามีโปรแกรมกำลังแนบอยู่หรือกำลังทำงานอยู่

en: Adding source directories
th: การเพิ่มไดเรกทอรีซอร์ส

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Add source paths…</guimenuitem></menuchoice> to display a dialog box allowing you to add and remove source directories.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>เพิ่มพาธของซอร์ส…</guimenuitem></ menuchoice> เพื่อเปิดกล่องโต้ตอบที่ให้คุณเพิ่มและลบไดเรกทอรีซอร์ส

en: Most executables include full file paths, so defining the directories where are the source files is normally not useful. But some executables include only file names without paths; in this case, the debugger will search for source files in all these directories. The order of directories can be important if several files have the same name, so you can change it using the <guibutton>Up</guibutton> and <guibutton>Down</guibutton> buttons. The directory list is sent to the debugger when it is started. After changing it, you need to restart the debugger to cause it to use the new list.
th: แฟ้มโปรแกรมส่วนใหญ่จะเก็บข้อมูลพาธเต็มของแฟ้มซอร์สอยู่แล้ว การกำหนดไดเรกทอรีที่เก็บแฟ้มซอร์สจึงมักไม่มีประโยชน์ แต่แฟ้มโปรแกรมบางแฟ้มก็เก็บเฉพาะชื่อแฟ้มโดยไม่มีพาธ ในกรณีนี้ โปรแกรมดีบั๊กจะค้นหาแฟ้มซอร์สในไดเรกทอรีเหล่านี้ ลำดับของไดเรกทอรีจะมีความสำคัญถ้ามีหลายแฟ้มที่ชื่อซ้ำกัน ดังนั้นคุณสามารถเปลี่ยนลำดับได้ โดยใช้ปุ่ม <guibutton>ขึ้น</guibutton> และ <guibutton>ลง</guibutton> รายชื่อไดเรกทอรีจะถูกส่งไปยังโปรแกรมดีบั๊กเมื่อเริ่มทำงาน หลังจากเปลี่ยนค่าแล้ว คุณจึงต้องเริ่มโปรแกรมดีบั๊กใหม่ เพื่อให้โปรแกรมเริ่มใช้รายชื่อใหม่

en: Execution
th: การเรียกโปรแกรมทำงาน

en: Execution of a program in the debugger can be finely controlled. The program can be executed in single steps, or allowed to continue until it encounters a breakpoint. Executing like this is essential for tracking program behavior. Like a video editing session, the program can be executed in <emphasis>slow motion</emphasis> with the ability to go forward, pause, stop, and so on. You cannot go backward yet though.
th: คุณสามารถควบคุมการทำงานของโปรแกรมในโปรแกรมดีบั๊กได้อย่างละเอียด คุณสามารถสั่งให้โปรแกรมทำงานทีละขั้น หรือให้ทำงานต่อไปจนกว่าจะถึงจุดพัก การสั่งทำงานแบบนี้เป็นสิ่งจำเป็นสำหรับการติดตามการทำงานของโปรแกรม ซึ่งก็คล้ายกับการแก้ไขวีดิทัศน์ โปรแกรมสามารถทำงานแบบ <emphasis>ภาพช้า</emphasis> พร้อมกับสามารถเดินหน้า พัก หยุด และอื่น ๆ ได้ เพียงแต่คุณยังไม่สามารถเดินย้อนกลับได้เท่านั้น

en: The methods those can be used to execute a program in the debugger are described in the following sections. These commands are available only when the program has already been started.
th: วิธีการที่สามารถใช้สั่งโปรแกรมทำงานในโปรแกรมดีบั๊ก จะได้อธิบายต่อไปในหัวข้อต่อไปนี้ คำสั่งเหล่านี้จะใช้ได้เฉพาะเมื่อโปรแกรมได้เริ่มต้นทำงานไปแล้วเท่านั้น

en: Single stepping (step in)
th: ทำหนึ่งขั้น (ก้าวเข้า)

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Step In</guimenuitem></menuchoice> or click on the <guibutton>Step In</guibutton> icon in the <interface>Debug toolbar</interface> to step into a program.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ก้าวเข้า</guimenuitem></menuchoice> หรือคลิกที่ไอคอน <guibutton>ก้าวเข้า</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface> ถ้าต้องการก้าวหนึ่งขั้นเข้าไปในโปรแกรม

en: Single stepping executes only one statement of the program (from the place where it has stopped) and then returns control. If the statement that is executed contains one or more functions, the debugger tries to step inside the functions (in the sequence in which the functions are executed). Once the statement is executed and control is passed back, you can study your program's state.
th: การทำงานทีละขั้นจะทำงานเพียงถ้อยแถลงเดียวของโปรแกรมเท่านั้น (นับจากที่ที่มันถูกหยุด) แล้วคืนการควบคุมกลับมา ถ้าถ้อยแถลงที่ทำงานนั้นมีฟังก์ชันตั้งแต่หนึ่งฟังก์ชันขึ้นไป โปรแกรมดีบั๊กจะพยายามก้าวเข้าไปในฟังก์ชันเหล่านั้นตามลำดับ และเมื่อทำงานถ้อยแถลงเสร็จและการควบคุมถูกคืนกลับมา คุณก็สามารถตรวจสอบสถานะของโปรแกรมของคุณได้

en: If the <interface>Disassembly window</interface> has the focus when this command is selected, it executes only one assembler instruction.
th: ถ้า <interface>หน้าต่างถอดแยกภาษาแอสเซมบลี</interface> ได้โฟกัสอยู่ขณะที่สั่งคำสั่งนี้ โปรแกรมดีบั๊กก็จะทำงานเพียงคำสั่งแอสเซมบลีคำสั่งเดียว

en: Single stepping (step over)
th: ทำหนึ่งขั้น (ก้าวข้าม)

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Step Over</guimenuitem></menuchoice> or click on the <guibutton>Step Over</guibutton> icon in the <interface>Debug toolbar</interface> to step over statements in a program.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ก้าวข้าม</guimenuitem></menuchoice> หรือคลิกที่ไอคอน <guibutton>ก้าวข้าม</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface> ถ้าต้องการทำข้ามถ้อยแถลงในโปรแกรมไปหนึ่งขั้น

en: <emphasis>Step over</emphasis> is similar to <emphasis>step in</emphasis>, except that it does not step inside any function in the statement being executed. The statement will be executed in one go.
th: การ <emphasis>ก้าวข้าม</emphasis> ก็คล้ายกับการ <emphasis>ก้าวเข้า</emphasis> ยกเว้นว่าจะไม่มีการก้าวเข้าไปในในฟังก์ชันใด ๆ ในถ้อยแถลงที่ทำงาน ถ้อยแถลงทั้งหมดจะถูกเรียกทำงานในคราวเดียว

en: If the <interface>Disassembly window</interface> has the focus when this command is selected, it executes one assembler instruction but does not stop inside if this instruction is a call to a subroutine.
th: ถ้า <interface>หน้าต่างถอดแยกภาษาแอสเซมบลี</interface> ได้โฟกัสอยู่ขณะที่สั่งคำสั่งนี้ โปรแกรมดีบั๊กก็จะทำงานคำสั่งแอสเซมบลีคำสั่งเดียว แต่จะไม่มีการหยุดอยู่ข้างในถ้าคำสั่งนั้นเป็นการเรียกรูทีนย่อย

en: If a dynamic library is loaded during the step, the program will not stop at the end of the step. But it will run until it finds a breakpoint or you stop it.
th: ถ้ามีการโหลดไลบรารีแบบไดนามิกในระหว่างการก้าว โปรแกรมจะไม่หยุดเมื่อจบก้าว แต่จะทำงานต่อไปจนกว่าจะพบจุดพักหรือเมื่อคุณสั่งหยุด

en: Single stepping (step out)
th: ทำหนึ่งขั้น (ก้าวออก)

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Step Out</guimenuitem></menuchoice> or click on the <guibutton>Step Out</guibutton> icon in the <interface>Debug toolbar</interface> to step out in a program.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ก้าวออก</guimenuitem></menuchoice> หรือคลิกที่ไอคอน <guibutton>ก้าวออก</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface> ถ้าต้องการก้าวออกหนึ่งขั้นในโปรแกรม

en: <emphasis>Step out</emphasis> will execute the current function until it returns. The program will be stopped once it exits from the function. Step out is not really single stepping, because it does not only execute a single statement — it executes the whole function until that function returns to the calling function.
th: การ <emphasis>ก้าวออก</emphasis> จะทำงานฟังก์ชันปัจจุบันจนกว่าจะกลับออกมา และโปรแกรมจะหยุดเมื่อออกจากฟังก์ชัน การก้าวออกไม่ได้เป็นการทำขั้นเดียวจริง ๆ เพราะไม่ได้ทำงานเพียงถ้อยแถลงเดียว — แต่จะทำทั้งฟังก์ชันจนกว่าฟังก์ชันจะกลับคืนไปสู่ฟังก์ชันที่เรียกมา

en: Run/Continue
th: เรียกทำงาน/ทำต่อไป

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Run/Continue</guimenuitem></menuchoice> or click on the <guibutton>Run/Continue</guibutton> icon in the <interface>Debug toolbar</interface> to continue the execution of a program.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>เรียกทำงาน/ทำต่อไป</guimenuitem></menuchoice> หรือคลิกที่ไอคอน <guibutton>เรียกทำงาน/ทำต่อไป</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface> ถ้าต้องการให้โปรแกรมทำงานต่อไป

en: This option continues the execution of the program until a breakpoint is encountered, or the program exits.
th: ตัวเลือกนี้จะดำเนินการทำงานของโปรแกรมต่อไป จนกว่าจะพบจุดพักหรือจบโปรแกรม

en: Run To
th: ทำถึงเคอร์เซอร์

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Run to Cursor</guimenuitem></menuchoice> or click on the <guibutton>Run to Cursor</guibutton> icon in the <interface>Debug toolbar</interface> to run until the line at the cursor is reached.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ทำถึงเคอร์เซอร์</guimenuitem></menuchoice> หรือคลิกที่ไอคอน <guibutton>ทำถึงเคอร์เซอร์</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface> ถ้าต้องการให้โปรแกรมทำงานจนถึงบรรทัดที่เคอร์เซอร์วางอยู่

en: This option continues the execution of the program until the line or the address (if the <interface>Disassembly window</interface> has the focus) at the cursor is reached.
th: ตัวเลือกนี้จะดำเนินการทำงานของโปรแกรมต่อไป จนกว่าจะถึงบรรทัดหรือแอดเดรส (ถ้า <interface>หน้าต่างถอดแยกภาษาแอสเซมบลี</interface> ได้โฟกัสอยู่) ที่เคอร์เซอร์วางอยู่

en: Stop Program
th: หยุดโปรแกรม

en: While the program is running and has control, no debugging tasks can be performed. To obtain control while the program is running, choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Pause Program</guimenuitem></menuchoice> or click on the <guibutton>Pause Program</guibutton> icon in the <interface>Debug toolbar</interface>. This will interrupt the program and return control to the debugger.
th: ในระหว่างที่โปรแกรมกำลังทำงานและได้การควบคุมอยู่ จะไม่สามารถทำกิจกรรมดีบั๊กใด ๆ ได้ หากต้องการขอการควบคุมในขณะที่โปรแกรมทำงานอยู่ ก็ทำได้โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>พักโปรแกรม</guimenuitem></menuchoice> หรือคลิกที่ไอคอน <guibutton>พักโปรแกรม</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface> จะเป็นการขัดจังหวะโปรแกรมและคืนการควบคุมให้กับโปรแกรมดีบั๊ก

en: Breakpoints
th: จุดพัก

en: When debugging a program, it is useful to be able to stop the execution of the program at a particular point, so that the state of the program can be examined at that location. Breakpoints enable this to happen. Breakpoints can be set at different locations in a source file and then the program is allowed to run. When a breakpoint is encountered, the execution of the program is suspended, enabling expressions to be evaluated, variables to be inspected, the stack trace to be studied, and so on.
th: เมื่อดีบั๊กโปรแกรม จะเป็นประโยชน์ถ้าสามารถหยุดการทำงานของโปรแกรมที่จุดใด ๆ ที่ต้องการ เพื่อที่จะสามารถตรวจสอบสถานะของโปรแกรมได้ที่ตำแหน่งนั้นได้ จุดพักจะช่วยให้ทำเช่นนั้นได้ คุณสามารถกำหนดจุดพักที่ตำแหน่งต่าง ๆ ในแฟ้มซอร์ส แล้วก็สั่งโปรแกรมทำงานได้ เมื่อโปรแกรมพบจุดพัก การทำงานของโปรแกรมจะถูกหยุดไว้ ทำให้สามารถคำนวณค่านิพจน์ต่าง ๆ ตรวจดูตัวแปรต่าง ๆ ตรวจสอบร่องรอยสแต็ก และอื่น ๆ ได้

en: Listing Breakpoints
th: การแสดงรายชื่อจุดพัก

en: The <interface>Breakpoint list window</interface> can be opened by choosing <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Breakpoints</guimenuitem></menuchoice>
th: <interface>หน้าต่างรายชื่อจุดพัก</interface> สามารถเปิดได้ไดยเลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>จุดพัก</guimenuitem></menuchoice>

en: Breakpoint view
th: มุมมองจุดพัก

en: Location
th: ตำแหน่ง

en: This is the position of the breakpoint in the source file. When the breakpoint is set by the debugger, you can get additional information such as the function containing the breakpoint.
th: เป็นตำแหน่งของจุดพักในแฟ้มซอร์ส เมื่อจุดพักถูกกำหนดโดยโปรแกรมดีบั๊ก คุณสามารถขอดูข้อมูลเพิ่มเติมได้ เช่น ฟังก์ชันที่เป็นที่อยู่ของจุดพัก

en: Address
th: แอดเดรส

en: This field is filled with the address of the breakpoint when it is set by the debugger.
th: เขตข้อมูลนี้จะถูกเติมด้วยแอดเดรสของจุดพักเมื่อมีการกำหนดโดยโปรแกรมดีบั๊ก

en: Type
th: ชนิด

en: This always displays "breakpoint". It will be used in a future release supporting different kinds of breakpoints.
th: จะแสดงเป็น "จุดพัก" เสมอ เขตข้อมูลนี้จะใช้ในรุ่นที่จะออกมาในอนาคต ที่รองรับการใช้จุดพักประเภทต่าง ๆ

en: Condition
th: เงื่อนไข

en: This is the breakpoint condition. It is empty if no condition is defined.
th: เป็นเงื่อนไขของจุดพัก จะว่างเปล่าถ้าไม่มีการกำหนดเงื่อนไข

en: Pass count
th: จำนวนครั้งที่ผ่าน

en: When the debugger is not running, this column displays the pass count of the breakpoint, or zero if it is not defined.
th: เมื่อโปรแกรมดีบั๊กไม่ได้ทำงาน คอลัมน์นี้จะแสดงจำนวนครั้งที่ผ่านจุดพัก หรือแสดงค่าศูนย์ถ้าไม่ได้กำหนด

en: When the debugger is running, if the pass count is zero, this column displays the number of times this breakpoint has been triggered. If the pass count is not zero, both numbers are displayed. The pass count is the second number.
th: เมื่อโปรแกรมดีบั๊กทำงาน ถ้าจำนวนครั้งที่ผ่านเป็นศูนย์ คอลัมน์นี้จะแสดงจำนวนครั้งที่จุดพักนี้ถูกกระตุ้น ถ้าจำนวนครั้งที่ผ่านไม่เป็นศูนย์ จะแสดงตัวเลขทั้งสองค่า จำนวนครั้งที่ผ่านจะเป็นค่าที่สอง

en: State
th: สถานะ

en: Pending: the breakpoint is not set in your program.
th: Pending: จุดพักไม่ได้กำหนดในโปรแกรมของคุณ

en: Permanent: the breakpoint is set (its id number in given inside parentheses).
th: Permanent: จุดพักถูกกำหนดแล้ว (โดยระบุเลข id ในวงเล็บ)

en: Temporary: the breakpoint is set but will be deleted if reached.
th: Temporary: จุดพักถูกกำหนดไว้ แต่จะถูกลบถ้ามาถึง

en: This is the state of the breakpoint. It may be <placeholder-1/>
th: คือสถานะของจุดพัก ค่าที่เป็นไปได้คือ <placeholder-1/>

en: The view has the following columns: <placeholder-1/>
th: มุมมองนี้มีคอลัมน์ต่อไปนี้: <placeholder-1/>

en: All breakpoints are kept across Anjuta sessions even if they correspond to a non-existing location. In this case their states are set as pending. The interface tries to set them each time the program is started or a new dynamic library is loaded.
th: จุดพักทั้งหมดจะถูกเก็บข้ามวาระการใช้งานของแอนจูตา แม้ว่าจะตรงกับที่ตำแหน่งไม่มีอยู่ก็ตาม ในกรณีนี้ สถานะของจุดพักจะถูกกำหนดเป็น pending (ค้าง) ส่วนติดต่อผู้ใช้จะพยายามกำหนดค่าให้ทุกครั้งที่มีการเรียกโปรแกรมทำงาน หรือมีการโหลดไลบรารีแบบไดนามิกตัวใหม่

en: Adding or Setting Breakpoints
th: การเพิ่มหรือตั้งค่าจุดพัก

en: Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Add Breakpoint…</guimenuitem></menuchoice> or <menuchoice><guimenuitem>Add Breakpoint…</guimenuitem></menuchoice> in the breakpoint list popup menu to open the <interface>add breakpoint</interface> dialog.
th: เลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>เพิ่มจุดพัก…</guimenuitem></menuchoice> หรือรายการ <menuchoice><guimenuitem>เพิ่มจุดพัก…</guimenuitem></menuchoice> ในเมนูรายชื่อจุดพักที่ผุดขึ้นเมื่อคลิกขวา เพื่อเปิดกล่องโต้ตอบ <interface>เพิ่มจุดพัก</interface>

en: Breakpoint add dialog
th: กล่องโต้ตอบพิ่มจุดพัก

en: Enter the location at which to set the breakpoint. It can be specified in any of the following formats:
th: ป้อนตำแหน่งที่จะกำหนดจุดพัก คุณสามารถระบุได้ในรูปแบบใด ๆ ต่อไปนี้:

en: File_name:Line_number
th: ชื่อแฟ้ม:เลขบรรทัด

en: Function_name
th: ชื่อฟังก์ชัน

en: File:Function_name
th: แฟ้ม:ชื่อฟังก์ชัน

en: The first format is obvious — the location refers to the line number <emphasis>Line_number</emphasis> in the source file <emphasis>File</emphasis>. The second format refers to the first line of the function <emphasis>Function_name</emphasis>. The third is similar to the second, except that this notation is used where there is more than one function with the name <emphasis>Function_name</emphasis> in the program. It is possible to differentiate between them by providing the <emphasis>File</emphasis>, so the notation refers to the function <emphasis>Function_name</emphasis> in the file <emphasis>File</emphasis>.
th: รูปแบบแรกนั้นชัดเจน คือเป็นตำแหน่งที่อ้างถึงเลขบรรทัด <emphasis>เลขบรรทัด</emphasis> ในแฟ้มซอร์ส <emphasis>แฟ้ม</emphasis> รูปแบบที่สองอ้างถึงบรรทัดแรกของฟังก์ชัน <emphasis>ชื่อฟังก์ชัน</emphasis> รูปแบบที่สามคล้ายกับรูปแบบที่สอง เว้นแต่ว่ารูปแบบนี้ใช้เมื่อมีฟังก์ชันในโปรแกรมมากกว่าหนึ่งฟังก์ชันที่มีชื่อเป็น <emphasis>ชื่อฟังก์ชัน</emphasis> โดยสามารถแยกความแตกต่างระหว่างฟังก์ชันดังกล่าวได้โดยระบุ <emphasis>แฟ้ม</emphasis> เพิ่ม เพื่อให้รูปแบบนี้อ้างถึงฟังก์ชัน <emphasis>ชื่อฟังก์ชัน</emphasis> ในแฟ้ม <emphasis>แฟ้ม</emphasis>

en: The <emphasis>Condition</emphasis> parameter displays a associated expression which should evaluate to a Boolean value — that is, the evaluation of the expression should result in either TRUE(1) or FALSE(0). If the final evaluation value is not a Boolean value, then it will be appropriately type cast to a Boolean.
th: พารามิเตอร์ <emphasis>เงื่อนไข</emphasis> เป็นนิพจน์ที่กำกับจุดพัก ซึ่งควรจะคำนวณแล้วได้ค่าเป็นบูลีน — กล่าวคือ ผลการคำนวณนิพจน์ควรจะได้ผลลัพธ์เป็น TRUE(1) หรือ FALSE(0) ถ้าผลลัพธ์การคำนวณสุดท้ายไม่ใช่ค่าบูลีน ก็จะมีการคาสต์ให้เป็นบูลีนตามความเหมาะสม

en: Every time the breakpoint is encountered during your program's execution, the break condition will be evaluated. The debugger will break the execution only if the evaluation results in a TRUE value, otherwise it will continue the execution as though there had been no breakpoint.
th: ทุกครั้งที่พบจุดพักในระหว่างการทำงานของโปรแกรม เงื่อนไขการพักจะถูกคำนวณ โปรแกรมดีบั๊กจะพักการทำงานก็ต่อเมื่อผลการคำนวณค่าเป็น TRUE มิฉะนั้นก็จะทำงานต่อไปเสมือนหนึ่งไม่มีจุดพัก

en: The default value, if you leave this field blank, of <emphasis>Condition</emphasis> is TRUE. The debugger will always break the execution at the breakpoint location.
th: ถ้าคุณเว้นข้อมูลนี้ว่างไว้ ค่าปริยายของ <emphasis>เงื่อนไข</emphasis> จะเป็น TRUE โปรแกรมดีบั๊กจะพักการทำงานที่ตำแหน่งจุดพักเสมอ

en: Pass Count
th: จำนวนครั้งที่ผ่าน

en: The <emphasis>Pass count</emphasis> is an integer (unsigned) value which tells the debugger to skip the breakpoint that number of times before it is considered. <emphasis>Pass count</emphasis> has a higher priority than the <emphasis>Break condition</emphasis>. Only when the <emphasis>Pass count</emphasis> reaches zero will the debugger evaluate the <emphasis>Break condition</emphasis> (if any condition is present). If there is no condition, the debugger will break the execution once the <emphasis>Pass count</emphasis> counts down to zero.
th: <emphasis>จำนวนครั้งที่ผ่าน</emphasis> เป็นจำนวนเต็ม (ไม่มีเครื่องหมาย) ที่บอกโปรแกรมดีบั๊กให้ข้ามจุดพักเป็นจำนวนครั้งเท่านี้ก่อนที่จะพิจารณาจุดพัก <emphasis>จำนวนครั้งที่ผ่าน</emphasis> มีความสำคัญสูงกว่า <emphasis>เงื่อนไขการพัก</emphasis> โปรแกรมดีบั๊กจะประเมิน <emphasis>เงื่อนไขการพัก</emphasis> (ถ้ามี) เฉพาะเมื่อ <emphasis>จำนวนครั้งที่ผ่าน</emphasis> ถูกลดลงเป็นศูนย์เท่านั้น และถ้าไม่มีเงื่อนไข โปรแกรมดีบั๊กจะพักการทำงานทันทีที่ <emphasis>จำนวนครั้งที่ผ่าน</emphasis> เป็นศูนย์

en: The default value, if you leave this field blank, of the <emphasis>Pass count</emphasis> is zero. The breakpoint will be considered when it is first encountered.
th: ถ้าคุณเว้นข้อมูลนี้ว่างไว้ ค่าปริยายของ <emphasis>จำนวนครั้งที่ผ่าน</emphasis> จะเป็นศูนย์ จุดพักจะได้รับการพิจารณาตั้งแต่ถูกพบครั้งแรก

en: Enter the location and, optionally, the break condition and the pass count; then click <guibutton>OK</guibutton> to set the breakpoint. <placeholder-1/>
th: ป้อนตำแหน่ง และอาจป้อนเงื่อนไขการพักและจำนวนครั้งที่ผ่านด้วย แล้วคลิก <guibutton>ตกลง</guibutton> เพื่อกำหนดจุดพัก <placeholder-1/>

en: A breakpoint may also be set by selecting a line in the editor and choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Toggle Breakpoint</guimenuitem></menuchoice> in the editor context menu or the <guibutton>Toggle Breakpoint</guibutton> icon in the <interface>Debug toolbar</interface>.
th: คุณยังอาจกำหนดจุดพักได้โดยเลือกบรรทัดในเครื่องมือแก้ไขแล้วเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>สลับจุดพัก</guimenuitem></menuchoice> หรือเลือกรายการ <menuchoice><guimenuitem>สลับจุดพัก</guimenuitem></menuchoice> ในเมนูบริบทของเครื่องมือแก้ไข หรือคลิกที่ไอคอน <guibutton>สลับจุดพัก</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface>

en: Breakpoints can be added even if the debugger is not started, or in a dynamic library which is not loaded yet. But they cannot be added while a program is running under control of the debugger.
th: คุณสามารถเพิ่มจุดพักได้แม้โปรแกรมดีบั๊กจะยังไม่ได้เริ่มทำงาน หรือแม้แต่ในไลบรารีแบบไดนามิกที่ยังไม่ได้โหลด แต่คุณไม่สามารถเพิ่มจุดพักในขณะที่โปรแกรมกำลังทำงานภายใต้การควบคุมของโปรแกรมดีบั๊กได้

en: Editing Breakpoints
th: การแก้ไขจุดพัก

en: You can change the condition and the pass count by selecting the breakpoint in the breakpoint list and clicking <menuchoice><guimenuitem>Edit Breakpoint</guimenuitem></menuchoice> in the popup menu.
th: คุณสามารถเปลี่ยนเงื่อนไขและจำนวนครั้งที่ผ่านของจุดพักได้ โดยเลือกจุดพักในรายชื่อจุดพัก แล้วคลิก <menuchoice><guimenuitem>แก้ไขจุดพัก</guimenuitem></menuchoice> ในเมนูที่ผุดขึ้น

en: Edit the entries as required and click on <guibutton>OK</guibutton> to commit the changes.
th: แก้ไขรายการตามต้องการ แล้วคลิก <guibutton>ตกลง</guibutton> เพื่อกระทำการเปลี่ยนแปลง

en: Deleting Breakpoints
th: การลบจุดพัก

en: Select the breakpoint in the breakpoint list view and click on <menuchoice><guimenuitem>Remove Breakpoint</guimenuitem></menuchoice> to delete it.
th: เลือกจุดพักในช่องรายชื่อจุดพัก แล้วเลือก <menuchoice><guimenuitem>ลบจุดพัก</guimenuitem></menuchoice> จากเมนูคลิกขวา เพื่อลบจุดพัก

en: A existing breakpoint may also be deleted by selecting its line in the editor and choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Toggle Breakpoint</guimenuitem></menuchoice>, the editor context menu item <menuchoice><guimenuitem>Toggle Breakpoint</guimenuitem></menuchoice> or the <guibutton>Toggle Breakpoint</guibutton> icon in the <interface>Debug toolbar</interface>.
th: คุณยังอาจลบจุดพักที่มีอยู่ได้โดยเลือกบรรทัดของจุดพักในเครื่องมือแก้ไขแล้วเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>สลับจุดพัก</guimenuitem></menuchoice> หรือเลือก </menuchoice><guimenuitem>สลับจุดพัก</guimenuitem></menuchoice> จากเมนูคลิกขวาในเครื่องมือแก้ไข หรือคลิกที่ไอคอน <guibutton>สลับจุดพัก</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface>

en: You can remove all breakpoints by clicking on <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Remove All Breakpoints</guimenuitem></menuchoice> or on <menuchoice><guimenuitem>Remove All Breakpoints</guimenuitem></menuchoice> in the breakpoint list context menu.
th: คุณสามารถลบจุดพักทั้งหมดได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ลบจุดพักทั้งหมด</guimenuitem></menuchoice> หรือเลือก <menuchoice><guimenuitem>ลบจุดพักทั้งหมด</guimenuitem></menuchoice> ในเมนูคลิกขวาในช่องรายชื่อจุดพัก

en: Enabling or Disabling Breakpoints
th: การเปิดหรือปิดใช้งานจุดพัก

en: Click on the Enable column of the <interface>Breakpoint list window</interface> or in the context menu item <menuchoice><guimenuitem>Enable Breakpoint</guimenuitem></menuchoice> to enable or disable the selected breakpoint. The breakpoint will be enabled or disabled, depending on its current state.
th: คลิกที่คอลัมน์ "เปิดใช้งาน" ของ <interface>หน้าต่างรายชื่อจุดพัก</interface> หรือเลือกเมนูบริบท <menuchoice><guimenuitem>เปิดใช้งานจุดพัก</guimenuitem></menuchoice> เพื่อเปิดหรือปิดใช้งานจุดพักที่เลือก จุดพักจะถูกเปิดหรือปิดใช้งาน ขึ้นอยู่กับสถานะปัจจุบันของจุดพัก

en: To disable all breakpoints, click on <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Disable All Breakpoints</guimenuitem></menuchoice> or on <menuchoice><guimenuitem>Disable All Breakpoints</guimenuitem></menuchoice> in the breakpoint list context menu.
th: การปิดการใช้งานจุดพักทั้งหมด ทำได้โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ปิดการใช้งานจุดพักทั้งหมด</guimenuitem></menuchoice> หรือเลือก <menuchoice><guimenuitem>ปิดการใช้งานจุดพักทั้งหมด</guimenuitem></menuchoice> ในเมนูคลิกขวาของจุดพัก

en: Expressions
th: นิพจน์

en: Listing local variables
th: การแสดงรายชื่อตัวแปรเฉพาะที่

en: When a program is running under the control of the debugger, the <interface>Locals list window</interface> can be opened by choosing <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Locals</guimenuitem></menuchoice>.
th: เมื่อโปรแกรมทำงานภายใต้การควบคุมของโปรแกรมดีบั๊ก คุณสามารถเปิด <interface>หน้าต่างรายชื่อตัวแปรเฉพาะที่</interface> ได้โดยเลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>ตัวแปรเฉพาะที่</guimenuitem></menuchoice>

en: Local variables
th: ตัวแปรเฉพาะที่

en: Local variables of the current frame (the current function in which the program control is present) are displayed in the <interface>Locals window</interface>. During execution of the program (e.g. during single stepping), local variables will be updated. If any variable value was changed in the last debugging step, its value will be highlighted in red. Variables are presented in a tree form for easy view. <placeholder-1/>
th: ตัวแปรเฉพาะที่ของเฟรมปัจจุบัน (ฟังก์ชันปัจจุบันที่โปรแกรมทำงานอยู่) จะถูกแสดงใน <interface>หน้าต่างตัวแปรเฉพาะที่</interface> และในระหว่างที่โปรแกรมทำงาน (เช่น ระหว่างการทำทีละขั้น) ตัวแปรเฉพาะที่จะมีการปรับข้อมูลตามด้วย ถ้ามีค่าตัวแปรใดเปลี่ยนแปลงในขั้นตอนที่ดีบั๊กล่าสุด ตัวแปรนั้นก็จะถูกเน้นค่าเป็นสีแดง การแสดงตัวแปรต่าง ๆ จะอยู่ในรูปแผนภาพต้นไม้ เพื่อให้ดูได้ง่าย <placeholder-1/>

en: The value of a local variable can be modified by selecting it and clicking in the <guilabel>Value</guilabel> column.
th: ค่าของตัวแปรเฉพาะที่สามารถปรับเปลี่ยนได้ โดยเลือกตัวแปรแล้วคลิกที่คอลัมน์ <guilabel>ค่า</guilabel>

en: <application>gdb</application> is more and more often used as a back end for a graphical front end. It has been improved recently in this area. It is recommended that you use the latest version (6.6) of gdb. With older versions, gdb can crash when the front end asks for an pointer with an invalid (but unused) value.
th: <application>gdb</application> เริ่มถูกใช้เป็นแบ็กเอนด์สำหรับฟรอนต์เอนด์แบบกราฟิกมากขึ้นเรื่อย ๆ และได้รับการปรับปรุงการทำงานส่วนนี้ในรุ่นหลัง ๆ จึงขอแนะนำให้คุณใช้ gdb รุ่นล่าสุด (6.6) เนื่องจากในรุ่นเก่ากว่านั้น gdb อาจพังเมื่อฟรอนต์เอนด์ถามค่าตัวชี้ที่มีค่าไม่ถูกต้อง (แต่ไม่ได้ใช้)

en: Listing watched expressions
th: การแสดงรายชื่อนิพจน์ที่เฝ้าดู

en: Inspecting or evaluating an expression provides the result only once. To continuously monitor some variables or expressions, use <emphasis>expression watches</emphasis>.
th: การตรวจสอบหรือประมวลผลนิพจน์จะให้ผลลัพธ์เพียงครั้งเดียวเท่านั้น หากต้องการเฝ้าสังเกตตัวแปรหรือนิพจน์อย่างต่อเนื่อง ก็ทำได้โดยใช้ <emphasis>การเฝ้าดูนิพจน์</emphasis>

en: Choose the menu item <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Watches</guimenuitem></menuchoice> to display the <interface>Watches window</interface>.
th: เลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>เฝ้าดู</guimenuitem></menuchoice> เพื่อแสดง <interface>หน้าต่างเฝ้าดู</interface>

en: Adding an expression to watch
th: การเพิ่มนิพจน์ที่จะเฝ้าดู

en: Right-click on the <interface>Watches window</interface> to open the context menu. Choose the menu item <guimenuitem>Add Watch…</guimenuitem>. Alternatively, you can use <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Add Watch…</guimenuitem></menuchoice> A dialog prompting for the expression will appear. Enter the expression and click <guibutton>OK</guibutton>.
th: คลิกขวาใน <interface>หน้าต่างเฝ้าดู</interface> เพื่อเปิดเมนูบริบท แล้วเลือกรายการเมนู <guimenuitem>เพิ่มการเฝ้าดู…</guimenuitem> หรืออีกวิธีหนึ่ง คุณสามารถใช้เมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>เพิ่มการเฝ้าดู…</guimenuitem></menuchoice> ก็ได้ จะปรากฏกล่องโต้ตอบถามนิพจน์ คุณก็ป้อนนิพจน์แล้วคลิก <guibutton>ตกลง</guibutton>

en: By default watch expressions are updated automatically each time the program is stopped. This can be changed in the add watch dialog or later using the <guimenuitem>Automatic update</guimenuitem> menu item in the <interface>Watches window</interface> context menu. A watched expression can be updated manually by choosing <guimenuitem>Update Watch</guimenuitem> or <guimenuitem>Update All</guimenuitem> in the context menu.
th: โดยปกติ นิพจน์เฝ้าดูจะถูกปรับข้อมูลโดยอัตโนมัติทุกครั้งที่โปรแกรมถูกหยุด แต่พฤติกรรมนี้สามารถเปลี่ยนได้ในกล่องโต้ตอบเพิ่มการเฝ้าดู หรือเปลี่ยนในภายหลังได้โดยใช้รายการเมนู <guimenuitem>ปรับข้อมูลอัตโนมัติ</guimenuitem> ในเมนูบริบทของ <interface>หน้าต่างเฝ้าดู</interface> คุณสามารถสั่งปรับข้อมูลนิพจน์ที่เฝ้าดูด้วยมือได้ โดยเลือก <guimenuitem>ปรับข้อมูลการเฝ้าดู</guimenuitem> หรือ <guimenuitem>ปรับข้อมูลทั้งหมด</guimenuitem> ในเมนูบริบท

en: It is not necessary to have the debugger running to add a new watch expression. If the debugger is not running or the corresponding expression cannot be found, the front end will try to create the watch expression each time the program is stopped.
th: ไม่จำเป็นว่าจะต้องให้โปรแกรมดีบั๊กทำงาน จึงจะเพิ่มนิพจน์เฝ้าดูใหม่ได้ ถ้าโปรแกรมดีบั๊กไม่ได้ทำงานอยู่ หรือไม่สามารถหาค่านิพจน์ได้ ตัวฟรอนต์เอนด์จะพยายามสร้างนิพจน์เฝ้าดูให้ทุกครั้งที่โปรแกรมถูกหยุด

en: Removing a watched expression
th: การลบนิพจน์ที่เฝ้าดู

en: Right-click the watch expression that you want to remove in the <interface>Watches window</interface>, then choose the context menu item <guimenuitem>Remove</guimenuitem> to remove it.
th: คลิกขวาที่นิพจน์เฝ้าดูที่คุณต้องการลบใน <interface>หน้าต่างเฝ้าดู</interface> แล้วเลือกรายเมนู <guimenuitem>ลบการเฝ้าดู</guimenuitem> ในเมนูบริบทเพื่อลบออก

en: All watches can be removed by choosing <guimenuitem>Remove All</guimenuitem> in the context menu of the <interface>Watches window</interface>.
th: คุณสามารถลบการเฝ้าดูทั้งหมดออกได้ โดยเลือก <guimenuitem>ลบทั้งหมด</guimenuitem> ในเมนูบริบทของ <interface>หน้าต่างเฝ้าดู</interface>

en: Evaluating expressions
th: การประมวลผลนิพจน์

en: When control is returned from a program — possibly at a breakpoint — it is possible to evaluate expressions or inspect the values of variables in the program. Choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guimenuitem>Inspect/Evaluate …</guimenuitem></menuchoice>, <menuchoice><guimenuitem>Inspect/Evaluate …</guimenuitem></menuchoice> in the context menu of the editor or click the <guibutton>Inspect</guibutton> button on the <interface>Debug Toolbar</interface>.
th: เมื่อการควบคุมกลับคืนมาจากโปรแกรม — อาจจะที่จุดพัก — ก็จะสามารถประมวลผลนิพจน์หรือตรวจสอบค่าของตัวแปรในโปรแกรมได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guimenuitem>ตรวจสอบ/ประมวลผล …</guimenuitem></menuchoice> หรือเลือกรายการ <menuchoice><guimenuitem>ตรวจสอบ/ประมวลผล …</guimenuitem></menuchoice> ในเมนูบริบทของเครื่องมือแก้ไข หรือคลิกที่ปุ่ม <guibutton>ตรวจสอบ</guibutton> ใน <interface>แถบเครื่องมือดีบั๊ก</interface>

en: A window will appear showing the evaluation of the expression highlighted in the editor. You can evaluate a new expression by clicking on the <guilabel>name</guilabel> column and entering the new one.
th: จะปรากฏหน้าต่างแสดงการประมวลผลนิพจน์ที่ถูกเน้นในเครื่องมือแก้ไข คุณสามารถประมวลผลนิพจน์รายการใหม่ได้ โดยคลิกที่คอลัมน์ <guilabel>ตัวแปร</guilabel> แล้วป้อนนิพจน์ใหม่

en: You can add the expression to the list of watched expressions directly by clicking on the <guibutton>Add</guibutton> button.
th: คุณสามารถเพิ่มนิพจน์ในหน้าต่างเข้าในรายชื่อนิพจน์ที่เฝ้าดูได้โดยตรง โดยคลิกที่ปุ่ม <guibutton>เพิ่ม</guibutton>

en: Inspecting expressions in editor window
th: การตรวจสอบนิพจน์ในหน้าต่างเครื่องมือแก้ไข

en: When the debugger is active with the program stopped, you can get the value of an expression just by putting the mouse pointer over it and staying there for a short time. If the expression is already present in the <interface>Locals</interface> or <interface>Watches</interface> window, its value is displayed in a tooltip.
th: เมื่อโปรแกรมดีบั๊กทำงานโดยที่โปรแกรมถูกหยุดอยู่ คุณสามารถดูค่านิพจน์ได้โดยเพียงวางตัวชี้เมาส์แช่บนตัวนิพจน์ ภายในครู่สั้น ๆ ถ้านิพจน์แสดงอยู่แล้วในหน้าต่าง <interface>ตัวแปรเฉพาะที่</interface> หรือ <interface>เฝ้าดู</interface> ค่าของนิพจน์ก็จะปรากฏในคำแนะนำเครื่องมือ

en: This capability is currently working only for simple variables, not for structures or arrays.
th: ขณะนี้ ความสามารถนี้ใช้ได้เฉพาะกับตัวแปรง่าย ๆ เท่านั้น ยังไม่สามารถใช้กับโครงสร้างหรือแอร์เรย์ได้

en: Stack Trace
th: การแกะรอยสแต็ก

en: Stack Window
th: หน้าต่างสแต็ก

en: The <interface>stack trace window</interface> shows the contents of the program stack. It lists all functions and their arguments in the sequence they were called. There is also a number representing each call. This number is called the <emphasis>frame</emphasis>. Each call in the trace exists in a different frame. This starts from frame 0 (the last function called) and grows higher as function nesting becomes deeper.
th: <interface>หน้าต่างแกะรอยสแต็ก<interface /> แสดงเนื้อหาของสแต็กของโปรแกรม โดยจะแสดงฟังก์ชันทั้งหมดตามลำดับการเรียกพร้อมอาร์กิวเมนต์ และจะมีหมายเลขแทนการเรียกแต่ละครั้ง หมายเลขนี้เรียกว่า <emphasis>เฟรม</emphasis> การเรียกแต่ละครั้งในร่องรอยจะอยู่ในเฟรมที่ต่างกัน โดยเริ่มจากเฟรม 0 (ฟังก์ชันสุดท้ายที่ถูกเรียก) และจะเพิ่มขึ้นตามลำดับความลึกของการเรียกฟังก์ชันซ้อน

en: Choose the menu item <menuchoice><guisubmenu>View </guisubmenu><guimenuitem>Stack</guimenuitem></menuchoice> to open the stack trace for the program being debugged.
th: เลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>สแต็ก</guimenuitem></menuchoice> ถ้าต้องการเปิดดูร่องรอยสแต็กของโปรแกรมที่กำลังดีบั๊ก

en: Stack trace window
th: หน้าต่างแกะรอยสแต็ก

en: A small arrow points to the currently selected frame in the stack trace. By default, this will be frame 0, the last function called. All evaluation and inspection of expressions or variables will be with reference to this selected frame. The scope of variables or expressions being evaluated will be limited to the selected frame only. The same applies for new expressions only in the watch.
th: ลูกศรขนาดเล็กจะชี้ไปยังเฟรมปัจจุบันที่เลือกอยู่ในร่องรอยสแต็ก ซึ่งโดยค่าปริยายจะเป็นเฟรม 0 คือฟังก์ชันสุดท้ายที่เรียก การประมวลผลและตรวจสอบค่านิพจน์หรือตัวแปรจะอ้างอิงจากเฟรมที่เลือกนี้ ขอบเขตของตัวแปรหรือนิพจน์ที่นำมาประมวลผลก็จะถูกจำกัดอยู่เฉพาะในเฟรมที่เลือกเท่านั้น รวมทั้งกับนิพจน์ใหม่ในช่องเฝ้าดูด้วย

en: Setting the current frame
th: การกำหนดเฟรมปัจจุบัน

en: Double-clicking on any frame in the stack trace sets that frame as the currently selected frame. The arrow will point to the frame, indicating that it has been selected as the current frame. Alternatively, open the context menu by right-clicking on the <interface>Stack trace window</interface>, and choose the menu item <guimenuitem>Set current frame</guimenuitem> to set the frame.
th: การดับเบิลคลิกที่เฟรมใด ๆ ในร่องรอยสแต็ก จะเป็นการกำหนดให้เฟรมนั้นเป็นเฟรมปัจจุบันที่เลือก ลูกศรจะชี้ไปที่เฟรมนั้น เพื่อระบุว่าเป็นเฟรมปัจจุบันที่ถูกเลือก อีกวิธีหนึ่งคือ เปิดเมนูบริบทโดยคลิกขวาบน <interface>หน้าต่างแกะรอยสแต็ก</interface> และเลือกรายการเมนู <guimenuitem>กำหนดเฟรมปัจจุบัน</guimenuitem> เพื่อกำหนดเฟรม

en: Changing the stack frame changes the <interface>Locals window</interface> content, but not the <interface>Watches window</interface> as each expression is evaluated in the frame used when it was defined.
th: การเปลี่ยนเฟรมในสแต็กจะเปลี่ยนเนื้อหา <interface>หน้าต่างตัวแปรเฉพาะที่</interface> แต่จะไม่เปลี่ยน <interface>หน้าต่างเฝ้าดู</interface> เพราะนิพจน์แต่ละนิพจน์จะถูกประมวลผลในเฟรมที่ใช้ในขณะที่ตัวนิพจน์ถูกกำหนด

en: Thread
th: เธรด

en: Thread Window
th: หน้าต่างเธรด

en: The <interface>Thread window</interface> shows all threads used by the program and indicates the current thread. Choose the menu item <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Thread</guimenuitem></menuchoice> to open this window.
th: <interface>หน้าต่างเธรด</interface> จะแสดงเธรดทั้งหมดที่โปรแกรมใช้ โดยบ่งบอกเธรดปัจจุบันไว้ด้วย เลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>เธรด</guimenuitem></menuchoice> ถ้าต้องการเปิดหน้าต่างนี้

en: A small arrow points to the current thread. When the program is stopped, the current thread is the thread which has been interrupted. Each thread has its own stack frame, so changing the current thread changes the current stack frame.
th: จะมีลูกศรขนาดเล็กชี้ที่เธรดปัจจุบัน เมื่อโปรแกรมหยุด เธรดปัจจุบันจะเป็นเธรดที่ถูกขัดจังหวะ แต่ละเธรดจะมีเฟรมของสแต็กเป็นของตัวเอง ดังนั้น การเปลี่ยนเธรดปัจจุบันจึงเป็นการเปลี่ยนเฟรมปัจจุบันของสแต็กด้วย

en: Setting the current thread
th: การกำหนดเธรดปัจจุบัน

en: Double-clicking on any thread in the thread list will set that thread as the currently selected thread. The arrow will point to the thread, indicating that it has been selected as the current thread. Alternatively, open the context menu by right-clicking on the <interface>Thread list window</interface>, and choose the menu item <guimenuitem>Set current thread</guimenuitem> to set the thread.
th: การดับเบิลคลิกที่เธรดใดในรายชื่อเธรด จะเป็นการกำหนดเธรดนั้นให้เป็นเธรดปัจจุบันที่เลือก ลูกศรจะชี้ที่เธรดเพื่อระบุว่าถูกเลือกเป็นเธรดปัจจุบันอยู่ หรืออีกวิธีหนึ่ง เปิดเมนูบริบทโดยคลิกขวาใน <interface>หน้าต่างรายชื่อเธรด</interface> แล้วเลือกรายการเมนู <guimenuitem>กำหนดเธรดปัจจุบัน</guimenuitem> เพื่อกำหนดเธรด

en: Changing the thread changes the value of CPU registers and the current stack frame, so the <interface>Locals window</interface> changes too.
th: การเปลี่ยนเธรดจะเป็นการเปลี่ยนค่าเรจิสเตอร์ของ CPU และเฟรมปัจจุบันของสแต็ก ดังนั้น <interface>หน้าต่างตัวแปรเฉพาะที่</interface> ก็จะเปลี่ยนตามด้วย

en: Register window
th: หน้าต่างเรจิสเตอร์

en: It is possible to examine the contents of the internal registers of the CPU (microprocessor). Choose the menu item <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Registers</guimenuitem></menuchoice>. A window listing all available registers in the microprocessor and their corresponding contents will appear.
th: คุณสามารถตรวจสอบค่าของเรจิสเตอร์ภายในของ CPU (ไมโครโพรเซสเซอร์) ได้ โดยเลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>เรจิสเตอร์</guimenuitem></menuchoice> จะปรากฏหน้าต่างรายชื่อเรจิสเตอร์ทั้งหมดในไมโครโพรเซสเซอร์ พร้อมค่าที่เก็บอยู่

en: If any register value was changed in the last debugging step, its value will be highlighted in red. It is possible to change one register value by selecting it and clicking in the <guilabel>value</guilabel> column.
th: ถ้ามีค่าเรจิสเตอร์ใดถูกเปลี่ยนในขั้นตอนการดีบั๊กล่าสุด ก็จะเน้นค่าเป็นสีแดง คุณสามารถเปลี่ยนค่าเรจิสเตอร์ได้ โดยเลือกและคลิกที่คอลัมน์ <guilabel>ค่า</guilabel>

en: Memory window
th: หน้าต่างหน่วยความจำ

en: Choose the menu item <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Memory </guimenuitem></menuchoice> to open the <interface>memory window</interface> for the program being debugged. This window shows the contents of all memory.
th: เลือกเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>หน่วยความจำ</guimenuitem></menuchoice> เพื่อเปิด <interface>หน้าต่างหน่วยความจำ</interface> สำหรับโปรแกรมที่กำลังดีบั๊ก หน้าต่างนี้จะแสดงเนื้อหาของหน่วยความจำทั้งหมด

en: The first column displays memory addresses in hexadecimal, the second displays memory contents in hexadecimal and the last column shows memory contents in ASCII.
th: คอลัมน์แรกจะแสดงแอดเดรสของหน่วยความจำเป็นฐานสิบหก คอลัมน์ที่สองแสดงข้อมูลของหน่วยความจำเป็นฐานสิบหก และคอลัมน์สุดท้ายแสดงข้อมูลของหน่วยความจำเป็นอักขระแอสกี

en: The addressing space of even a 32-bit microprocessor is quite large (4 gigabytes), so it is very difficult to go to a particular address with the scrollbar. But you can click on the right mouse button to display a context menu and select <menuchoice><guimenuitem>Goto address</guimenuitem></menuchoice> to get a small edit box where you can enter an address in hexadecimal.
th: พื้นที่แอดเดรสแม้แต่ของไมโครโพรเซสเซอร์ 32 บิตก็มีขนาดค่อนข้างใหญ่ (4 กิกะไบต์) จึงเป็นเรื่องยากที่จะไปที่แอดเดรสที่ต้องการด้วยแถบเลื่อนหน้าต่าง แต่คุณสามารถคลิกที่ปุ่มเมาส์ขวาเพื่อแสดงเมนูบริบท แล้วเลือก <menuchoice><guimenuitem>ไปยังแอดเดรส</guimenuitem></menuchoice> เพื่อเปิดช่องแก้ไขเล็ก ๆ ที่คุณสามารถป้อนแอดเดรสฐานสิบหกได้

en: Disassembly window
th: หน้าต่างถอดแยกภาษาแอสเซมบลี

en: Choose the menu item <menuchoice><guisubmenu>View</guisubmenu><guimenuitem>Disassembly </guimenuitem></menuchoice> to open the <interface>disassembly window</interface> for the program being debugged.
th: เลือกรายการเมนู <menuchoice><guisubmenu>มุมมอง</guisubmenu><guimenuitem>ถอดแยกภาษาแอสเซมบลี</guimenuitem></menuchoice> เพื่อเปิด <interface>หน้าต่างถอดแยกภาษาแอสเซมบลี</interface> สำหรับโปรแกรมที่กำลังดีบั๊ก

en: The first column displays addresses in hexadecimal. In the second column, you can have a label starting at the beginning of the line and ending with a colon or a assembly-language instruction indented by 4 space characters.
th: คอลัมน์แรกแสดงแอดเดรสเป็นฐานสิบหก ในคอลัมน์ที่สอง อาจเป็นป้ายชื่อเริ่มต้นที่ต้นบรรทัดและปิดด้วยเครื่องหมายทวิภาค (:) หรือเป็นคำสั่งภาษาแอสเซมบลีที่ร่นเข้าไปเป็นระยะช่องว่าง 4 ตัวอักษร

en: Again, as the addressing space is very large, the scrollbar is quite useless. You can click on the right mouse button to display the context menu and select <menuchoice><guimenuitem>Goto address</guimenuitem></menuchoice> to get a small edit box where you can enter an address in hexadecimal. The position in the disassembly window will be changed to the program counter value when the program is stopped.
th: และอีกเช่นกัน เนื่องจากพื้นที่แอดเดรสมีขนาดใหญ่มาก แถบเลื่อนหน้าต่างจึงแทบไม่มีประโยชน์เลย คุณสามารถคลิกที่ปุ่มเมาส์ขวาเพื่อแสดงเมนูบริบท แล้วเลือก <menuchoice><guimenuitem>ไปยังแอดเดรส</guimenuitem></menuchoice> เพื่อเปิดช่องแก้ไขเล็ก ๆ ที่คุณสามารถป้อนแอดเดรสฐานสิบหกได้ตำแหน่งในหน้าต่างถอดแยกแอสเซมบลีจะเปลี่ยนไปเป็นค่าของตัวชี้คำสั่งของโปรแกรมเมื่อโปรแกรมหยุด

en: Others
th: อื่น ๆ

en: There are a number of other debugger features used less frequently and not very well integrated in the new front end but which are still working.
th: ยังมีความสามารถอื่น ๆ จำนวนหนึ่งของโปรแกรมดีบั๊กที่ใช้ไม่บ่อย และยังไม่เชื่อมรวมกับฟรอนต์เอนด์ใหม่ดีนัก แต่ก็ยังใช้การได้

en: Dynamically loaded Libraries
th: ไลบรารีที่โหลดแบบไดนามิก

en: To obtain a list of the dynamic libraries used by a program, choose the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Info</guisubmenu><guimenuitem>Shared Libraries</guimenuitem></menuchoice>. This will bring open a window which will list all shared libraries the program has loaded and their locations in memory. It also shows whether each library's symbol table is loaded or not (Yes/No).
th: การเรียกดูรายชื่อของไลบรารีแบบไดนามิกที่โปรแกรมใช้ ทำได้โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ไลบรารีใช้ร่วม</guimenuitem></menuchoice> จะเปิดหน้าต่างซึ่งจะแสดงรายชื่อไลบรารีใช้ร่วมทั้งหมดที่โปรแกรมโหลดขึ้นมา พร้อมกับตำแหน่งในหน่วยความจำ และยังแสดงให้ดูด้วยว่าตารางสัญลักษณ์ของแต่ละไลบรารีถูกโหลดด้วยหรือไม่

en: Shared Libraries window
th: หน้าต่างไลบรารีใช้ร่วม

en: Kernel Signals
th: สัญญาณเคอร์เนล

en: Kernel signals are a way of signaling between processes in Linux. The list of signals available for a program can be displayed by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Info</guisubmenu><guimenuitem>Kernel Signals</guimenuitem></menuchoice>. A window will open which lists all signals available in the system along with a brief description of each signal.
th: สัญญาณเคอร์เนลเป็นวิธีหนึ่งในการส่งสัญญาณระหว่างโพรเซสในลินุกซ์ คุณสามารถแสดงรายชื่อของสัญญาณที่ใช้ได้กับโปรแกรมหนึ่ง ๆ ได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>สัญญาณเคอร์เนล</guimenuitem></menuchoice> จะเปิดหน้าต่างแสดงรายชื่อสัญญาณทั้งหมดที่มีอยู่ในระบบ พร้อมด้วยคำอธิบายสั้น ๆ ของแต่ละสัญญาณ

en: Kernel Signals window
th: หน้าต่างสัญญาณเคอร์เนล

en: There are three columns which specify what to do when a signal is received:
th: มีสามคอลัมน์ที่ระบุว่าจะทำอย่างไรเมื่อได้รับสัญญาณ:

en: <emphasis>Stop</emphasis> — this tells the debugger whether to stop the program execution (and return control) when the program receives this signal.
th: <emphasis>หยุด</emphasis> — คอลัมน์นี้บอกโปรแกรมดีบั๊กว่าจะหยุดการทำงานของโปรแกรม (และคืนการควบคุม) หรือไม่ เมื่อโปรแกรมได้รับสัญญาณนี้

en: <emphasis>Print</emphasis> — this tells the debugger whether to display the received signal.
th: <emphasis>พิมพ์</emphasis> — คอลัมน์นี้บอกโปรแกรมดีบั๊กว่าจะแสดงสัญญาณที่ได้รับหรือไม่

en: <emphasis>Pass</emphasis> — this tells the debugger whether to pass the signal to the program.
th: <emphasis>ผ่าน</emphasis> — คอลัมน์นี้บอกโปรแกรมดีบั๊กว่าจะผ่านสัญญาณไปยังโปรแกรมหรือไม่

en: The context menu that is displayed when you click on the right mouse button has all its items disabled because the corresponding functions are not implemented yet.
th: เมนูบริบทที่จะแสดงเมื่อคุณคลิกที่ปุ่มเมาส์ขวาจะปิดใช้รายการทั้งหมดไว้ เพราะยังไม่ได้ทำฟังก์ชันที่เกี่ยวข้อง

en: Information about used files
th: ข้อมูลเกี่ยวกับแฟ้มที่ใช้

en: You can get some information about the files used by the debugged program by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Information</guisubmenu><guimenuitem>Target files</guimenuitem></menuchoice>. A window will open displaying this information.
th: คุณสามารถขอดูข้อมูลเกี่ยวกับแฟ้มที่โปรแกรมที่ดีบั๊กอยู่เปิดใช้งานได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ข้อมูลแฟ้มปลายทาง</guimenuitem></menuchoice> จะเป็นการเปิดหน้าต่างแสดงข้อมูลดังกล่าว

en: Information about debugged program
th: ข้อมูลเกี่ยวกับโปรแกรมที่ดีบั๊ก

en: You can get some information about the debugged program by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Information</guisubmenu><guimenuitem>Program</guimenuitem></menuchoice>. A window will open displaying this information.
th: คุณสามารถขอดูข้อมูลเกี่ยวกับโปรแกรมที่กำลังดีบั๊กอยู่ได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ข้อมูลโปรแกรม</guimenuitem></menuchoice> จะเป็นการเปิดหน้าต่างแสดงข้อมูลดังกล่าว

en: Information about kernel structure
th: ข้อมูลเกี่ยวกับข้อมูลโครงสร้างของเคอร์เนล

en: You can get some information about kernel data for the current process by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Information</guisubmenu><guimenuitem>Kernel user struct</guimenuitem></menuchoice>. A window will open displaying this information.
th: คุณสามารถขอดูข้อมูลเกี่ยวกับข้อมูลเคอร์เนลสำหรับโพรเซสปัจจุบันได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ข้อมูล User Struct ของเคอร์เนล</guimenuitem></menuchoice> จะเป็นการเปิดหน้าต่างแสดงข้อมูลดังกล่าว

en: Information about global variables
th: ข้อมูลเกี่ยวกับตัวแปรโกลบอล

en: You can list all global variables by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Information</guisubmenu><guimenuitem>Info Global Variable</guimenuitem></menuchoice>. A window will open listing all global variables.
th: คุณสามารถแสดงรายชื่อตัวแปรโกลบอลทั้งหมดได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ข้อมูลตัวแปรโกลบอล</guimenuitem></menuchoice> จะเป็นการเปิดหน้าต่างแสดงรายชื่อตัวแปรโกลบอลทั้งหมด

en: Information about the current frame
th: ข้อมูลเกี่ยวกับเฟรมปัจจุบัน

en: You can obtain information about the currently selected frame by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Information</guisubmenu><guimenuitem>Info Current Frame</guimenuitem></menuchoice>. A window will open describing the current frame.
th: คุณสามารถขอดูข้อมูลเกี่ยวกับเฟรมที่เลือกอยู่ในปัจจุบันได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ข้อมูลเฟรมปัจจุบัน</guimenuitem></menuchoice> จะเป็นการเปิดหน้าต่างบรรยายข้อมูลเฟรมปัจจุบัน

en: Information about the current function arguments
th: ข้อมูลเกี่ยวกับอาร์กิวเมนต์ของฟังก์ชันปัจจุบัน

en: You can obtain information about the arguments of the current function by choosing the menu item <menuchoice><guisubmenu>Debug</guisubmenu><guisubmenu>Information</guisubmenu><guimenuitem>Arguments</guimenuitem></menuchoice>. A window will open describing the arguments.
th: คุณสามารถขอดูข้อมูลเกี่ยวกับอาร์กิวเมนต์ของฟังก์ชันปัจจุบันได้ โดยเลือกเมนู <menuchoice><guisubmenu>ดีบั๊ก</guisubmenu><guisubmenu>ข้อมูล</guisubmenu><guimenuitem>ข้อมูลอาร์กิวเมนต์ฟังก์ชัน</guimenuitem></menuchoice> จะเป็นการเปิดหน้าต่างบรรยายข้อมูลอาร์กิวเมนต์

en: User command
th: คำสั่งผู้ใช้

en: To send directly a command to the back end choose the menu item <menuchoice><guimenu>Debug</guimenu><guimenuitem>Debugger command</guimenuitem></menuchoice>. This will bring a small dialog where you can enter commands that will be send to the debugger when you press <keycap>Return</keycap>.
th: การส่งคำสั่งไปยังแบ็กเอนด์ของการดีบั๊กโดยตรง ทำได้โดยเลือกเมนู <menuchoice><guimenu>ดีบั๊ก</guimenu><guimenuitem>คำสั่งโปรแกรมดีบั๊ก</guimenuitem></menuchoice> จะเป็นการเปิดกล่องโต้ตอบเล็ก ๆ ที่คุณสามารถป้อนคำสั่งที่จะส่งไปยังโปรแกรมดีบั๊กเมื่อคุณกด <keycap>Enter</keycap>

en: The front end sends this command directly to the back end without performing any checks. By example if you set a breakpoint like this, it will not appear in the <interface>breakpoint list window</interface>. It is better to avoid using this command unless you know exactly what you are doing.
th: ฟรอนต์เอนด์จะส่งคำสั่งนี้ไปยังแบ็กเอนด์โดยตรงโดยไม่มีการตรวจสอบใด ๆ ตัวอย่างหนึ่งคือ ถ้าคุณกำหนดจุดพักด้วยวิธีนี้ จุดพักก็จะไม่ปรากฏใน <interface>หน้าต่างจุดพัก</interface> คุณจึงควรหลีกเลี่ยงการใช้คำสั่งนี้ นอกจากคุณจะรู้จริง ๆ ว่าสิ่งที่คุณทำคืออะไร

en: Glade Interface Designer
th: เครื่องมือออกแบบส่วนติดต่อ Glade

en: Quick start
th: เริ่มต้นอย่างเร็ว

en: You should have a project containing Glade file opened;
th: คุณควรจะมีโครงการที่มีแฟ้ม Glade เปิดไว้

en: Unlike original Glade designer, Anjuta plugin uses double click for creating handlers for default signal. You can perform a click on widgets (e.g. switch current tab in a GtkNotebook) by keeping "Windows" or "Super" key pressed;
th: ไม่เหมือนกับเครื่องมือออกแบบ Glade ต้นฉบับ ปลั๊กอินแอนจูตาจะใช้ดับเบิลคลิกสำหรับสร้าง handlers สำหรับสัญญาณปริยาย คุณสามารถกระทำการคลิกที่วิดเจ็ต (เช่น สลับแท็บปัจจุบันใน GtkNotebook) ได้ โดยกดปุ่ม "Windows" หรือ "Super" ค้างไว้

en: Open <menuchoice><guimenuitem>Preferences</guimenuitem><guimenuitem>Glade GUI Designer</guimenuitem></menuchoice> and check the three topmost flags <guilabel>Insert handler on edit</guilabel>, <guilabel>Separated designer layout</guilabel> and <guilabel>Automatically add resources</guilabel>;
th: เปิด <menuchoice><guimenuitem>ปรับแต่ง</guimenuitem><guimenuitem>เครื่องมือออกแบบ GUI Glade</guimenuitem></menuchoice> และกาเลือกสามแฟล็กบนสุด <guilabel>แทรก handler เมื่อแก้ไข</guilabel>, <guilabel>จัดวางเครื่องมือออกแบบแบบแยก</guilabel> และ <guilabel>เพิ่มทรัพยากรโดยอัตโนมัติ</guilabel>

en: Check <menuchoice><guimenuitem>View</guimenuitem><guimenuitem>Designer</guimenuitem></menuchoice> flag and move this window to a better place;
th: กาเลือกแฟล็ก <menuchoice><guimenuitem>มุมมอง</guimenuitem><guimenuitem>เครื่องมือออกแบบ</guimenuitem></menuchoice> และย้ายหน้าต่างนี้ไปที่ตำแหน่งที่เหมาะสม

en: Switch to a Glade file in the design area and to the source code file that should contain callbacks for the Glade file, then press <menuchoice><guimenuitem>Glade</guimenuitem><guimenuitem>Associate last designer and editor</guimenuitem></menuchoice>;
th: สลับไปที่แฟ้ม Glade ในพื้นที่ออกแบบและแฟ้มซอร์สที่จะเก็บ callback สำหรับแฟ้ม Glade นั้น แล้วเลือก <menuchoice> <guimenuitem>Glade</guimenuitem><guimenuitem>เชื่อมโยงแฟ้มล่าสุดในเครื่องมือออกและเครื่องมือแก้ไขเข้าด้วยกัน</guimenuitem></menuchoice>

en: Optionally select a target for image and other resources in the project manager and press <guilabel>Set as default resource target</guilabel> in the context menu.
th: คุณอาจจะเลือกเป้าหมายสำหรับรูปภาพและทรัพยากรอื่น ๆ ในเครื่องมือจัดการโครงการและเลือก <guilabel>กำหนดเป็นเป้าหมายทรัพยากรปริยาย</guilabel> ในเมนูบริบท

en: If you don't want to read all this boring manual, here is few steps to get all things ready for use: <placeholder-1/>
th: ถ้าคุณไม่ต้องการอ่านคู่มือที่น่าเบื่อทั้งหมดนี้ นี่คือขั้นตอนที่จะทำให้ทุกอย่างพร้อมสำหรับการใช้: <placeholder-1/>

en: Glade general usage questions
th: คำถามทั่วไปเกี่ยวกับการใช้ Glade

en: Glade plugin mostly copies functionality of standalone Glade designer, but there are some special features. The four windows of the Glade desinger are design area, palette, widgets inspector and property editor. They have the same purpose as in the standalone designer, so please consult <ulink type="help" url="ghelp:glade">Glade Interface Designer Manual</ulink> for their description. An extra functionality allows you to use infrastructure of Anjuta more effectively and is described here.
th: ปลั๊กอิน Glade แทบจะคัดลอกหน้าที่ต่าง ๆ ของเครื่องมือออกแบบ Glade แบบแยกทำงานเดี่ยวมา แต่ก็มีความสามารถพิเศษเพิ่มเติมบางประการ หน้าต่างทั้งสี่ของเครื่องมือออกแบบ Glade คือ พื้นที่ออกแบบ กล่องเครื่องมือ เครื่องมือตรวจสอบวิดเจ็ต และเครื่องมือแก้ไขคุณสมบัติ ต่างมีวัตถุประสงค์การใช้งานเดียวกันกับในเครื่องมือออกแบบแบบแยกทำงานเดี่ยว ดังนั้น กรุณาอ่านคำอธิบายได้จาก <ulink type="help" url="ghelp:glade">คู่มือเครื่องมือออกแบบส่วนติดต่อ Glade</ulink> มีความสามารถพิเศษเพิ่มเติมอย่างหนึ่ง ที่ช่วยให้คุณสามารถใช้โครงสร้างพื้นฐานของแอนจูตาได้อย่างมีประสิทธิภาพมากขึ้น ซึ่งจะอธิบายไว้ในที่นี้

en: Editor and designer association
th: การเชื่อมโยงเครื่องมือแก้ไขกับเครื่องมือออกแบบ

en: You can associate text editor and Glade designer so you will easily switch between them and automatically insert handler stubs for newly entered handlers. You can associate more then one editor to a designer. The most recent editor or associated with the current toplevel widget will be used. There are two ways of associating editor and designer. The first way is using associations dialog. The second way is to choose designer and editor document in any order and then press <menuchoice><guimenuitem>Glade</guimenuitem><guimenuitem>Associate last designer and editor</guimenuitem></menuchoice> menu item.
th: คุณสามารถเชื่อมโยงแฟ้มในเครื่องมือแก้ไขข้อความกับแฟ้มในเครื่องมือออกแบบ Glade เข้าด้วยกันได้ เพื่อที่คุณจะสามารถสลับไปมาระหว่างเครื่องมือทั้งสอง และแทรกเค้าโครงเนื้อหาสำหรับ handler ที่สร้างใหม่ได้โดยอัตโนมัติ คุณสามารถเชื่อมโยงแฟ้มเครื่องมือแก้ไขมากกว่าหนึ่งรายการต่อแฟ้มเครื่องมือออกแบบหนึ่งรายการได้ โดยจะใช้แฟ้มในเครื่องมือแก้ไขล่าสุดหรือที่เชื่อมโยงกับวิดเจ็ตระดับบนสุดปัจจุบัน มีสองวิธีที่จะเชื่อมโยงแฟ้มในเครื่องมือแก้ไขกับแฟ้มในเครื่องมือออกแบบ วิธีแรกคือใช้กล่องโต้ตอบเชื่อมโยง วิธีที่สองคือเลือกแฟ้มในเครื่องมือออกแบบและในเครื่องมือแก้ไขในลำดับใดก่อนหลังก็ได้ แล้วเลือกเมนู <menuchoice><guimenuitem>Glade</guimenuitem><guimenuitem>เชื่อมโยงแฟ้มล่าสุดในเครื่องมือออกและเครื่องมือแก้ไขเข้าด้วยกัน</guimenuitem></menuchoice>

en: Associations dialog
th: กล่องโต้ตอบการเชื่อมโยง

en: Spec regexp
th: regexp พิเศษ

en: Shortened from "special regular expression". Used for defining a custom position for inserting stubs.
th: ย่อมาจาก "นิพจน์เรกิวลาร์พิเศษ" ใช้สำหรับกำหนดตำแหน่งที่กำหนดเองสำหรับแทรกเค้าโครง

en: Widget name
th: ชื่อวิดเจ็ต

en: The name of the toplevel widget this assoctiation belongs to.
th: ชื่อของวิดเจ็ตระดับบนสุดที่เป็นเจ้าของการเชื่อมโยงนี้

en: Position type
th: ชนิดของตำแหน่ง

en: Describes a position at which a handler stub will be inserted. <guilabel>After begin</guilabel> means after special mark (which may be entered in the <guilabel>Spec regexp</guilabel> entry) and <guilabel>before end</guilabel> means before special end mark. Default begin mark is /* window_name callbacks */ and default end mark is /* end of window_name callbacks */. window_name may be ommited.
th: บรรยายตำแหน่งที่จะแทรกเค้าโครงของ handler <guilabel>หลังจุดเริ่มต้น</guilabel> หมายถึงแทรกหลังเครื่องหมายพิเศษ (ซึ่งอาจจะป้อนในช่อง <guilabel>regexp พิเศษ</guilabel>) และ <guilabel>ก่อนท้ายสุด</guilabel> หมายถึงก่อนเครื่องหมายสิ้นสุดพิเศษ ค่าโดยปริยายของเครื่องหมายเริ่มต้นจะเป็น /* window_name callbacks */ และของเครื่องหมายสิ้นสุดจะเป็น /* end of window_name callbacks */ โดยอาจละ window_name ได้

en: Allows you to create and manager associations. To create an association select designer and editor in the comboboxes and press <guibutton>Associate</guibutton>. You can also select the document by switching to it in document manager or windows list in the main menu. The list in the middle of the dialog shows existing associations. A couple of controls below are intended for editing association properties. Here is their description: <placeholder-1/>
th: ช่วยให้คุณสามารถสร้างและจัดการการเชื่อมโยงได้ การสร้างการเชื่อมโยง ทำได้โดยเลือกแฟ้มเครื่องมือแก้ไขและแฟ้มเครื่องมือออกแบบในกล่องคอมโบ แล้วกดปุ่ม <guibutton>เชื่อมโยง</guibutton> คุณยังสามารถเลือกเอกสารได้โดยเปลี่ยนไปที่เอกสารที่ต้องการในเครื่องมือจัดการเอกสาร หรือในรายชื่อหน้าต่างในเมนูหลัก รายชื่อตรงกลางของกล่องโต้ตอบจะแสดงการเชื่อมโยงที่มีอยู่ ส่วนเครื่องมือควบคุมด้านล่างสองสามอย่างนั้น ใช้สำหรับแก้ไขคุณสมบัติของการเชื่อมโยง โดยมีคำอธิบายดังนี้: <placeholder-1/>

en: Default signal
th: สัญญาณปริยาย

en: Double click on a widget in the design area will create a new handler for default signal using a predefined template for its naming. For example, the default signal is "clicked" for button, "toggled" for check box, etc. If <guilabel>Insert handler on edit</guilabel> option is enabled then a new handler stub will be inserted to the position which depends on <guilabel>Position type</guilabel> setting.
th: การดับเบิลคลิกที่วิดเจ็ตในพื้นที่ออกแบบจะเป็นการสร้าง handler ใหม่สำหรับสัญญาณปริยาย โดยตั้งชื่อด้วยแม่แบบที่กำหนดไว้ล่วงหน้า ตัวอย่างเช่น สัญญาณปริยายของปุ่มคือ "clicked", ของกล่องกาคือ "toggled " ฯลฯ ถ้าเปิดใช้ตัวเลือก <guilabel>แทรก handler เมื่อแก้ไข</guilabel> แล้ว เค้าโครงของ handler ใหม่ก็จะถูกแทรกที่ตำแหน่งตามที่กำหนดโดยค่า <guilabel>ชนิดของตำแหน่ง</guilabel>

en: Inserting a stub
th: การแทรกเค้าโครง

en: One of the most valuable goal of <application>Anjuta</application> and <application>Glade</application> integration is automatical creating of handler stubs, so you will not need to do a lot of routine work for that, it will be done automatically.
th: หนึ่งในเป้าหมายที่มีค่าที่สุดของการเชื่อมรวม <application>แอนจูตา</application> กับ <application>Glade</application> ก็คือการสร้างเค้าโครงของ handler โดยอัตโนมัติ เพื่อที่คุณจะไม่ต้องทำงานซ้ำซากมากมาย มันจะทำโดยอัตโนมัติ

en: Automatically if <guilabel>Insert handler on edit</guilabel> option if enabled
th: โดยอัตโนมัติถ้าตัวเลือก <guilabel>แทรก handler เมื่อแก้ไข</guilabel> เปิดใช้งาน

en: Using <menuchoice><guimenuitem>Glade</guimenuitem><guimenuitem>Insert handler stub, autoposition</guimenuitem></menuchoice> in hte main menu
th: โดยใช้เมนู <menuchoice><guisubmenu>Glade</guisubmenu><guimenuitem>แทรกเค้าโครง handler, จัดตำแหน่งอัตโนมัติ</guimenuitem></menuchoice> ในเมนูหลัก

en: Using <guilabel>Insert handler stub</guilabel> item in the context menu of text document
th: โดยใช้รายการ <guilabel>แทรกเค้าโครง handler</guilabel> ในเมนูบริบทของเอกสารข้อความ

en: There are several ways to create a stub: <placeholder-1/>
th: มีหลายวิธีที่จะสร้างเค้าโครง: <placeholder-1/>

en: Preferences
th: การปรับแต่ง

en: Insert handler on edit
th: แทรก handler เมื่อแก้ไข

en: Enables inserting a handler stub into the associated editor after entering a new handler into signal editor or creating a <link linkend="glade-default-signal">default signal handler</link>
th: เปิดใช้งานการแทรกเค้าโครง handler ในเครื่องมือแก้ไขที่เชื่อมโยงอยู่ หลังจากใส่ handler ใหม่ในเครื่องมือแก้ไขสัญญาณ หรือหลังจากสร้าง <link linkend="glade-default-signal">handler ปริยายของสัญญาณ</link>

en: Separated designer layout
th: จัดวางเครื่องมือออกแบบแบบแยก

en: Detaches the design area from document manager so you can dock it separately from text editors.
th: แยกพื้นที่ออกแบบออกจากเครื่องมือจัดการเอกสาร เพื่อให้คุณสามารถ dock แยกจากเครื่องมือแก้ไขข้อความได้

en: Automatically add resources
th: เพิ่มทรัพยากรโดยอัตโนมัติ

en: When checked then all resources (e.g. images) will be added to the target in the current project. You can choose the target using project manager context menu or by entering target id in the entry below the check button.
th: เมื่อกาเลือกตัวเลือกนี้ ทรัพยากรทั้งหมด (เช่นรูปภาพ) จะถูกเพิ่มเข้าในเป้าหมายในโครงการปัจจุบัน คุณสามารถเลือกเป้าหมายดังกล่าวได้ โดยใช้เมนูบริบทของเครื่องมือจัดการโครงการ หรือโดยการป้อน id ของเป้าหมายลงในช่องป้อนใต้กล่องกา

en: Handler template
th: แม่แบบ handler

en: You can choose between the two formats of automatic naming of signal handler.
th: คุณสามารถเลือกรูปแบบการตั้งชื่อ handler ของสัญญาณโดยอัตโนมัติได้สองรูปแบบ

en: Preferences are ways to customize <application>Anjuta</application> to suit your tastes. Activate <menuchoice><guimenu>Edit</guimenu><guimenuitem>Preferences</guimenuitem></menuchoice> to bring up the preferences dialog. Some preferences are explained below.
th: การปรับแต่ง เป็นการปรับ <application>แอนจูตา</application> ให้เหมาะกับรสนิยมของคุณ เปิดใช้งานโดยเลือกเมนู <menuchoice><guimenu>แก้ไข</guimenu><guimenuitem>ปรับแต่ง</guimenuitem></menuchoice> เพื่อเปิดกล่องโต้ตอบปรับแต่ง ค่าปรับแต่งบางส่วนจะอธิบายต่อไปข้างล่างนี้

en: General
th: ทั่วไป

en: <emphasis>Project Directory</emphasis> is the path where you plan to put all your projects. The application wizard creates new projects in this directory only. The default project directory is ~/Projects and generally this is fine for most people.
th: <emphasis>ไดเรกทอรีปริยายของโครงการ</emphasis> เป็นพาธซึ่งคุณวางแผนว่าจะใช้เก็บโครงการทั้งหมดของคุณ เครื่องมือวิเศษสร้างโปรแกรมจะสร้างโครงการใหม่ในไดเรกทอรีนี้เท่านั้น ค่าปริยายของไดเรกทอรีโครงการคือ ~/Projects ซึ่งโดยทั่วไปก็เหมาะสมสำหรับคนส่วนใหญ่

en: <emphasis>User Info:</emphasis> Provide your name and email address here. These are not used to do software registration; rather, they are used to create ChangeLog entries and other text insertions.
th: <emphasis>ข้อมูลผู้ใช้:</emphasis> ป้อนชื่อและที่อยู่อีเมลของคุณที่นี่ ข้อมูลนี้ไม่ได้ใช้ในการลงทะเบียนซอฟต์แวร์ แต่จะใช้ในการสร้างรายการใน ChangeLog และในการแทรกข้อความอื่น ๆ

en: File Manager
th: เครื่องมือจัดการแฟ้ม

en: <emphasis>Root directory if no project is open</emphasis> is the path where the root of the file manager points if no project is currently open.
th: <emphasis>ไดเรกทอรีรากถ้าไม่มีโครงการเปิดอยู่</emphasis> เป็นพาธที่รากของเครื่องมือจัดการแฟ้มจะชี้ไป ถ้าไม่มีโครงการใดเปิดอยู่

en: <emphasis>File Filter:</emphasis> You can filter out some files from the file tree, for example, hidden files, or files that are ignored by the version control system which usually means they are generated at build time and should not be changed.
th: <emphasis>ตัวกรองแฟ้ม:</emphasis> คุณสามารถกรองเอาแฟ้มบางแฟ้มออกจากแผนภาพต้นไม้ของแฟ้มได้ ตัวอย่างเช่น แฟ้มที่ซ่อน หรือแฟ้มที่ถูกละเลยโดยระบบควบคุมรุ่น ซึ่งโดยปกติจะเป็นแฟ้มที่ถูกสร้างขึ้นในขณะประกอบสร้าง และไม่ควรจะแก้ไข

en: User-defined Tools
th: เครื่องมือที่ผู้ใช้กำหนดเอง

en: You'll sometimes find the built-in functionality provided by Anjuta to be insufficient. In these cases, you might be tempted to either add the feature yourself to the Anjuta codebase or submit a feature request to implement the feature. However, both approaches are likely to be slow and problematic, especially if your tool is a specialized one. In these circumstances, it is advisable to use the Anjuta tools framework instead.
th: ในบางครั้ง คุณอาจพบว่าเครื่องมือต่าง ๆ ที่มากับแอนจูตานั้นไม่เพียงพอ ในกรณีนี้ คุณอาจจะอยากเพิ่มความสามารถที่คุณต้องการเข้าในโค้ดของ Anjuta ด้วยตนเอง หรือส่งคำขอเพิ่มความสามารถมาที่เรา อย่างไรก็ตาม ทั้งสองวิธีนี้อาจจะช้าและขลุกขลัก โดยเฉพาะถ้าเครื่องมือของคุณเป็นเครื่องมือเฉพาะกิจ ในกรณีเช่นนี้ ขอแนะนำให้ใช้กรอบงานเครื่องมือของแอนจูตาแทน

en: Anjuta provides a powerful framework for defining user-defined tools for extending its functionality. Tools have access to almost all features of the IDE through the use of variables. You can add tools under any menu item, specify input, output and error redirection within the GUI framework and supply command-line parameters to the tool.
th: แอนจูตาได้เตรียมกรอบงานที่มากความสามารถสำหรับเพิ่มเครื่องมือที่ผู้ใช้กำหนดเองเพื่อขยายการทำงาน เครื่องมือจะสามารถเข้าถึงความสามารถเกือบทั้งหมดของ IDE ผ่านการใช้ตัวแปร คุณสามารถเพิ่มเครื่องมือภายใต้รายการเมนูใด ๆ ก็ได้ สามารถระบุการเปลี่ยนทิศทางของข้อมูลเข้า ข้อมูลออก และข้อความข้อผิดพลาดในกรอบงาน GUI และกำหนดพารามิเตอร์บรรทัดคำสั่งให้กับเครื่องมือได้

en: The tools plugin has to be enabled to use this feature!
th: คุณต้องเปิดใช้ปลั๊กอินเครื่องมือเพื่อจะใช้ความสามารถนี้!

en: Tools Examples
th: ตัวอย่างเครื่องมือ

en: This is a simple example how to use the tools plugin to integrate the GNOME ChangeLog generation script.
th: นี่คือตัวอย่างง่าย ๆ ของการใช้ปลั๊กอินเครื่องมือเพื่อเชื่อมรวมกับสคริปต์สร้าง ChangeLog ของ GNOME

en: The tool editor
th: เครื่องมือแก้ไขเครื่องมือ

en: Authors
th: ผู้เขียน

en: The <application>Anjuta</application> project was founded by Naba Kumar. <ulink type="http" url="http://anjuta.org/credits">This page</ulink> lists all Anjuta contributors.
th: โครงการ <application>แอนจูตา</application> ก่อตั้งโดย Naba Kumar <ulink type="http" url="http://anjuta.org/credits">หน้านี้</ulink> จะแสดงรายชื่อผู้ร่วมสมทบงานให้กับแอนจูตาทุกคน

en: For more information on <application>Anjuta</application>, please visit the project website at <ulink type="http" url="http://anjuta.org/">http://anjuta.org</ulink>. Bug reports should be made using the Bug Tracker at the project development site <ulink type="http" url="http://www.sourceforge.net/projects/anjuta"> http://www.sourceforge.net/projects/anjuta</ulink>.
th: สำหรับข้อมูลเพิ่มเติมของ <application>แอนจูตา</application> กรุณาเข้าชมที่เว็บไซต์ของโครงการที่ <ulink type="http" url="http://anjuta.org/">http://anjuta.org</ulink> การรายงานบั๊กควรจะใช้เครื่องมือติดตามบั๊กที่ไซต์พัฒนาโครงการ <ulink type="http" url="http://www.sourceforge.net/projects/anjuta">http://www.sourceforge.net/projects/anjuta</ulink>

en: This manual was written by Naba Kumar, Andy Piper, Biswapesh Chattopadhyay and Johannes Schmid. Please send all comments and suggestions regarding this manual to the Anjuta Devel list <email>anjuta-devel-list@gnome.org</email>. Comments may also be submitted via the project trackers at SourceForge.
th: คู่มือนี้เขียนโดย Naba Kumar, Andy Piper, Biswapesh Chattopadhyay และ Johannes Schmid กรุณาส่งความคิดเห็นและข้อเสนอแนะทั้งหมดเกี่ยวกับคู่มือนี้ไปที่ลิสต์ Anjuta Devel <email>anjuta-devel-list@gnome.org</email> หรืออาจส่งข้อคิดเห็นต่าง ๆ มาทางเครื่องมือติดตามโครงการของ SourceForge ได้เช่นกัน

en: License
th: สัญญาอนุญาต

en: This program is free software; you can redistribute it and/or modify it under the terms of the <ulink type="ghelp" url="gnome-help:gpl">GNU General Public License</ulink> as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
th: โปรแกรมนี้เป็นซอฟต์แวร์เสรี คุณสามารถแจกจ่ายต่อ และ/หรือ แก้ไขโปรแกรมได้ ภายใต้เงื่อนไขของ <ulink type="ghelp" url="gnome-help:gpl">GNU General Public License</ulink> ที่เผยแพร่โดยมูลนิธิซอฟต์แวร์เสรี ไม่ว่าจะเป็นสัญญาอนุญาตรุ่นที่ 2 หรือรุ่นถัดมา(ตามแต่คุณจะเลือก)

en: This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the <citetitle>GNU General Public License</citetitle> for more details.
th: โปรแกรมนี้เผยแพร่ด้วยความหวังว่าโปรแกรมจะมีประโยชน์ แต่ <emphasis>ไม่มีการรับประกันใดๆ</emphasis> ไม่มีแม้การรับประกัน <emphasis>อรรถประโยชน์เชิงพาณิชย์</emphasis> หรือ <emphasis>ความเหมาะสมสำหรับวัตถุประสงค์เฉพาะกิจใด ๆ</emphasis> กรุณาอ่าน <citetitle>GNU General Public License</citetitle> เพื่อดูรายละเอียดเพิ่มเติม

en: A copy of the <citetitle>GNU General Public License</citetitle> is included as an appendix to the <citetitle>GNOME Users Guide</citetitle>. You may also obtain a copy of the <citetitle>GNU General Public License</citetitle> from the Free Software Foundation by visiting <ulink type="http" url="http://www.fsf.org"> their Web site</ulink> or by writing to <address> Free Software Foundation, Inc. <street>51 Franklin Street</street> Fifth Floor <city>Boston</city>, <state>MA</state><postcode>02110-1301</postcode><country>USA</country></address>
th: ชุดสำเนาของ <citetitle>GNU General Public License</citetitle> ได้แนบมาเป็นภาคผนวกใน <citetitle>คู่มือผู้ใช้ GNOME</citetitle> แล้ว คุณอาจรับชุดสำเนาของ <citetitle>GNU General Public License</citetitle> จากมูลนิธิซอฟต์แวร์เสรีได้ โดยเข้าไปที่ <ulink type="http" url="http://www.fsf.org">เว็บไซต์ของมูลนิธิ</ulink> หรือโดยติดต่อไปที่ <address>Free Software Foundation, Inc. <street>51 Franklin Street</street> Fifth Floor <city>Boston</city>, <state>MA</state><postcode>02110-1301</postcode><country>USA</country></address>
