Revision: 303 http://geany-plugins.svn.sourceforge.net/geany-plugins/?rev=303&view=rev Author: frlan Date: 2008-11-17 22:29:05 +0000 (Mon, 17 Nov 2008)
Log Message: ----------- GeanyLaTeX: Added a first preview of support for BibTeX.
Very experimental and not for productive use. Testing needed.
Modified Paths: -------------- trunk/geanylatex/THANKS trunk/geanylatex/configure.in trunk/geanylatex/po/POTFILES.in trunk/geanylatex/po/de.po trunk/geanylatex/po/geanylatex.pot trunk/geanylatex/src/Makefile.am trunk/geanylatex/src/geanylatex.c trunk/wscript
Added Paths: ----------- trunk/geanylatex/src/bibtex.c trunk/geanylatex/src/bibtex.h trunk/geanylatex/src/geanylatex.h
Modified: trunk/geanylatex/THANKS =================================================================== --- trunk/geanylatex/THANKS 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/THANKS 2008-11-17 22:29:05 UTC (rev 303) @@ -5,3 +5,7 @@ Yura Siamashka <yurand2(at)gmail(dot)com> Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com> Enrico Troeger <enrico(dot)troeger(at)uvena(dot)de> + +Projects you can find some work inside plugin: +xfbib (http://goodies.xfce.org/projects/applications/xfbib) +* Many parts of the bibtex stuff
Modified: trunk/geanylatex/configure.in =================================================================== --- trunk/geanylatex/configure.in 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/configure.in 2008-11-17 22:29:05 UTC (rev 303) @@ -1,7 +1,7 @@ # Process this file with autoconf to produce a configure script.
AC_INIT(configure.in) -AM_INIT_AUTOMAKE(geanylatex, 0.2) +AM_INIT_AUTOMAKE(geanylatex, 0.3dev)
AM_CONFIG_HEADER(config.h)
Modified: trunk/geanylatex/po/POTFILES.in =================================================================== --- trunk/geanylatex/po/POTFILES.in 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/po/POTFILES.in 2008-11-17 22:29:05 UTC (rev 303) @@ -1,3 +1,4 @@ src/geanylatex.c src/latexencodings.c src/letters.c +src/bibtex.c
Modified: trunk/geanylatex/po/de.po =================================================================== --- trunk/geanylatex/po/de.po 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/po/de.po 2008-11-17 22:29:05 UTC (rev 303) @@ -2,7 +2,7 @@ msgstr "" "Project-Id-Version: GeanyLaTeX\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-11-14 01:00+0100\n" +"POT-Creation-Date: 2008-11-14 02:12+0100\n" "PO-Revision-Date: \n" "Last-Translator: Frank Lanitz frank@frank.uvena.de\n" "Language-Team: geany-118n geany-118n@uvena.de\n" @@ -13,75 +13,75 @@ "X-Poedit-Country: GERMANY\n" "X-Poedit-SourceCharset: utf-8\n"
-#: src/geanylatex.c:54 +#: src/geanylatex.c:29 msgid "LaTeX" msgstr "LaTeX"
-#: src/geanylatex.c:54 +#: src/geanylatex.c:29 msgid "Plugin to provide better LaTeX support" msgstr "Plugin zum Verbessern des LaTeX-Support für Geany"
-#: src/geanylatex.c:135 +#: src/geanylatex.c:90 msgid "Insert label" msgstr "Lesezeichen einfügen"
-#: src/geanylatex.c:148 +#: src/geanylatex.c:103 msgid "Label name:" msgstr "Lesezeichenname:"
-#: src/geanylatex.c:179 +#: src/geanylatex.c:134 msgid "Insert reference" msgstr "Verweis einfügen"
-#: src/geanylatex.c:192 +#: src/geanylatex.c:147 msgid "Ref name:" msgstr "Lesezeichenname:"
-#: src/geanylatex.c:202 +#: src/geanylatex.c:157 msgid "standard reference" msgstr "Normaler Verweis"
-#: src/geanylatex.c:207 +#: src/geanylatex.c:162 msgid "page reference" msgstr "Verweis auf Seite"
-#: src/geanylatex.c:372 +#: src/geanylatex.c:327 msgid "More" msgstr "Weitere"
#. Documentclass -#: src/geanylatex.c:463 +#: src/geanylatex.c:418 msgid "Documentclass:" msgstr "Dokumentenklasse:"
-#: src/geanylatex.c:466 +#: src/geanylatex.c:421 msgid "Choose the kind of document you want to write" msgstr "Art des Dokumentes"
#. Encoding -#: src/geanylatex.c:479 +#: src/geanylatex.c:434 msgid "Encoding:" msgstr "Zeichensatz:"
-#: src/geanylatex.c:483 +#: src/geanylatex.c:438 msgid "Set the encoding for your new document" msgstr "Zeichensatz für das neue Dokument"
#. Scriptsize -#: src/geanylatex.c:498 +#: src/geanylatex.c:453 msgid "Fontsize:" msgstr "Schriftgröße:"
-#: src/geanylatex.c:501 +#: src/geanylatex.c:456 msgid "Set the default fontsize of your new document" msgstr "Setzt die Standardschriftgröße für das neue Dokument"
#. Author -#: src/geanylatex.c:514 +#: src/geanylatex.c:469 msgid "Author:" msgstr "Autor:"
-#: src/geanylatex.c:517 +#: src/geanylatex.c:472 msgid "" "Sets the value of the \author command. In most cases this should be your " "name" @@ -89,11 +89,11 @@ "Setzt den Eintrag für den \author Befehl. Meist sollte hier Ihr Name stehen."
#. Date -#: src/geanylatex.c:528 +#: src/geanylatex.c:483 msgid "Date:" msgstr "Datum:"
-#: src/geanylatex.c:531 +#: src/geanylatex.c:486 msgid "" "Sets the value of the \date command inside header of your newly created " "LaTeX-document. Keeping it at \today is a good decision if you don't need " @@ -103,35 +103,35 @@ "meisten Fällen sollte \today eine gute Wahl sein."
#. Title of the new document -#: src/geanylatex.c:538 +#: src/geanylatex.c:493 msgid "Title:" msgstr "Titel:"
-#: src/geanylatex.c:540 +#: src/geanylatex.c:495 msgid "Sets the title of your new document." msgstr "Setzt den Titel für das neue Dokument."
#. Papersize -#: src/geanylatex.c:547 +#: src/geanylatex.c:502 msgid "Paper size:" msgstr "Papiergröße:"
-#: src/geanylatex.c:550 +#: src/geanylatex.c:505 msgid "Choose the paper format for the newly created document" msgstr "" "Setzt das Papierformat als Argument der Dokumentenklasse für das neue " "Dokument"
#. Building the wizard-dialog and showing it -#: src/geanylatex.c:565 +#: src/geanylatex.c:520 msgid "LaTeX-Wizard" msgstr "LaTeX-Assistent"
-#: src/geanylatex.c:575 +#: src/geanylatex.c:530 msgid "Use KOMA-script classes if possible" msgstr "Benutze KOMA-Skript wenn möglich"
-#: src/geanylatex.c:578 +#: src/geanylatex.c:533 msgid "" "Uses the KOMA-script classes by Markus Kohm.\n" "Keep in mind: To compile your document these classes have to be installed " @@ -140,11 +140,11 @@ "Wenn diese Option aktiviert ist, werden die KOMA-Skript-Klassen von Markus " "Kohm genutzt. Sie müssen natürlich dafür installiert sein."
-#: src/geanylatex.c:584 +#: src/geanylatex.c:539 msgid "Use draft mode" msgstr "Entwurfsmodus benutzen"
-#: src/geanylatex.c:586 +#: src/geanylatex.c:541 msgid "" "Set the draft flag inside new created documents to get documents with a " "number of debugging helpers" @@ -152,52 +152,56 @@ "Setzt die Option draft für die Dokumentenklasse um das neue Dokument mit " "einer Nummer von kleinen Korrekturhinweisen zu versehen."
-#: src/geanylatex.c:794 +#: src/geanylatex.c:750 msgid "_LaTeX" msgstr "_LaTeX"
-#: src/geanylatex.c:800 +#: src/geanylatex.c:756 msgid "LaTeX-_Wizard" msgstr "LaTeX-_Assistent"
-#: src/geanylatex.c:803 +#: src/geanylatex.c:759 msgid "Starts a Wizard to easily create LaTeX-documents" msgstr "Öffnet einen Assistenten, um einfache LaTeX-Dokumente zu erstellen."
-#: src/geanylatex.c:808 +#: src/geanylatex.c:764 msgid "Insert _Special Character" msgstr "_Sonderzeichen einfügen"
-#: src/geanylatex.c:810 +#: src/geanylatex.c:766 msgid "Helps to use some not very common letters and signs" msgstr "Unterstützt bei der Verwendung von seltenen Sonderzeichen"
-#: src/geanylatex.c:817 +#: src/geanylatex.c:773 msgid "Insert _Reference" msgstr "_Verweis einfügen"
-#: src/geanylatex.c:819 +#: src/geanylatex.c:775 msgid "Inserting references to the document" msgstr "Eine Referenz in das Dokument einfügen"
-#: src/geanylatex.c:823 +#: src/geanylatex.c:779 msgid "Insert _Label" msgstr "_Lesezeichen einfügen"
-#: src/geanylatex.c:825 +#: src/geanylatex.c:781 msgid "Helps at inserting labels to a document" msgstr "Untersützt bei dem Einfügen von Lesezeichen in ein Dokument"
+#: src/geanylatex.c:785 +msgid "Insert _BiBTeX entry" +msgstr "" + #. init keybindins -#: src/geanylatex.c:830 +#: src/geanylatex.c:790 msgid "Insert \label" msgstr "\label einfügen"
-#: src/geanylatex.c:831 +#: src/geanylatex.c:791 msgid "Insert \ref" msgstr "\ref einfügen"
-#: src/geanylatex.c:832 +#: src/geanylatex.c:792 msgid "Run LaTeX-Wizard" msgstr "LaTeX-Assistent starten"
@@ -245,7 +249,7 @@ msgid "IBM 852 code page" msgstr "IBM 852 code page"
-#: src/latexencodings.c:54 src/letters.c:41 +#: src/latexencodings.c:54 src/letters.c:41 src/bibtex.c:34 msgid "Misc" msgstr "Sonstiges"
@@ -268,3 +272,272 @@ #: src/letters.c:44 msgid "Binary operation" msgstr "Binäre Operatoren" + +#: src/bibtex.c:25 +msgid "Article" +msgstr "Artikel" + +#: src/bibtex.c:26 +msgid "Book" +msgstr "Buch" + +#: src/bibtex.c:27 +msgid "Booklet" +msgstr "Büchlein (Booklet)" + +#: src/bibtex.c:28 +#, fuzzy +msgid "Conference" +msgstr "Konferenz" + +#: src/bibtex.c:29 +msgid "Inbook" +msgstr "" + +#: src/bibtex.c:30 +msgid "Incollection" +msgstr "" + +#: src/bibtex.c:31 +msgid "Inproceedings" +msgstr "" + +#: src/bibtex.c:32 +msgid "Manual" +msgstr "" + +#: src/bibtex.c:33 +msgid "Mastersthesis" +msgstr "" + +#: src/bibtex.c:35 +msgid "PhdThesis" +msgstr "" + +#: src/bibtex.c:36 +msgid "Proceedings" +msgstr "" + +#: src/bibtex.c:37 +msgid "Techreport" +msgstr "" + +#: src/bibtex.c:38 +msgid "Unpublished" +msgstr "" + +#: src/bibtex.c:41 +msgid "Address" +msgstr "" + +#: src/bibtex.c:42 +msgid "Annote" +msgstr "" + +#: src/bibtex.c:43 +msgid "Author" +msgstr "Autor" + +#: src/bibtex.c:44 +msgid "Booktitle" +msgstr "" + +#: src/bibtex.c:45 +msgid "Chapter" +msgstr "Kapitel" + +#: src/bibtex.c:46 +msgid "Crossref" +msgstr "" + +#: src/bibtex.c:47 +msgid "Edition" +msgstr "" + +#: src/bibtex.c:48 +msgid "Editor" +msgstr "" + +#: src/bibtex.c:49 +msgid "E-print" +msgstr "" + +#: src/bibtex.c:50 +msgid "HowPublished" +msgstr "" + +#: src/bibtex.c:51 +msgid "Institution" +msgstr "Instituation" + +#: src/bibtex.c:52 +msgid "Journal" +msgstr "Journal" + +#: src/bibtex.c:53 +msgid "Key" +msgstr "Schlüssel" + +#: src/bibtex.c:54 +msgid "Month" +msgstr "Monat" + +#: src/bibtex.c:55 +msgid "Note" +msgstr "Note" + +#: src/bibtex.c:56 +msgid "Number" +msgstr "Nummer" + +#: src/bibtex.c:57 +msgid "Organization" +msgstr "Organisation" + +#: src/bibtex.c:58 +msgid "Pages" +msgstr "Seiten" + +#: src/bibtex.c:59 +msgid "Publisher" +msgstr "Herausgeber" + +#: src/bibtex.c:60 +msgid "School" +msgstr "" + +#: src/bibtex.c:61 +msgid "Series" +msgstr "" + +#: src/bibtex.c:62 +msgid "Title" +msgstr "Titel" + +#: src/bibtex.c:63 +msgid "Type" +msgstr "Typ" + +#: src/bibtex.c:64 +msgid "URL" +msgstr "URL" + +#: src/bibtex.c:65 +msgid "Volume" +msgstr "Ausgabe" + +#: src/bibtex.c:66 +msgid "Year" +msgstr "Jahr" + +#: src/bibtex.c:97 +msgid "Address of publisher" +msgstr "Adresse des Verlegers" + +#: src/bibtex.c:98 +msgid "Annotation for annotated bibliography styles" +msgstr "" + +#: src/bibtex.c:99 +msgid "Name(s) of the author(s), separated by 'and' if more than one" +msgstr "" + +#: src/bibtex.c:100 +msgid "Title of the book, if only part of it is being cited" +msgstr "" + +#: src/bibtex.c:101 +msgid "Chapter number" +msgstr "Nummer des Kapitels" + +#: src/bibtex.c:102 +msgid "Citation key of the cross-referenced entry" +msgstr "" + +#: src/bibtex.c:103 +msgid "Edition of the book (such as "first" or "second")" +msgstr "Auflage des Buches wie "erste" oder "10. überarbeitete"" + +#: src/bibtex.c:104 +msgid "Name(s) of the editor(s), separated by 'and' if more than one" +msgstr "" + +#: src/bibtex.c:105 +msgid "Specification of electronic publication" +msgstr "" + +#: src/bibtex.c:106 +msgid "Publishing method if the method is nonstandard" +msgstr "" + +#: src/bibtex.c:107 +msgid "Institution that was involved in the publishing" +msgstr "" + +#: src/bibtex.c:108 +msgid "Journal or magazine in which the work was published" +msgstr "" + +#: src/bibtex.c:109 +msgid "" +"Hidden field used for specifying or overriding the alphabetical order of " +"entries" +msgstr "" + +#: src/bibtex.c:110 +msgid "Month of publication or creation if unpublished" +msgstr "" + +#: src/bibtex.c:111 +msgid "Miscellaneous extra information" +msgstr "Sonstige zusätzliche Informationen" + +#: src/bibtex.c:112 +msgid "Number of journal, magazine, or tech-report" +msgstr "" + +#: src/bibtex.c:113 +msgid "Sponsor of the conference" +msgstr "" + +#: src/bibtex.c:114 +msgid "Page numbers separated by commas or double-hyphens" +msgstr "" + +#: src/bibtex.c:115 +msgid "Name of publisher" +msgstr "Name des Herausgebers" + +#: src/bibtex.c:116 +msgid "School where thesis was written" +msgstr "" + +#: src/bibtex.c:117 +msgid "Series of books in which the book was published" +msgstr "" + +#: src/bibtex.c:118 +msgid "Title of the work" +msgstr "Titel der Arbeit" + +#: src/bibtex.c:119 +msgid "Type of technical report" +msgstr "" + +#: src/bibtex.c:120 +msgid "Internet address" +msgstr "Internetadresse" + +#: src/bibtex.c:121 +msgid "Number of the volume" +msgstr "" + +#: src/bibtex.c:122 +msgid "Year of publication or creation if unpublished" +msgstr "" +"Jahr der Publikation oder der Erstellung, wenn das Werk noch nicht " +"veröffentlicht ist." + +#: src/bibtex.c:127 +msgid "Recipient's Address" +msgstr ""
Modified: trunk/geanylatex/po/geanylatex.pot =================================================================== --- trunk/geanylatex/po/geanylatex.pot 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/po/geanylatex.pot 2008-11-17 22:29:05 UTC (rev 303) @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-11-14 01:00+0100\n" +"POT-Creation-Date: 2008-11-14 02:12+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME EMAIL@ADDRESS\n" "Language-Team: LANGUAGE LL@li.org\n" @@ -16,86 +16,86 @@ "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n"
-#: src/geanylatex.c:54 +#: src/geanylatex.c:29 msgid "LaTeX" msgstr ""
-#: src/geanylatex.c:54 +#: src/geanylatex.c:29 msgid "Plugin to provide better LaTeX support" msgstr ""
-#: src/geanylatex.c:135 +#: src/geanylatex.c:90 msgid "Insert label" msgstr ""
-#: src/geanylatex.c:148 +#: src/geanylatex.c:103 msgid "Label name:" msgstr ""
-#: src/geanylatex.c:179 +#: src/geanylatex.c:134 msgid "Insert reference" msgstr ""
-#: src/geanylatex.c:192 +#: src/geanylatex.c:147 msgid "Ref name:" msgstr ""
-#: src/geanylatex.c:202 +#: src/geanylatex.c:157 msgid "standard reference" msgstr ""
-#: src/geanylatex.c:207 +#: src/geanylatex.c:162 msgid "page reference" msgstr ""
-#: src/geanylatex.c:372 +#: src/geanylatex.c:327 msgid "More" msgstr ""
#. Documentclass -#: src/geanylatex.c:463 +#: src/geanylatex.c:418 msgid "Documentclass:" msgstr ""
-#: src/geanylatex.c:466 +#: src/geanylatex.c:421 msgid "Choose the kind of document you want to write" msgstr ""
#. Encoding -#: src/geanylatex.c:479 +#: src/geanylatex.c:434 msgid "Encoding:" msgstr ""
-#: src/geanylatex.c:483 +#: src/geanylatex.c:438 msgid "Set the encoding for your new document" msgstr ""
#. Scriptsize -#: src/geanylatex.c:498 +#: src/geanylatex.c:453 msgid "Fontsize:" msgstr ""
-#: src/geanylatex.c:501 +#: src/geanylatex.c:456 msgid "Set the default fontsize of your new document" msgstr ""
#. Author -#: src/geanylatex.c:514 +#: src/geanylatex.c:469 msgid "Author:" msgstr ""
-#: src/geanylatex.c:517 +#: src/geanylatex.c:472 msgid "" "Sets the value of the \author command. In most cases this should be your " "name" msgstr ""
#. Date -#: src/geanylatex.c:528 +#: src/geanylatex.c:483 msgid "Date:" msgstr ""
-#: src/geanylatex.c:531 +#: src/geanylatex.c:486 msgid "" "Sets the value of the \date command inside header of your newly created " "LaTeX-document. Keeping it at \today is a good decision if you don't need " @@ -103,95 +103,99 @@ msgstr ""
#. Title of the new document -#: src/geanylatex.c:538 +#: src/geanylatex.c:493 msgid "Title:" msgstr ""
-#: src/geanylatex.c:540 +#: src/geanylatex.c:495 msgid "Sets the title of your new document." msgstr ""
#. Papersize -#: src/geanylatex.c:547 +#: src/geanylatex.c:502 msgid "Paper size:" msgstr ""
-#: src/geanylatex.c:550 +#: src/geanylatex.c:505 msgid "Choose the paper format for the newly created document" msgstr ""
#. Building the wizard-dialog and showing it -#: src/geanylatex.c:565 +#: src/geanylatex.c:520 msgid "LaTeX-Wizard" msgstr ""
-#: src/geanylatex.c:575 +#: src/geanylatex.c:530 msgid "Use KOMA-script classes if possible" msgstr ""
-#: src/geanylatex.c:578 +#: src/geanylatex.c:533 msgid "" "Uses the KOMA-script classes by Markus Kohm.\n" "Keep in mind: To compile your document these classes have to be installed " "before." msgstr ""
-#: src/geanylatex.c:584 +#: src/geanylatex.c:539 msgid "Use draft mode" msgstr ""
-#: src/geanylatex.c:586 +#: src/geanylatex.c:541 msgid "" "Set the draft flag inside new created documents to get documents with a " "number of debugging helpers" msgstr ""
-#: src/geanylatex.c:794 +#: src/geanylatex.c:750 msgid "_LaTeX" msgstr ""
-#: src/geanylatex.c:800 +#: src/geanylatex.c:756 msgid "LaTeX-_Wizard" msgstr ""
-#: src/geanylatex.c:803 +#: src/geanylatex.c:759 msgid "Starts a Wizard to easily create LaTeX-documents" msgstr ""
-#: src/geanylatex.c:808 +#: src/geanylatex.c:764 msgid "Insert _Special Character" msgstr ""
-#: src/geanylatex.c:810 +#: src/geanylatex.c:766 msgid "Helps to use some not very common letters and signs" msgstr ""
-#: src/geanylatex.c:817 +#: src/geanylatex.c:773 msgid "Insert _Reference" msgstr ""
-#: src/geanylatex.c:819 +#: src/geanylatex.c:775 msgid "Inserting references to the document" msgstr ""
-#: src/geanylatex.c:823 +#: src/geanylatex.c:779 msgid "Insert _Label" msgstr ""
-#: src/geanylatex.c:825 +#: src/geanylatex.c:781 msgid "Helps at inserting labels to a document" msgstr ""
+#: src/geanylatex.c:785 +msgid "Insert _BiBTeX entry" +msgstr "" + #. init keybindins -#: src/geanylatex.c:830 +#: src/geanylatex.c:790 msgid "Insert \label" msgstr ""
-#: src/geanylatex.c:831 +#: src/geanylatex.c:791 msgid "Insert \ref" msgstr ""
-#: src/geanylatex.c:832 +#: src/geanylatex.c:792 msgid "Run LaTeX-Wizard" msgstr ""
@@ -239,7 +243,7 @@ msgid "IBM 852 code page" msgstr ""
-#: src/latexencodings.c:54 src/letters.c:41 +#: src/latexencodings.c:54 src/letters.c:41 src/bibtex.c:34 msgid "Misc" msgstr ""
@@ -262,3 +266,269 @@ #: src/letters.c:44 msgid "Binary operation" msgstr "" + +#: src/bibtex.c:25 +msgid "Article" +msgstr "" + +#: src/bibtex.c:26 +msgid "Book" +msgstr "" + +#: src/bibtex.c:27 +msgid "Booklet" +msgstr "" + +#: src/bibtex.c:28 +msgid "Conference" +msgstr "" + +#: src/bibtex.c:29 +msgid "Inbook" +msgstr "" + +#: src/bibtex.c:30 +msgid "Incollection" +msgstr "" + +#: src/bibtex.c:31 +msgid "Inproceedings" +msgstr "" + +#: src/bibtex.c:32 +msgid "Manual" +msgstr "" + +#: src/bibtex.c:33 +msgid "Mastersthesis" +msgstr "" + +#: src/bibtex.c:35 +msgid "PhdThesis" +msgstr "" + +#: src/bibtex.c:36 +msgid "Proceedings" +msgstr "" + +#: src/bibtex.c:37 +msgid "Techreport" +msgstr "" + +#: src/bibtex.c:38 +msgid "Unpublished" +msgstr "" + +#: src/bibtex.c:41 +msgid "Address" +msgstr "" + +#: src/bibtex.c:42 +msgid "Annote" +msgstr "" + +#: src/bibtex.c:43 +msgid "Author" +msgstr "" + +#: src/bibtex.c:44 +msgid "Booktitle" +msgstr "" + +#: src/bibtex.c:45 +msgid "Chapter" +msgstr "" + +#: src/bibtex.c:46 +msgid "Crossref" +msgstr "" + +#: src/bibtex.c:47 +msgid "Edition" +msgstr "" + +#: src/bibtex.c:48 +msgid "Editor" +msgstr "" + +#: src/bibtex.c:49 +msgid "E-print" +msgstr "" + +#: src/bibtex.c:50 +msgid "HowPublished" +msgstr "" + +#: src/bibtex.c:51 +msgid "Institution" +msgstr "" + +#: src/bibtex.c:52 +msgid "Journal" +msgstr "" + +#: src/bibtex.c:53 +msgid "Key" +msgstr "" + +#: src/bibtex.c:54 +msgid "Month" +msgstr "" + +#: src/bibtex.c:55 +msgid "Note" +msgstr "" + +#: src/bibtex.c:56 +msgid "Number" +msgstr "" + +#: src/bibtex.c:57 +msgid "Organization" +msgstr "" + +#: src/bibtex.c:58 +msgid "Pages" +msgstr "" + +#: src/bibtex.c:59 +msgid "Publisher" +msgstr "" + +#: src/bibtex.c:60 +msgid "School" +msgstr "" + +#: src/bibtex.c:61 +msgid "Series" +msgstr "" + +#: src/bibtex.c:62 +msgid "Title" +msgstr "" + +#: src/bibtex.c:63 +msgid "Type" +msgstr "" + +#: src/bibtex.c:64 +msgid "URL" +msgstr "" + +#: src/bibtex.c:65 +msgid "Volume" +msgstr "" + +#: src/bibtex.c:66 +msgid "Year" +msgstr "" + +#: src/bibtex.c:97 +msgid "Address of publisher" +msgstr "" + +#: src/bibtex.c:98 +msgid "Annotation for annotated bibliography styles" +msgstr "" + +#: src/bibtex.c:99 +msgid "Name(s) of the author(s), separated by 'and' if more than one" +msgstr "" + +#: src/bibtex.c:100 +msgid "Title of the book, if only part of it is being cited" +msgstr "" + +#: src/bibtex.c:101 +msgid "Chapter number" +msgstr "" + +#: src/bibtex.c:102 +msgid "Citation key of the cross-referenced entry" +msgstr "" + +#: src/bibtex.c:103 +msgid "Edition of the book (such as "first" or "second")" +msgstr "" + +#: src/bibtex.c:104 +msgid "Name(s) of the editor(s), separated by 'and' if more than one" +msgstr "" + +#: src/bibtex.c:105 +msgid "Specification of electronic publication" +msgstr "" + +#: src/bibtex.c:106 +msgid "Publishing method if the method is nonstandard" +msgstr "" + +#: src/bibtex.c:107 +msgid "Institution that was involved in the publishing" +msgstr "" + +#: src/bibtex.c:108 +msgid "Journal or magazine in which the work was published" +msgstr "" + +#: src/bibtex.c:109 +msgid "" +"Hidden field used for specifying or overriding the alphabetical order of " +"entries" +msgstr "" + +#: src/bibtex.c:110 +msgid "Month of publication or creation if unpublished" +msgstr "" + +#: src/bibtex.c:111 +msgid "Miscellaneous extra information" +msgstr "" + +#: src/bibtex.c:112 +msgid "Number of journal, magazine, or tech-report" +msgstr "" + +#: src/bibtex.c:113 +msgid "Sponsor of the conference" +msgstr "" + +#: src/bibtex.c:114 +msgid "Page numbers separated by commas or double-hyphens" +msgstr "" + +#: src/bibtex.c:115 +msgid "Name of publisher" +msgstr "" + +#: src/bibtex.c:116 +msgid "School where thesis was written" +msgstr "" + +#: src/bibtex.c:117 +msgid "Series of books in which the book was published" +msgstr "" + +#: src/bibtex.c:118 +msgid "Title of the work" +msgstr "" + +#: src/bibtex.c:119 +msgid "Type of technical report" +msgstr "" + +#: src/bibtex.c:120 +msgid "Internet address" +msgstr "" + +#: src/bibtex.c:121 +msgid "Number of the volume" +msgstr "" + +#: src/bibtex.c:122 +msgid "Year of publication or creation if unpublished" +msgstr "" + +#: src/bibtex.c:127 +msgid "Recipient's Address" +msgstr ""
Modified: trunk/geanylatex/src/Makefile.am =================================================================== --- trunk/geanylatex/src/Makefile.am 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/src/Makefile.am 2008-11-17 22:29:05 UTC (rev 303) @@ -1,5 +1,6 @@ lib_LTLIBRARIES = geanylatex.la -geanylatex_la_SOURCES = geanylatex.c datatypes.h latexencodings.c latexencodings.h letters.c letters.h +geanylatex_la_SOURCES = geanylatex.c geanylatex.h datatypes.h latexencodings.c latexencodings.h letters.c letters.h bibtex.h bibtex.c + geanylatex_la_LDFLAGS = -module -avoid-version geanylatex_la_LIBADD = @GEANY_LIBS@ $(INTLLIBS)
Added: trunk/geanylatex/src/bibtex.c =================================================================== --- trunk/geanylatex/src/bibtex.c (rev 0) +++ trunk/geanylatex/src/bibtex.c 2008-11-17 22:29:05 UTC (rev 303) @@ -0,0 +1,231 @@ +/* + * bibtex.c + * + * Copyright 2008 Frank Lanitz <frank(at)frank(dot)uvena(dot)de> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * 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 + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#include "bibtex.h" +#include <string.h> + +#define set_status(entry_number, flag) \ + fields[entry_number] = flag; + + +gchar *label_types[] = { + N_("Article"), + N_("Book"), + N_("Booklet"), + N_("Conference"), + N_("Inbook"), + N_("Incollection"), + N_("Inproceedings"), + N_("Manual"), + N_("Mastersthesis"), + N_("Misc"), + N_("PhdThesis"), + N_("Proceedings"), + N_("Techreport"), + N_("Unpublished")}; + + +const gchar *label_entry[] = { + N_("Address"), + N_("Annote"), + N_("Author"), + N_("Booktitle"), + N_("Chapter"), + N_("Crossref"), + N_("Edition"), + N_("Editor"), + N_("E-print"), + N_("HowPublished"), + N_("Institution"), + N_("Journal"), + N_("Key"), + N_("Month"), + N_("Note"), + N_("Number"), + N_("Organization"), + N_("Pages"), + N_("Publisher"), + N_("School"), + N_("Series"), + N_("Title"), + N_("Type"), + N_("URL"), + N_("Volume"), + N_("Year")}; + +const gchar *label_entry_keywords[] = { + ("Address"), + ("Annote"), + ("Author"), + ("Booktitle"), + ("Chapter"), + ("Crossref"), + ("Edition"), + ("Editor"), + ("E-print"), + ("HowPublished"), + ("Institution"), + ("Journal"), + ("Key"), + ("Month"), + ("Note"), + ("Number"), + ("Organization"), + ("Pages"), + ("Publisher"), + ("School"), + ("Series"), + ("Title"), + ("Type"), + ("URL"), + ("Volume"), + ("Year")}; + +const gchar *tooltips[] = { + N_("Address of publisher"), + N_("Annotation for annotated bibliography styles"), + N_("Name(s) of the author(s), separated by 'and' if more than one"), + N_("Title of the book, if only part of it is being cited"), + N_("Chapter number"), + N_("Citation key of the cross-referenced entry"), + N_("Edition of the book (such as "first" or "second")"), + N_("Name(s) of the editor(s), separated by 'and' if more than one"), + N_("Specification of electronic publication"), + N_("Publishing method if the method is nonstandard"), + N_("Institution that was involved in the publishing"), + N_("Journal or magazine in which the work was published"), + N_("Hidden field used for specifying or overriding the alphabetical order of entries"), + N_("Month of publication or creation if unpublished"), + N_("Miscellaneous extra information"), + N_("Number of journal, magazine, or tech-report"), + N_("Sponsor of the conference"), + N_("Page numbers separated by commas or double-hyphens"), + N_("Name of publisher"), + N_("School where thesis was written"), + N_("Series of books in which the book was published"), + N_("Title of the work"), + N_("Type of technical report"), + N_("Internet address"), + N_("Number of the volume"), + N_("Year of publication or creation if unpublished")}; + + +static int get_entry_pos(char *str) +{ + int i; + if(str != NULL) { + for (i = 0; i < N_ENTRIES; i++) { + if (strcasecmp(str, label_entry[i]) == 0) + return i; + } + } + return -1; +} + + +void insert_bibtex_entry(G_GNUC_UNUSED GtkMenuItem * menuitem, G_GNUC_UNUSED gpointer gdata) +{ + int doctype = GPOINTER_TO_INT(gdata); + gboolean fields[N_ENTRIES]; + gchar *output = g_strup("@"); + int i; + + for (i = 0; i < N_ENTRIES; i++) + { + set_status(i, FALSE); + } + + switch(doctype) { + case ARTICLE: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("journal"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case BOOK: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("editor"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("publisher"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case BOOKLET: + set_status(get_entry_pos("title"), TRUE); + break; + case CONFERENCE: + case INCOLLECTION: + case INPROCEEDINGS: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("booktitle"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case INBOOK: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("editor"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("chapter"), TRUE); + set_status(get_entry_pos("pages"), TRUE); + set_status(get_entry_pos("publisher"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case MANUAL: + set_status(get_entry_pos("title"), TRUE); + break; + case MASTERSTHESIS: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("school"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case MISC: + for (i = 0; i < N_ENTRIES; i++) + { + set_status(i, TRUE); + } + case PHDTHESIS: + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case TECHREPORT: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("institution"), TRUE); + set_status(get_entry_pos("year"), TRUE); + break; + case UNPUBLISHED: + set_status(get_entry_pos("author"), TRUE); + set_status(get_entry_pos("title"), TRUE); + set_status(get_entry_pos("note"), TRUE); + } + + output = g_strconcat(output, label_types[doctype], "{ \n",NULL); + for (i = 0; i < N_ENTRIES; i++) + { + if (fields[i] == TRUE) + { + output = g_strconcat(output, label_entry_keywords[i], "= {},\n", NULL); + } + } + output = g_strconcat(output, "}\n", NULL); + insert_string(output); + g_free(output); +}
Added: trunk/geanylatex/src/bibtex.h =================================================================== --- trunk/geanylatex/src/bibtex.h (rev 0) +++ trunk/geanylatex/src/bibtex.h 2008-11-17 22:29:05 UTC (rev 303) @@ -0,0 +1,83 @@ + /* + * bibtex.h + * + * Copyright 2008 Frank Lanitz <frank(at)frank(dot)uvena(dot)de> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * 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 + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#ifndef LATEXBIBTEX_H +#define LATEXBIBTEX_H + +#include "geanylatex.h" + +/* Define generic stuff */ +enum { + ARTICLE = 0, + BOOK, + BOOKLET, + CONFERENCE, + INBOOK, + INCOLLECTION, + INPROCEEDINGS, + MANUAL, + MASTERSTHESIS, + MISC, + PHDTHESIS, + PROCEEDINGS, + TECHREPORT, + UNPUBLISHED, + N_TYPES +}; + + +enum { + ADDRESS = 0, + ANNOTE, + AUTHOR, + BOOKTITLE, + CHAPTER, + CROSSREF, + EDITION, + EDITOR, + EPRINT, + HOWPUBLISHED, + INSTITUTION, + JOURNAL, + KEY, + MONTH, + NOTE, + NUMBER, + ORGANIZATION, + PAGES, + PUBLISHER, + SCHOOL, + SERIES, + TITLE, + TYPE, + URL, + VOLUME, + YEAR, + N_ENTRIES +}; + +extern gchar *label_types[]; + +int push_bibtex_entry(int style, GeanyDocument *doc); + +void insert_bibtex_entry(G_GNUC_UNUSED GtkMenuItem * menuitem, G_GNUC_UNUSED gpointer gdata); + +#endif
Modified: trunk/geanylatex/src/geanylatex.c =================================================================== --- trunk/geanylatex/src/geanylatex.c 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/geanylatex/src/geanylatex.c 2008-11-17 22:29:05 UTC (rev 303) @@ -22,36 +22,11 @@ /* LaTeX plugin */ /* This plugin improves the work with LaTeX and Geany.*/
-#include "geany.h" -#include "support.h" -#include "plugindata.h" -#include "document.h" -#include "editor.h" -#include "filetypes.h" -#include "templates.h" -#include "utils.h" -#include "ui_utils.h" -#include "keybindings.h" -#include "prefs.h" -#include "pluginmacros.h" +#include "geanylatex.h"
-#ifdef HAVE_LOCALE_H -# include <locale.h> -#endif - -#include "datatypes.h" -#include "letters.h" -#include "latexencodings.h" - -typedef void (*SubMenuCallback) (G_GNUC_UNUSED GtkMenuItem * menuitem, G_GNUC_UNUSED gpointer gdata); - -GeanyPlugin *geany_plugin; -GeanyData *geany_data; -GeanyFunctions *geany_functions; - PLUGIN_VERSION_CHECK(104)
-PLUGIN_SET_INFO(_("LaTeX"), _("Plugin to provide better LaTeX support"), "0.2", +PLUGIN_SET_INFO(_("LaTeX"), _("Plugin to provide better LaTeX support"), "0.3dev", "Frank Lanitz frank@frank.uvena.de")
GtkWidget *menu_latex = NULL; @@ -61,42 +36,24 @@ GtkWidget *menu_latex_menu_special_char_submenu = NULL; GtkWidget *menu_latex_ref = NULL; GtkWidget *menu_latex_label = NULL; +GtkWidget *menu_latex_bibtex = NULL; +GtkWidget *menu_latex_bibtex_submenu = NULL;
static GtkWidget *main_menu_item = NULL;
- /* Doing some basic keybinding stuff */ enum { LATEX_WIZZARD_KB, LATEX_INSERT_LABEL_KB, LATEX_INSERT_REF_KB, +/* LATEX_INSERT_BIBTEX_ENTRY_KB,*/ COUNT_KB };
PLUGIN_KEY_GROUP(geanylatex, COUNT_KB)
- -#define TEMPLATE_LATEX "\ -\documentclass[{CLASSOPTION}]{{DOCUMENTCLASS}}\n\ -{ENCODING}\ -{TITLE}\ -{AUTHOR}\ -{DATE}\ -\begin{document}\n\ -\n\ -\end{document}\n" - -#define create_sub_menu(base_menu, menu, item, title) \ - (menu) = gtk_menu_new(); \ - (item) = gtk_menu_item_new_with_mnemonic((title)); \ - gtk_menu_item_set_submenu(GTK_MENU_ITEM((item)), (menu)); \ - gtk_container_add(GTK_CONTAINER(base_menu), (item)); \ - gtk_widget_show((item)); - -#define MAX_MENU_ENTRIES 20 - -static void +void insert_string(gchar *string) { GeanyDocument *doc = NULL; @@ -762,6 +719,7 @@ gtk_widget_destroy(dialog); }
+ static void kblabel_insert(G_GNUC_UNUSED guint key_id) { insert_label_activated(NULL, NULL); @@ -777,12 +735,19 @@ wizard_activated(NULL, NULL); }
+/*static void kb_bibtex_entry_insert(G_GNUC_UNUSED guint key_id) +{ + insert_bibtex_entry(NULL, NULL); +}*/
void plugin_init(G_GNUC_UNUSED GeanyData * data) { GtkTooltips *tooltips = NULL; + GtkWidget *tmp = NULL; + int i;
+ p_main->locale_init(LOCALEDIR, GETTEXT_PACKAGE);
init_encodings_latex(); @@ -824,19 +789,36 @@ gtk_container_add(GTK_CONTAINER(menu_latex_menu), menu_latex_label); g_signal_connect((gpointer) menu_latex_label, "activate", G_CALLBACK(insert_label_activated), NULL);
+ menu_latex_bibtex = gtk_menu_item_new_with_mnemonic(_("BibTeX")); + gtk_container_add(GTK_CONTAINER(menu_latex_menu), menu_latex_bibtex); + + menu_latex_bibtex_submenu = gtk_menu_new(); + gtk_menu_item_set_submenu(GTK_MENU_ITEM(menu_latex_bibtex), menu_latex_bibtex_submenu); + + for (i = 0; i < N_TYPES; i++) + { + tmp = NULL; + tmp = gtk_menu_item_new_with_mnemonic(label_types[i]); + gtk_container_add(GTK_CONTAINER(menu_latex_bibtex_submenu), tmp); + g_signal_connect((gpointer) tmp, "activate", G_CALLBACK(insert_bibtex_entry), GINT_TO_POINTER(i)); + } + /* init keybindins */
p_keybindings->set_item(plugin_key_group, LATEX_WIZZARD_KB, kbwizard, - 0, 0, "run_latex_wizard", _("Run LaTeX-Wizard"), menu_latex_wizzard); + 0, 0, "run_latex_wizard", _("Run LaTeX-Wizard"), menu_latex_wizzard); p_keybindings->set_item(plugin_key_group, LATEX_INSERT_LABEL_KB, kblabel_insert, - 0, 0, "insert_latex_label", _("Insert \label"), menu_latex_label); + 0, 0, "insert_latex_label", _("Insert \label"), menu_latex_label); p_keybindings->set_item(plugin_key_group, LATEX_INSERT_REF_KB, kbref_insert, - 0, 0, "insert_latex_ref", _("Insert \ref"), menu_latex_ref); + 0, 0, "insert_latex_ref", _("Insert \ref"), menu_latex_ref); +/* p_keybindings->set_item(plugin_key_group, LATEX_INSERT_BIBTEX_ENTRY_KB, + kb_bibtex_entry_insert, 0, 0, "insert_latex_bibtex_entry", _("Add BiBTeX entry"), + menu_latex_bibtex); */
- p_ui->add_document_sensitive(menu_latex_menu_special_char); p_ui->add_document_sensitive(menu_latex_ref); p_ui->add_document_sensitive(menu_latex_label); + p_ui->add_document_sensitive(menu_latex_bibtex);
gtk_widget_set_sensitive(menu_latex_wizzard, TRUE); gtk_widget_show_all(menu_latex);
Added: trunk/geanylatex/src/geanylatex.h =================================================================== --- trunk/geanylatex/src/geanylatex.h (rev 0) +++ trunk/geanylatex/src/geanylatex.h 2008-11-17 22:29:05 UTC (rev 303) @@ -0,0 +1,79 @@ + /* + * geanylatex.h + * + * Copyright 2008 Frank Lanitz <frank(at)frank(dot)uvena(dot)de> + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * 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 + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +/* LaTeX plugin */ +/* This plugin improves the work with LaTeX and Geany.*/ + +#ifndef GEANYLATEX_H +#define GEANYLATEX_H + +#include "geany.h" +#include "support.h" +#include "plugindata.h" +#include "document.h" +#include "editor.h" +#include "filetypes.h" +#include "templates.h" +#include "utils.h" +#include "ui_utils.h" +#include "keybindings.h" +#include "prefs.h" +#include "pluginmacros.h" + +#ifdef HAVE_LOCALE_H +# include <locale.h> +#endif + +#include "datatypes.h" +#include "letters.h" +#include "latexencodings.h" +#include "bibtex.h" + +typedef void (*SubMenuCallback) (G_GNUC_UNUSED GtkMenuItem * menuitem, G_GNUC_UNUSED gpointer gdata); + + +GeanyPlugin *geany_plugin; +GeanyData *geany_data; +GeanyFunctions *geany_functions; + + +#define TEMPLATE_LATEX "\ +\documentclass[{CLASSOPTION}]{{DOCUMENTCLASS}}\n\ +{ENCODING}\ +{TITLE}\ +{AUTHOR}\ +{DATE}\ +\begin{document}\n\ +\n\ +\end{document}\n" + +#define create_sub_menu(base_menu, menu, item, title) \ + (menu) = gtk_menu_new(); \ + (item) = gtk_menu_item_new_with_mnemonic((title)); \ + gtk_menu_item_set_submenu(GTK_MENU_ITEM((item)), (menu)); \ + gtk_container_add(GTK_CONTAINER(base_menu), (item)); \ + gtk_widget_show((item)); + +#define MAX_MENU_ENTRIES 20 + +extern void insert_string(gchar *string); + +#endif
Modified: trunk/wscript =================================================================== --- trunk/wscript 2008-11-16 17:56:27 UTC (rev 302) +++ trunk/wscript 2008-11-17 22:29:05 UTC (rev 303) @@ -82,9 +82,9 @@ '0.3'), Plugin('geanylatex', [ 'geanylatex/src/latexencodings.c', 'geanylatex/src/geanylatex.c', - 'geanylatex/src/letters.c' ], + 'geanylatex/src/letters.c', 'geanylatex/src/bibtex.c' ], [ 'geanylatex' ], # include dirs - '0.2'), + '0.3dev'), Plugin('geanylua', [ 'geanylua/geanylua.c' ], # the other source files are listed in build_lua() [ 'geanylua' ], # include dirs
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
plugins-commits@lists.geany.org