Branch: refs/heads/master
Author: Colomban Wendling <ban(a)herbesfolles.org>
Committer: Colomban Wendling <ban(a)herbesfolles.org>
Date: Fri, 23 Mar 2018 04:48:18 UTC
Commit: 11da5557a0addb47ede0273d3975486daf9c82c0
https://github.com/geany/geany/commit/11da5557a0addb47ede0273d3975486daf9c8…
Log Message:
-----------
Skip the format specifier when loading a global tag file
This prevents loading a spurious tag for the format specifier line, as
well as fixing loading of CTags format with a format specifier line.
Before this change, the file pointer was rewound after reading a format
specifier line; but this had various unwanted side effects depending on
the recognized format:
* For TagManager and Pipe formats, it led to loading a tag named after
the format specifier (e.g. a literal "# format=tagmanager"). This
was fairly harmless and only introduced a spurious tag seldom even
used because "#" isn't usually considered for looking up completions.
* For CTags format, having an explicit specifier led to failure to load
the file in most cases because the specifier line would be parsed but
doesn't usually follow the format's requirements, leading to early
abortion loading that file. On some very specific specifier lines
actually following CTags format, it could have led to loading a
spurious tag instead.
Fixes #1814 and closes #1816.
Modified Paths:
--------------
src/tagmanager/tm_source_file.c
Modified: src/tagmanager/tm_source_file.c
5 lines changed, 3 insertions(+), 2 deletions(-)
===================================================================
@@ -537,7 +537,7 @@ GPtrArray *tm_source_file_read_tags_file(const gchar *tags_file, TMParserType mo
return NULL; /* early out on error */
}
else
- { /* We read the first line for the format specification. */
+ { /* We read (and discard) the first line for the format specification. */
if (buf[0] == '#' && strstr((gchar*) buf, "format=pipe") != NULL)
format = TM_FILE_FORMAT_PIPE;
else if (buf[0] == '#' && strstr((gchar*) buf, "format=tagmanager") != NULL)
@@ -562,8 +562,9 @@ GPtrArray *tm_source_file_read_tags_file(const gchar *tags_file, TMParserType mo
format = TM_FILE_FORMAT_PIPE;
else if (tab_cnt > 1)
format = TM_FILE_FORMAT_CTAGS;
+ /* reset the file pointer, to start reading again from the beginning */
+ rewind(fp);
}
- rewind(fp); /* reset the file pointer, to start reading again from the beginning */
}
file_tags = g_ptr_array_new();
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Frank Lanitz <frank(a)frank.uvena.de>
Committer: Frank Lanitz <frank(a)frank.uvena.de>
Date: Sat, 17 Mar 2018 17:45:20 UTC
Commit: 7c6b4794b1c0f9696465fb8920ccffc107f5b4d8
https://github.com/geany/geany/commit/7c6b4794b1c0f9696465fb8920ccffc107f5b…
Log Message:
-----------
Small update of German translation
Modified Paths:
--------------
po/de.po
Modified: po/de.po
26 lines changed, 13 insertions(+), 13 deletions(-)
===================================================================
@@ -11,7 +11,7 @@ msgid ""
msgstr ""
"Project-Id-Version: Geany 1.33\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-18 23:33+0100\n"
+"POT-Creation-Date: 2018-03-17 18:43+0100\n"
"PO-Revision-Date: 2015-03-31 07:10+0200\n"
"Last-Translator: Frank Lanitz <frank(a)frank.uvena.de>\n"
"Language-Team: German <geany-i18n(a)uvena.de>\n"
@@ -2282,8 +2282,9 @@ msgid "Other:"
msgstr "Andere:"
#: ../src/about.c:48
+#, fuzzy
msgid ""
-"Copyright (c) 2005-2017\n"
+"Copyright (c) 2005-2018\n"
"Colomban Wendling\n"
"Nick Treleaven\n"
"Matthew Brush\n"
@@ -2850,8 +2851,7 @@ msgstr "Datei »%s« neu geladen."
#. * of the newly opened file, %s indicates whether the file is opened read-only
#. * (it is replaced with the string ", read-only").
#: ../src/document.c:1495
-#, c-format
-msgid "File %s opened(%d%s)."
+msgid "File %s opened (%d%s)."
msgstr "Datei »%s« geöffnet (%d%s)."
#: ../src/document.c:1497
@@ -4444,9 +4444,9 @@ msgstr "_Mehrzeilen-Erkennung (multi-line matching) benutzen"
#: ../src/search.c:330
msgid ""
"Perform regular expression matching on the whole buffer at once rather than "
-"line by line, allowing matches to span multiple lines. In this mode, "
-"newline characters are part of the input and can be captured as normal "
-"characters by the pattern."
+"line by line, allowing matches to span multiple lines. In this mode, newline "
+"characters are part of the input and can be captured as normal characters by "
+"the pattern."
msgstr ""
"Führt die Erkennung des Suchmusters auf das komplette Dokument, anstatt "
"Zeile für Zeile, aus. Dies erlaubt es, auch Muster zu finden, die über "
@@ -4670,30 +4670,30 @@ msgstr ""
" Dies ist ein schwerwiegendes Problem, so dass Geany nun beendet werden "
"muss. "
-#: ../src/spawn.c:94 ../src/spawn.c:144 ../src/spawn.c:188
+#: ../src/spawn.c:96 ../src/spawn.c:146 ../src/spawn.c:190
msgid "Text ended before matching quote was found"
msgstr "Der Text endete, bevor das schleißende Zeichen gefunden wurde."
#. TL note: from glib
-#: ../src/spawn.c:130
+#: ../src/spawn.c:132
msgid "Text was empty (or contained only whitespace)"
msgstr "Text war leer (oder hat nur Leerzeichen enthalten)"
-#: ../src/spawn.c:151 ../src/spawn.c:165
+#: ../src/spawn.c:153 ../src/spawn.c:167
msgid "A quoted Windows program name must be entirely inside the quotes"
msgstr ""
"Ein Windows-Programm-Name in Anführungszeichen muss den kompletten Namen "
"beinhalten."
-#: ../src/spawn.c:258
+#: ../src/spawn.c:260
msgid "Program not found"
msgstr "Programm nicht gefunden."
-#: ../src/spawn.c:764
+#: ../src/spawn.c:766
msgid "Failed to change to the working directory"
msgstr "Konnte das Arbeitsverzeichnis nicht wechseln."
-#: ../src/spawn.c:769
+#: ../src/spawn.c:771
msgid "Unknown error executing child process"
msgstr "Unbekannter Fehler beim Ausführen des Kind-Prozess aufgetreten."
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: LarsGit223 <LarsGit223(a)users.noreply.github.com>
Committer: elextr <elextr(a)gmail.com>
Date: Wed, 14 Mar 2018 22:46:23 UTC
Commit: 6e4eece98138d07063962926f4a6f877edbd8bb9
https://github.com/geany/geany/commit/6e4eece98138d07063962926f4a6f877edbd8…
Log Message:
-----------
manual: added documentation about replacement of 'untitled.ext' with filename (#1804)
On "Save As..." a text in the form 'untitled.ext' will be replaced with the chosen
filename if it is found in the first 3 lines of the document. This PR adds a description
of the feature to the manual. Fixes #753.
Modified Paths:
--------------
doc/geany.txt
Modified: doc/geany.txt
9 lines changed, 9 insertions(+), 0 deletions(-)
===================================================================
@@ -538,6 +538,15 @@ there is a selection, only the selected text is copied. This can be
useful when making temporary copies of text or for creating
documents with similar or identical contents.
+Automatic filename insertion on `Save As...`
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+If a document is saved via `Document->Save As...` then the filename is
+automatically inserted into the comment header replacing text like
+`untitled.ext` in the first 3 lines of the file. E.g. if a new ``.c``
+file is created using `File->New (with Template)` then the text `untitled.c`
+in line 2 would be replaced with the choosen file name on `Save As...`
+(this example assumes the default file templates being used).
+
Character sets and Unicode Byte-Order-Mark (BOM)
------------------------------------------------
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Frank Lanitz <fl(a)flyingcircus.io>
Committer: Frank Lanitz <fl(a)flyingcircus.io>
Date: Mon, 12 Mar 2018 11:39:39 UTC
Commit: e4bc8c3de13db79e3955b501fb910b8081660742
https://github.com/geany/geany/commit/e4bc8c3de13db79e3955b501fb910b8081660…
Log Message:
-----------
Update of Swedish translation
Modified Paths:
--------------
po/sv.po
Modified: po/sv.po
70 lines changed, 33 insertions(+), 37 deletions(-)
===================================================================
@@ -7,8 +7,8 @@ msgid ""
msgstr ""
"Project-Id-Version: Geany 1.32\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2018-01-18 23:33+0100\n"
-"PO-Revision-Date: 2017-10-06 15:20+0200\n"
+"POT-Creation-Date: 2018-03-12 02:36+0000\n"
+"PO-Revision-Date: 2018-03-12 09:23+0100\n"
"Last-Translator: Tony Mattsson <superxorn(a)gmail.com>\n"
"Language-Team: Swedish <geany-i18n(a)uvena.de>\n"
"Language: sv\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Poedit-SourceCharset: utf-8\n"
-"X-Generator: Poedit 2.0.4\n"
+"X-Generator: Poedit 2.0.6\n"
#: ../geany.desktop.in.h:1 ../data/geany.glade.h:343
msgid "Geany"
@@ -121,7 +121,7 @@ msgstr "Gå till symboldefinition"
#: ../data/geany.glade.h:22
msgid "Conte_xt Action"
-msgstr "Snabbmenyhändelse"
+msgstr "Snabbmenyåtgärd"
#. Column legend:
#. * [0] = Filetype constant (GEANY_FILETYPES_*)
@@ -1285,7 +1285,7 @@ msgstr "<b>Sökvägar till verktyg</b>"
#: ../data/geany.glade.h:268
msgid "Context action:"
-msgstr "Snabbmenyhändelse:"
+msgstr "Snabbmenyåtgärd:"
#: ../data/geany.glade.h:270
#, no-c-format
@@ -2225,15 +2225,15 @@ msgstr "Annat:"
#: ../src/about.c:48
msgid ""
-"Copyright (c) 2005-2017\n"
+"Copyright (c) 2005-2018\n"
"Colomban Wendling\n"
"Nick Treleaven\n"
"Matthew Brush\n"
"Enrico Tröger\n"
"Frank Lanitz\n"
"All rights reserved."
msgstr ""
-"Copyright (c) 2005-2017\n"
+"Copyright (c) 2005-2018\n"
"Colomban Wendling\n"
"Nick Treleaven\n"
"Matthew Brush\n"
@@ -2546,9 +2546,8 @@ msgid "Cannot execute context action command \"%s\": %s. %s"
msgstr "Kunde inte exekvera kontextmeny kommando \"%s\": %s. %s"
#: ../src/callbacks.c:1505
-#, fuzzy
msgid "No context action set."
-msgstr "Snabbmenyhändelse:"
+msgstr "Ingen snabbmenyåtgärd angiven."
#: ../src/dialogs.c:161 ../src/document.c:2302 ../src/document.c:2367
#: ../src/document.c:2375
@@ -2788,7 +2787,7 @@ msgstr "Filen %s laddades om."
#. * (it is replaced with the string ", read-only").
#: ../src/document.c:1495
#, c-format
-msgid "File %s opened(%d%s)."
+msgid "File %s opened (%d%s)."
msgstr "Filen %s är öppnad (%d%s)."
#: ../src/document.c:1497
@@ -3359,7 +3358,7 @@ msgstr "Undertryck komplettering av textfragment"
#: ../src/keybindings.c:411
msgid "Context Action"
-msgstr "Snabbmenyhändelse"
+msgstr "Snabbmenyåtgärd"
#: ../src/keybindings.c:413
msgid "Complete word"
@@ -3762,24 +3761,24 @@ msgid "Failed to load one or more session files."
msgstr "Kunde ej ladda en eller fler av sessionens filer."
#: ../src/libmain.c:122
-#, fuzzy
msgid ""
"Set initial column number to COLUMN for the first opened file (useful in "
"conjunction with --line)"
-msgstr "Sätt kolumn för markören vid öppnande av fil"
+msgstr ""
+"Ange inledande kolumnnummer till KOLUMN för den först öppnade filen "
+"(användbar i samband med --line)"
#: ../src/libmain.c:122
msgid "COLUMN"
-msgstr ""
+msgstr "KOLUMN"
#: ../src/libmain.c:123
-#, fuzzy
msgid "Use alternate configuration directory DIR"
-msgstr "Använd en alternativ sökväg till konfigurationsfiler"
+msgstr "Använd en alternativ sökväg till mappen MAPP"
#: ../src/libmain.c:123
msgid "DIR"
-msgstr ""
+msgstr "MAPP"
#: ../src/libmain.c:124
msgid "Print internal filetype names"
@@ -3800,27 +3799,25 @@ msgstr ""
"i en ny session"
#: ../src/libmain.c:129
-#, fuzzy
msgid ""
"Use socket filename FILE for communication with a running Geany instance"
-msgstr "Använd detta socket-filnamn vid kommunikation med en Geany instans"
+msgstr "Använd socket FIL för kommunikation med en annan Geany-instans"
#: ../src/libmain.c:129 ../src/libmain.c:143
msgid "FILE"
-msgstr ""
+msgstr "FIL"
#: ../src/libmain.c:130
msgid "Return a list of open documents in a running Geany instance"
msgstr "Returnera en lista med öppna dokument i en Geany-instans"
#: ../src/libmain.c:132
-#, fuzzy
msgid "Set initial line number to LINE for the first opened file"
-msgstr "Ange inledande radnummer för den först öppnade filen"
+msgstr "Ange inledande radnummer till RAD för den först öppnade filen"
#: ../src/libmain.c:132
msgid "LINE"
-msgstr ""
+msgstr "RAD"
#: ../src/libmain.c:133
msgid "Don't show message window at startup"
@@ -3852,7 +3849,7 @@ msgstr "Ladda inte terminal-stöd"
#: ../src/libmain.c:143
msgid "Use FILE as the dynamically-linked VTE library"
-msgstr ""
+msgstr "Använd FIL som det dynamiskt länkade VTE biblioteket"
#: ../src/libmain.c:145
msgid "Be verbose"
@@ -3867,13 +3864,12 @@ msgid "[FILES...]"
msgstr "[FILER...]"
#: ../src/libmain.c:538
-#, fuzzy
msgid "A fast and lightweight IDE."
-msgstr "Ett snabbt och lättviktigt IDE"
+msgstr "Ett snabbt och lättviktigt IDE."
#: ../src/libmain.c:539
msgid "Report bugs to https://github.com/geany/geany/issues."
-msgstr ""
+msgstr "Rapportera fel till https://github.com/geany/geany/issues."
#. note for translators: library versions are printed after this
#: ../src/libmain.c:572
@@ -4352,9 +4348,9 @@ msgstr "Använd flerraders matchning"
#: ../src/search.c:330
msgid ""
"Perform regular expression matching on the whole buffer at once rather than "
-"line by line, allowing matches to span multiple lines. In this mode, "
-"newline characters are part of the input and can be captured as normal "
-"characters by the pattern."
+"line by line, allowing matches to span multiple lines. In this mode, newline "
+"characters are part of the input and can be captured as normal characters by "
+"the pattern."
msgstr ""
"Utför en matchning för reguljärt uttryck på hela buffern samtidigt i stället "
"för rad-för-rad, så att träffar kan hittas som löper över flera rader. I "
@@ -4575,29 +4571,29 @@ msgstr ""
"körs av en annan användare.\n"
"Detta är ett allvarligt fel, och Geany kommer nu att avslutas."
-#: ../src/spawn.c:94 ../src/spawn.c:144 ../src/spawn.c:188
+#: ../src/spawn.c:96 ../src/spawn.c:146 ../src/spawn.c:190
msgid "Text ended before matching quote was found"
msgstr "Texten tog slut innan matchande citeringstecken hittades"
#. TL note: from glib
-#: ../src/spawn.c:130
+#: ../src/spawn.c:132
msgid "Text was empty (or contained only whitespace)"
msgstr "Texten var tom (eller innehöll bara tomt utrymme)"
-#: ../src/spawn.c:151 ../src/spawn.c:165
+#: ../src/spawn.c:153 ../src/spawn.c:167
msgid "A quoted Windows program name must be entirely inside the quotes"
msgstr ""
"Ett Windows-program inom citattecken måste hålla sig helt inom citat-tecknen"
-#: ../src/spawn.c:258
+#: ../src/spawn.c:260
msgid "Program not found"
msgstr "Programet kunde ej hittas"
-#: ../src/spawn.c:764
+#: ../src/spawn.c:766
msgid "Failed to change to the working directory"
msgstr "Byte av arbetsmapp misslyckades"
-#: ../src/spawn.c:769
+#: ../src/spawn.c:771
msgid "Unknown error executing child process"
msgstr "Okänt fel vid exekvering av underprocess"
@@ -5847,7 +5843,7 @@ msgstr "Skapa en DIFF från sökvägen där den aktiva filen finns"
#: ../plugins/saveactions.c:43
msgid "Save Actions"
-msgstr "Spara \"Actions\""
+msgstr "Spara åtgärder"
#: ../plugins/saveactions.c:43
msgid "This plugin provides different actions related to saving of files."
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Dimitar Toshkov Zhekov <dimitar.zhekov(a)gmail.com>
Committer: Dimitar Toshkov Zhekov <dimitar.zhekov(a)gmail.com>
Date: Wed, 26 Apr 2017 18:32:00 UTC
Commit: 1a19b397216210b9b5f19592da7bb73e87570a4c
https://github.com/geany/geany/commit/1a19b397216210b9b5f19592da7bb73e87570…
Log Message:
-----------
Read stdout/stderr in a loop when using timeout callbacks
With single reads, the input processing is limited to
(1/0.050 * DEFAULT_IO_LENGTH) KB/sec, which is pretty low.
Moved the check whether the maximum empty G_IO_IN-s are reached to a
macro, SPAWN_CHANNEL_GIO_WATCH(sc).
Modified Paths:
--------------
src/spawn.c
Modified: src/spawn.c
17 lines changed, 11 insertions(+), 6 deletions(-)
===================================================================
@@ -98,7 +98,6 @@ static gboolean spawn_parse_argv(const gchar *command_line, gint *argcp, gchar *
#endif
#define G_IO_FAILURE (G_IO_ERR | G_IO_HUP | G_IO_NVAL) /* always used together */
-#define MAX_EMPTY_GIO_INS 200
/*
@@ -847,6 +846,8 @@ typedef struct _SpawnChannelData
guint empty_gio_ins;
} SpawnChannelData;
+#define SPAWN_CHANNEL_GIO_WATCH(sc) ((sc)->empty_gio_ins < 200)
+
static void spawn_destroy_common(SpawnChannelData *sc)
{
@@ -874,7 +875,7 @@ static void spawn_destroy_cb(gpointer data)
{
SpawnChannelData *sc = (SpawnChannelData *) data;
- if (sc->empty_gio_ins < MAX_EMPTY_GIO_INS)
+ if (SPAWN_CHANNEL_GIO_WATCH(sc))
{
spawn_destroy_common(sc);
sc->channel = NULL;
@@ -917,6 +918,8 @@ static gboolean spawn_read_cb(GIOChannel *channel, GIOCondition condition, gpoin
* large stdout and stderr portions. Under Windows, looping blocks.
* - On failure, read in a loop. It won't block now, there will be no more data, and the
* IO watch is not guaranteed to be called again (under Windows this is the last call).
+ * - When using timeout callbacks, read in a loop. Otherwise, the input processing will
+ * be limited to (1/0.050 * DEFAULT_IO_LENGTH) KB/sec, which is pretty low.
*/
if (input_cond)
{
@@ -955,7 +958,7 @@ static gboolean spawn_read_cb(GIOChannel *channel, GIOCondition condition, gpoin
}
}
- if (!failure_cond)
+ if (SPAWN_CHANNEL_GIO_WATCH(sc) && !failure_cond)
break;
}
}
@@ -968,7 +971,7 @@ static gboolean spawn_read_cb(GIOChannel *channel, GIOCondition condition, gpoin
/* input only, failures are reported separately below */
sc->cb.read(buffer, input_cond, sc->cb_data);
- if (!failure_cond)
+ if (SPAWN_CHANNEL_GIO_WATCH(sc) && !failure_cond)
break;
}
}
@@ -1001,9 +1004,11 @@ static gboolean spawn_read_cb(GIOChannel *channel, GIOCondition condition, gpoin
}
/* Check for continuous activations with G_IO_IN | G_IO_PRI, without any
data to read and without errors. If detected, switch to timeout source. */
- else if (sc->empty_gio_ins < MAX_EMPTY_GIO_INS && status == G_IO_STATUS_AGAIN)
+ else if (SPAWN_CHANNEL_GIO_WATCH(sc) && status == G_IO_STATUS_AGAIN)
{
- if (++sc->empty_gio_ins == MAX_EMPTY_GIO_INS)
+ sc->empty_gio_ins++;
+
+ if (!SPAWN_CHANNEL_GIO_WATCH(sc))
{
GSource *old_source = g_main_current_source();
GSource *new_source = g_timeout_source_new(50);
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Dimitar Toshkov Zhekov <dimitar.zhekov(a)gmail.com>
Committer: Dimitar Toshkov Zhekov <dimitar.zhekov(a)gmail.com>
Date: Sun, 16 Apr 2017 15:06:55 UTC
Commit: 673a71464565cf4f92154b31e90cca265bae29b0
https://github.com/geany/geany/commit/673a71464565cf4f92154b31e90cca265bae2…
Log Message:
-----------
Fix the maximum number of G_IO_IN-s without any data
They should have been 200, not 3.
Modified Paths:
--------------
src/spawn.c
Modified: src/spawn.c
2 lines changed, 1 insertions(+), 1 deletions(-)
===================================================================
@@ -98,7 +98,7 @@ static gboolean spawn_parse_argv(const gchar *command_line, gint *argcp, gchar *
#endif
#define G_IO_FAILURE (G_IO_ERR | G_IO_HUP | G_IO_NVAL) /* always used together */
-#define MAX_EMPTY_GIO_INS 3
+#define MAX_EMPTY_GIO_INS 200
/*
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).