39756978.Pdf (5.536Mb)

Total Page:16

File Type:pdf, Size:1020Kb

Load more

Master thesis in informatics – Software development Improvements and extensions to the configuration tools of the TaskManager HLT software in the ALICE experiment at CERN Øystein Senneset Haaland University of Bergen November 2007 Abstract This thesis concerns work done to improve and extend software that is used to configure nodes and trigger software in High-Level Trigger (HLT) under the ALICE experiment at CERN. HLT is a large computer cluster that will be used to reduce data from the ALICE experiment to a an amount manageable by storage systems. To accomplish this efficiently the processing is distributed throughout the cluster and the configuration tools are used to decide how this distribution should be done. The configuration tools are composed of a few Python programs and templates, which generates configuration files for all participating nodes by taking input from a single Extensible Markup Language (XML) file describing the entire setup. While optimization and general improvement is one part of this thesis, the emphasis will be on extending the software to incorporate functionality for creating a more structured control hierarchy in the HLT data processing framework. This thesis will present the tasks to be resolved, discuss possible solutions and describe the development process. Preface The work with this thesis has been both exciting and challenging. It has been a journey of hard work and many leassons learned. Working in the setting of a large, world wide collaboration as the ALICE experiment, has given experience with international work that can hardly be matched elsewhere for a master student. For a student with a background in informatics, getting to know the world of physics from the inside, has given new perspectives to how the world is viewed. All in all, it has been an extremely rewarding experience. I would like to thank my supervisor H˚avard Helstrup for prompt and comprehensive feedback all along the process, and for tirelessly reading and commenting drafts of my thesis. Kristin Fanebust Hetland, also at Høgskulen i Bergen, has done a great job of following-up my progress and providing useful advice. The assignment for this thesis has been given by Institutt for Fysikk og Teknologi on behalf of the ALICE experiment at CERN. The institute has therefore been where i have had my work space. At the institute i would like to thank Dieter Roehrich for giving me the opportunity to work abroad at CERN, in Heidelberg and Pader- born. I would also like to thank those with whom i have shared office – Are, Knut, Kyrre, Torstein and Øystein – and from our group – Dag, Gaute, Kenneth, Matthias and Sebastian – for inspiration, being helpful and for adding a social aspect to the experience. Further, i would like to thank our colleagues and HLT collaborators at Kirchhoff Institute of Physics in Heidelberg for invaluable impulses. In particular Timm M. Steinbeck for proposing such an exciting assignment for this thesis and for providing valuable input. Thanks also to Lisa for proofreading my English and student advisor Ida for helping out with all practical problems. Finally, I would like to thank my family, my parents in particular, for selflessly encourageing me to go my own ways and for supporting my efforts. Bergen, November 2007 Øystein S. Haaland iii Contents 1. Introduction 1 1.1. Physics background . 1 1.1.1. CERN . 2 1.1.2. LHC - Large Hadron Collider . 2 1.1.3. ALICE . 3 1.1.4. HLT . 4 1.2. The assignment . 4 1.3. Structure of the report . 6 2. Background 9 2.1. Purpose of HLT . 9 2.2. Detector structure . 9 2.3. Hardware . 11 2.3.1. H-RORC . 11 2.3.2. CHARM . 12 2.4. Existing software . 12 2.4.1. HLT - AliRoot components . 12 2.4.2. The Publisher-Subscriber framework . 12 2.4.3. TaskManager . 15 2.4.4. TMGUI.py - Task manager GUI . 20 2.4.5. HLT TPC Online display . 21 2.4.6. Configuration tools . 21 2.5. Fault tolerance in HLT software . 22 2.6. Known methods . 22 3. Configuration tools 23 3.1. Control hierarchy in HLT software . 23 3.2. Motivation . 23 3.3. Implementation . 24 3.4. New requirements . 26 3.4.1. Functional requirements . 26 3.4.2. Non-functional requirements . 27 3.5. Why interesting? . 28 v 4. Problem analysis 29 4.1. Problem definition - precisions . 29 4.2. Methods and technology . 30 4.2.1. Practices and methodologies . 30 4.2.2. Programming languages . 34 4.2.3. Software, tools, libraries . 39 4.2.4. Technology . 40 4.3. Development considerations . 42 4.3.1. Implementation guidelines . 42 4.3.2. Automated build and installation tools . 43 4.3.3. Development environment/setup . 45 5. Solution 47 5.1. Task break down . 47 5.1.1. Improve XML parsing code . 47 5.1.2. Usability improvements chain operation . 48 5.1.3. Distributed configuration creation . 49 5.1.4. A mapping program . 50 5.1.5. Avoid recompilation of Python bytecode . 50 5.1.6. Repeated creation of configuration objects . 51 5.1.7. Explore different approach . 51 5.1.8. Finalize servant/node group implementation . 52 5.2. Chosen solutions . 52 5.2.1. Improve XML parsing code . 53 5.2.2. Usability improvements chain operation . 53 5.2.3. Distributed configuration creation . 53 5.2.4. A mapping program . 53 5.2.5. Avoid recompilation of Python bytecode . 54 5.2.6. Repeated creation of configuration objects . 54 5.2.7. Explore a different approach . 54 5.2.8. Finalize servant/node group implementation . 55 6. Implementation 57 6.1. User stories . 57 6.1.1. XML parser improvements . 57 6.1.2. Usability improvements chain operation . 59 6.1.3. Distributed configuration creation . 59 6.1.4. A mapping program . 60 6.1.5. Avoid recompilation of Python bytecode . 63 6.1.6. Repeated configuration creation . 64 6.1.7. NBus prototype . 64 6.1.8. Servant/node group . 66 6.2. Structural changes . 66 6.3. Contribution . 66 vi 7. Evaluation and testing 69 7.1. Test methods . 69 7.1.1. Regression testing . 69 7.1.2. Profiling - testing for effectiveness . 69 7.2. Test results . 69 7.2.1. Rewrite of XML parsing code . 70 7.2.2. Single Node Mode . 70 7.2.3. NBus . 71 7.3. Evaluation . 71 8. Conclusion 73 8.1. Summary . 74 8.2. Further work . 74 A. Single-node mode test 77 A.1. Test setup . 77 A.1.1. Nodes . 77 A.1.2. Tools . 77 A.1.3. Infrastructure . 77 A.1.4. Notes . 77 A.2. Results . 78 A.2.1. Conclusion . 78 A.2.2. Comments . 78 B. Sample master configuration file 81 Glossary 83 Bibliography 87 vii List of Figures 1.1. Overall view of LHC experiments[1]. 3 1.2. DAQ - HLT dataflow[2]. 5 2.1. The layers of HLT. Detector data can be seen entering at the top and being split by D-RORC and sent on to HLT[2]. 10 2.2. Control and data flow in hlt software, including servant and node group concepts. 13 2.3. Example of components in Publisher-Subscriber framework[3]. 16 2.4. Internals of the TaskManager[4]. 18 2.5. TaskManager control and data flow[4]. A simple master, slave control hierarchy is depicted. Large rectangles represents nodes. Ellipses are processes. 19 2.6. Screenshot of TaskManager control GUI. 20 2.7. Screenshot of TPC Online display[1]. 21 3.1. Process of creating configuration files. 25 3.2. Class diagram of configure script. 26 4.1. All diagrams defined by the UML specification[5][6] . 38 5.1. State propagation in TaskManager hierarchy . 52 6.1. Initial structure of xml parsing elements in configuration tools. 58 6.2. Structure after refactoring and new implementation of xml parsing. 58 6.3. Configuration tools in non-distributed mode . 60 6.4. Configuration tools in distributed mode. ..
Recommended publications
  • Literaturverwaltung Für Latex-Neulinge

    Literaturverwaltung Für Latex-Neulinge

    Universitatsbibliothek¨ Technische Universitat¨ Munchen¨ Literaturverwaltung fur¨ LATEX-Neulinge Dieses Werk ist lizenziert unter einer Creative Commons “Namensnennung – Weitergabe unter gleichen Bedingungen 4.0 International” Lizenz. Universitatsbibliothek¨ Technische Universitat¨ Munchen¨ Impressum Verantwortlich fur¨ dieses Informationsangebot: Dorothea Lemke und Katja Tietze Technische Universitat¨ Munchen¨ Universitatsbibliothek¨ Arcicsstraße 21 80333 Munchen¨ E-Mail: [email protected] Tel.: 089-289-28644 Universitatsbibliothek¨ Technische Universitat¨ Munchen¨ Inhaltsverzeichnis 1 F ¨urwen ist dieses Dokument gedacht?4 2 LATEXund Literaturverwaltung – das Grundprinzip5 3 Literaturangaben in der Datenbank pflegen9 4 Mit BibTeX zitieren 15 5 Mit biblatex zitieren 19 6 Die Qual der Wahl: BibTeX oder biblatex? 25 7 Tipps zum Einstieg 31 8 Was bringt mir ein Literaturverwaltungsprogramm? 32 9 Welches Literaturverwaltungsprogramm ist das richtige f ¨urmich? 36 Universitatsbibliothek¨ Technische Universitat¨ Munchen¨ 1 F ¨urwen ist dieses Dokument gedacht? Dieses Dokument bietet eine grundsatzliche¨ Einfuhrung¨ in den Umgang mit Literaturnachweisen in LATEX, wobei elementare LATEX-Kenntnisse vorausgesetzt werden. Der Schwerpunkt liegt auf dem Vergleich zwi- schen dem Urgestein BibTeX in Kombination mit natbib-Zitierbefehlen und der Neuimplementierung biber mit biblatex-Zitierbefehlen. Außerdem werden verschiedene Literaturverwaltungsprogramme und deren Nutzen fur¨ den Anwender vorgestellt. Die Hinweise und die Beispiele beschranken¨
  • Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb

    Pipenightdreams Osgcal-Doc Mumudvb Mpg123-Alsa Tbb

    pipenightdreams osgcal-doc mumudvb mpg123-alsa tbb-examples libgammu4-dbg gcc-4.1-doc snort-rules-default davical cutmp3 libevolution5.0-cil aspell-am python-gobject-doc openoffice.org-l10n-mn libc6-xen xserver-xorg trophy-data t38modem pioneers-console libnb-platform10-java libgtkglext1-ruby libboost-wave1.39-dev drgenius bfbtester libchromexvmcpro1 isdnutils-xtools ubuntuone-client openoffice.org2-math openoffice.org-l10n-lt lsb-cxx-ia32 kdeartwork-emoticons-kde4 wmpuzzle trafshow python-plplot lx-gdb link-monitor-applet libscm-dev liblog-agent-logger-perl libccrtp-doc libclass-throwable-perl kde-i18n-csb jack-jconv hamradio-menus coinor-libvol-doc msx-emulator bitbake nabi language-pack-gnome-zh libpaperg popularity-contest xracer-tools xfont-nexus opendrim-lmp-baseserver libvorbisfile-ruby liblinebreak-doc libgfcui-2.0-0c2a-dbg libblacs-mpi-dev dict-freedict-spa-eng blender-ogrexml aspell-da x11-apps openoffice.org-l10n-lv openoffice.org-l10n-nl pnmtopng libodbcinstq1 libhsqldb-java-doc libmono-addins-gui0.2-cil sg3-utils linux-backports-modules-alsa-2.6.31-19-generic yorick-yeti-gsl python-pymssql plasma-widget-cpuload mcpp gpsim-lcd cl-csv libhtml-clean-perl asterisk-dbg apt-dater-dbg libgnome-mag1-dev language-pack-gnome-yo python-crypto svn-autoreleasedeb sugar-terminal-activity mii-diag maria-doc libplexus-component-api-java-doc libhugs-hgl-bundled libchipcard-libgwenhywfar47-plugins libghc6-random-dev freefem3d ezmlm cakephp-scripts aspell-ar ara-byte not+sparc openoffice.org-l10n-nn linux-backports-modules-karmic-generic-pae
  • Tools for Creating Bibliographic Databases for Use with Bibtex D.V.L.K.D.P

    Tools for Creating Bibliographic Databases for Use with Bibtex D.V.L.K.D.P

    The PracTEX Journal, 2007, No. 3 Article revision 2007/08/14 Tools for creating bibliographic databases for use with BibTEX D.V.L.K.D.P. Venugopal Email [email protected] Address Senior Personal Assistant Vice-Chancellor’s Office Banaras Hindu University Varanasi 221 005, India Abstract By using BibTEX we can easily change the style of Bibliography/References according to the style of the journal. But creating bibliographic databases for use with BibTEX is very cumbersome. This article describes the various software tools available for creating bibliographic databases easily, particu- larly for the Windows platform. 1 Introduction One of the major advantages of using LATEX is ease of inclusion of bibliographies in conjunction with BibTEX. Various bibliographic style files (bst) are available for different journals and publishing houses. Using these bst files the format and citation style can be changed easily[1]. This facility is not available in commercial wordprocessors or desktop publishing systems. Creating BibTEX databases is also discussed in LATEX Tutorials[2] and by Parthasarathy[3]. Bibliographic databases for BibTEX can be created using ordinary editors but it is tedious work involving a lot of typing. But once created, the same data can be used many times and by many users. A search on the Internet for BibTEX database managers gives a long list of free and commercial software1. To name a few: bibtex mode and Ebib (for Emacs), Pybliographer (using Python for Linux), gBib (for GNOME, Linux), Barracuda (for Linux), KBibTeX (for KDE, Linux), Sixpack (multi platform), JBibtexManager, Javabib and JabRef (multi platform using Java), BibDB (for DOS and Windows), 1.
  • Linux Box — Rev

    Linux Box — Rev

    Linux Box | Rev Howard Gibson 2021/03/28 Contents 1 Introduction 1 1.1 Objective . 1 1.2 Copyright . 1 1.3 Why Linux? . 1 1.4 Summary . 2 1.4.1 Installation . 2 1.4.2 DVDs . 2 1.4.3 Gnome 3 . 3 1.4.4 SElinux . 4 1.4.5 MBR and GPT Formatted Disks . 4 2 Hardware 4 2.1 Motherboard . 5 2.2 CPU . 6 2.3 Memory . 6 2.4 Networking . 6 2.5 Video Card . 6 2.6 Hard Drives . 6 2.7 External Drives . 6 2.8 Interfaces . 7 2.9 Case . 7 2.10 Power Supply . 7 2.11 CD DVD and Blu-ray . 7 2.12 SATA Controller . 7 i 2.13 Sound Card . 8 2.14 Modem . 8 2.15 Keyboard and Mouse . 8 2.16 Monitor . 8 2.17 Scanner . 8 3 Installation 8 3.1 Planning . 8 3.1.1 Partitioning . 9 3.1.2 Security . 9 3.1.3 Backups . 11 3.2 /usr/local . 11 3.3 Text Editing . 11 3.4 Upgrading Fedora . 12 3.5 Root Access . 13 3.6 Installation . 13 3.7 Booting . 13 3.8 Installation . 14 3.9 Booting for the first time . 17 3.10 Logging in for the first time . 17 3.11 Updates . 18 3.12 Firewall . 18 3.13 sshd . 18 3.14 Extra Software . 19 3.15 Not Free Software . 21 3.16 /opt . 22 3.17 Interesting stuff I have selected in the past . 22 3.18 Window Managers . 23 3.18.1 Gnome 3 .
  • Upgrade Issues

    Upgrade Issues

    Upgrade issues Graph of new conflicts libsiloh5-0 libhdf5-lam-1.8.4 (x 3) xul-ext-dispmua (x 2) liboss4-salsa-asound2 (x 2) why sysklogd console-cyrillic (x 9) libxqilla-dev libxerces-c2-dev iceape xul-ext-adblock-plus gnat-4.4 pcscada-dbg Explanations of conflicts pcscada-dbg libpcscada2-dev gnat-4.6 gnat-4.4 Similar to gnat-4.4: libpolyorb1-dev libapq-postgresql1-dev adacontrol libxmlada3.2-dev libapq1-dev libaws-bin libtexttools2-dev libpolyorb-dbg libnarval1-dev libgnat-4.4-dbg libapq-dbg libncursesada1-dev libtemplates-parser11.5-dev asis-programs libgnadeodbc1-dev libalog-base-dbg liblog4ada1-dev libgnomeada2.14.2-dbg libgnomeada2.14.2-dev adabrowse libgnadecommon1-dev libgnatvsn4.4-dbg libgnatvsn4.4-dev libflorist2009-dev libopentoken2-dev libgnadesqlite3-1-dev libnarval-dbg libalog1-full-dev adacgi0 libalog0.3-base libasis2008-dbg libxmlezout1-dev libasis2008-dev libgnatvsn-dev libalog0.3-full libaws2.7-dev libgmpada2-dev libgtkada2.14.2-dbg libgtkada2.14.2-dev libasis2008 ghdl libgnatprj-dev gnat libgnatprj4.4-dbg libgnatprj4.4-dev libaunit1-dev libadasockets3-dev libalog1-base-dev libapq-postgresql-dbg libalog-full-dbg Weight: 5 Problematic packages: pcscada-dbg hostapd initscripts sysklogd Weight: 993 Problematic packages: hostapd | initscripts initscripts sysklogd Similar to initscripts: conglomerate libnet-akamai-perl erlang-base screenlets xlbiff plasma-widget-yawp-dbg fso-config- general gforge-mta-courier libnet-jifty-perl bind9 libplack-middleware-session-perl libmail-listdetector-perl masqmail libcomedi0 taxbird ukopp
  • The Kile Handbook

    The Kile Handbook

    The Kile Handbook Jonathan Pechta, Federico Zenith, Holger Danielsson, Thomas Braun, and Michel Ludwig The Kile Handbook 2 Contents 1 Preface1 1.1 Requirements . .1 1.2 Intended Audience . .1 2 Introduction3 2.1 Basic facts . .3 2.1.1 About Kile . .3 2.1.2 Kile and Kate . .3 A 2.1.3 What is L TEX........................3 2.1.4 How do you pronounce it? Why that strange typesetting?4 A 2.2 L TEX101...............................4 2.3 Kile’s Main Features . .5 2.3.1 QuickStart Wizard . .5 2.3.2 Predefined Templates . .5 2.3.3 Syntax Highlighting . .6 2.3.4 Auto-Completion of Environments . .6 2.3.5 Jump to Structure Element . .6 2.3.6 Inverse Search . .7 2.3.7 Forward Search . .7 2.4 The Toolbar . .7 3 Quickstart 11 A 3.1 Writing a L TEX Document with Kile for Beginners . 11 3.2 Environments . 12 3.3 Using Kile . 12 3.4 DVI Files . 13 3.4.1 Viewing a DVI . 13 The Kile Handbook 3.4.2 Printing a DVI . 13 3.4.3 Converting DVI files . 14 3.5 Forward Search between Kile and Okular . 14 3.6 Inverse Search between Kile and Okular . 14 3.7 Resolving Errors . 15 4 Starting a New Document 16 4.1 Templates . 17 4.1.1 Create a New Template . 17 4.1.2 Configuring Automatic Substitutions . 17 4.1.3 Create a Template from the Wizard . 17 4.1.4 Creating a Template from any File . 18 4.1.5 Removing a Template .
  • Technical Notes All Changes in Fedora 13

    Technical Notes All Changes in Fedora 13

    Fedora 13 Technical Notes All changes in Fedora 13 Edited by The Fedora Docs Team Copyright © 2010 Red Hat, Inc. and others. The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. The original authors of this document, and Red Hat, designate the Fedora Project as the "Attribution Party" for purposes of CC-BY-SA. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version. Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law. Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries. For guidelines on the permitted uses of the Fedora trademarks, refer to https:// fedoraproject.org/wiki/Legal:Trademark_guidelines. Linux® is the registered trademark of Linus Torvalds in the United States and other countries. Java® is a registered trademark of Oracle and/or its affiliates. XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries. All other trademarks are the property of their respective owners. Abstract This document lists all changed packages between Fedora 12 and Fedora 13.
  • Managing Bibliographies with LATEX Lapo F

    Managing Bibliographies with LATEX Lapo F

    36 TUGboat, Volume 30 (2009), No. 1 Multiple citations can be added by separating Bibliographies with a comma the bibliographic keys inside the same \cite command; for example \cite{Goossens1995,Kopka1995} Managing bibliographies with LATEX Lapo F. Mori gives Abstract (Goossens et al., 1995; Kopka and Daly, 1995) The bibliography is a fundamental part of most scien- Bibliographic entries that are not cited in the tific publications. This article presents and analyzes text can be added to the bibliography with the the main tools that LATEX offers to create, manage, \nocite{key} command. The \nocite{*} com- and customize both the references in the text and mand adds all entries to the bibliography. the list of references at the end of the document. 2.2 Automatic creation with BibTEX A 1 Introduction BibTEX is a separate program from LTEX that allows creating a bibliography from an external database Bibliographic references are an important, sometimes (.bib file). These databases can be conveniently fundamental, part of academic documents. In the shared by different LATEX documents. BibTEX, which past, preparation of a bibliography was difficult and will be described in the following paragraphs, has tedious mainly because the entries were numbered many advantages over the thebibliography envi- and ordered by hand. LATEX, which was developed ronment; in particular, automatic formatting and with this kind of document in mind, provides many ordering of the bibliographic entries. tools to automatically manage the bibliography and make the authors’ work easier. How to create a 2.2.1 How BibTEX works A bibliography with LTEX is described in section2, BibTEX requires: starting from the basics and arriving at advanced 1.
  • Ubuntu:Precise Ubuntu 12.04 LTS (Precise Pangolin)

    Ubuntu:Precise Ubuntu 12.04 LTS (Precise Pangolin)

    Ubuntu:Precise - http://ubuntuguide.org/index.php?title=Ubuntu:Precise&prin... Ubuntu:Precise From Ubuntu 12.04 LTS (Precise Pangolin) Introduction On April 26, 2012, Ubuntu (http://www.ubuntu.com/) 12.04 LTS was released. It is codenamed Precise Pangolin and is the successor to Oneiric Ocelot 11.10 (http://ubuntuguide.org/wiki/Ubuntu_Oneiric) (Oneiric+1). Precise Pangolin is an LTS (Long Term Support) release. It will be supported with security updates for both the desktop and server versions until April 2017. Contents 1 Ubuntu 12.04 LTS (Precise Pangolin) 1.1 Introduction 1.2 General Notes 1.2.1 General Notes 1.3 Other versions 1.3.1 How to find out which version of Ubuntu you're using 1.3.2 How to find out which kernel you are using 1.3.3 Newer Versions of Ubuntu 1.3.4 Older Versions of Ubuntu 1.4 Other Resources 1.4.1 Ubuntu Resources 1.4.1.1 Unity Desktop 1.4.1.2 Gnome Project 1.4.1.3 Ubuntu Screenshots and Screencasts 1.4.1.4 New Applications Resources 1.4.2 Other *buntu guides and help manuals 2 Installing Ubuntu 2.1 Hardware requirements 2.2 Fresh Installation 2.3 Install a classic Gnome-appearing User Interface 2.4 Dual-Booting Windows and Ubuntu 1 of 212 05/24/2012 07:12 AM Ubuntu:Precise - http://ubuntuguide.org/index.php?title=Ubuntu:Precise&prin... 2.5 Installing multiple OS on a single computer 2.6 Use Startup Manager to change Grub settings 2.7 Dual-Booting Mac OS X and Ubuntu 2.7.1 Installing Mac OS X after Ubuntu 2.7.2 Installing Ubuntu after Mac OS X 2.7.3 Upgrading from older versions 2.7.4 Reinstalling applications after
  • The Kile Handbook

    The Kile Handbook

    The Kile Handbook Jonathan Pechta Federico Zenith Holger Danielsson Thomas Braun Michel Ludwig Felix Mauch The Kile Handbook 2 Contents 1 Preface 9 1.1 Requirements . .9 1.2 Intended Audience . .9 2 Introduction 10 2.1 Basic facts . 10 2.1.1 About Kile . 10 2.1.2 Kile and the Kate Editor Component . 10 A 2.1.3 What is L TEX?................................... 10 2.1.4 How do you pronounce it? Why that strange typesetting? . 10 A 2.2 L TEX101.......................................... 11 2.3 Kile’s Main Features . 11 2.3.1 QuickStart Wizard . 11 2.3.2 Predefined Templates . 12 2.3.3 Syntax Highlighting . 12 2.3.4 Auto-Completion of Environments . 12 2.3.5 Jump to Structure Element . 13 2.3.6 Inverse Search . 13 2.3.7 Forward Search . 13 2.4 The Toolbar . 13 3 Quickstart 17 A 3.1 Writing a L TEX Document with Kile for Beginners . 17 3.2 Environments . 18 3.3 Using Kile . 18 3.4 DVI Files . 19 3.4.1 Viewing a DVI . 19 3.4.2 Printing a DVI . 19 3.4.3 Converting DVI files . 19 3.5 Forward Search between Kile and Okular . 19 3.6 Inverse Search between Kile and Okular . 19 3.7 Resolving Errors . 20 The Kile Handbook 4 Starting a New Document 21 4.1 Templates . 21 4.1.1 Create a New Template . 21 4.1.2 Configuring Automatic Substitutions . 22 4.1.3 Create a Template from the Wizard . 22 4.1.4 Creating a Template from any File .
  • The Kbibtex Handbook

    The Kbibtex Handbook

    The KBibTeX Handbook Yuri Chornoivan The KBibTeX Handbook 2 Contents 1 Preface 6 1.1 Requirements . .6 1.2 Intended Audience . .6 2 Introduction 7 2.1 About KBibTeX . .7 2.1.1 About BibTEX....................................7 A 2.1.2 KBibTeX and L TEX Editors . .8 2.2 KBibTeX’s Main Features . .8 3 Quickstart 9 3.1 Writing a Bibliography File for Beginners . .9 A 3.2 Using the bibliography in your L TEX document . 10 4 KBibTeX Interface 13 4.1 KBibTeX’s Panels . 13 4.1.1 List of Documents Panel . 13 4.1.2 List of Values Panel . 14 4.1.3 Statistics Panel . 14 4.1.4 Reference Preview Panel . 15 4.1.5 File Settings Panel . 16 4.1.6 Online Search Panel . 16 4.1.7 Zotero Panel . 17 4.1.8 Search Results Panel . 18 4.1.9 Element Editor Panel . 18 4.1.10 Document Preview Panel . 19 4.2 KBibTeX’s Toolbars . 20 4.2.1 Main Toolbar . 20 4.2.2 Filter Toolbar . 21 4.3 KBibTeX’s Menus . 21 4.4 KBibTeX’s Configuration Dialog . 23 4.4.1 General Configuration . 24 4.4.2 Keywords Configuration . 24 4.4.3 Color & Labels Configuration . 25 4.4.4 Id Suggestions Configuration . 26 4.4.5 User Interface Configuration . 27 4.4.6 Saving and Exporting Configuration . 28 4.4.7 PDF & Postscript Configuration . 29 The KBibTeX Handbook 5 Advanced Usage 30 5.1 Cross References . 30 5.2 Macros . 30 6 Integration with Kile and LyX 33 6.1 Integration with Kile .
  • Latex/Bibliography Management

    Latex/Bibliography Management

    LaTeX/Bibliography Management For any academic/research writing, incorporating ref- the begin statement, is telling LaTeX how wide the item erences into a document is an important task. Fortu- label will be when printed. Note however, that the num- nately, LaTeX has a variety of features that make dealing ber itself is not the parameter, but the number of digits is. with references much simpler, including built-in support Therefore, I am effectively telling LaTeX that I will only for citing references. However, a much more powerful need reference labels of one character in length, which ul- and flexible solution is achieved thanks to an auxiliary timately means no more than nine references in total. If tool called BibTeX (which comes bundled as standard you want more than nine, then input any two-digit num- with LaTeX). Recently, BibTeX has been succeeded by ber, such as '56' which allows up to 99 references. BibLaTeX, a tool configurable within LaTeX syntax. Next is the actual reference entry itself. This is pre- BibTeX provides for the storage of all references in an fixed with the \bibitem{cite_key} command. The cite_key external, flat-file database. (BibLaTeX uses this same should be a unique identifier for that particular reference, syntax.) This database can be referenced in any La- and is often some sort of mnemonic consisting of any se- TeX document, and citations made to any record that is quence of letters, numbers and punctuation symbols (al- contained within the file. This is often more convenient though not a comma). I often use the surname of the first than embedding them at the end of every document writ- author, followed by the last two digits of the year (hence ten; a centralized bibliography source can be linked to as lamport94).