[Geany-Devel] Querying current file and cursor location
Steven Blatnick
steve8track at yahoo.com
Thu Jan 17 16:15:22 UTC 2013
I'm new too, but the first time I submitted something, they took a patch
I attached to an email sent to this mailing list. Subsequent
submissions, I signed up for a github account and forked geany and
geany-plugins. Using git hub, changes can be submitted through a "pull
request". I also signed up to SourceForge for submitting bugs.
Here is where I read about the process:
http://www.geany.org/Contribute/Developers
So far I've found the people on this project have been helpful and
friendly compared to my minor previous experiences with open source
projects.
Welcome :-)
Steven Blatnick
On 01/17/2013 06:17 AM, Thomas Young wrote:
> Hello,
>
> I've hacked a small change into Geany locally, to help with
> integration with gdb.
>
> Basically, what I've done is to add a '--print-location' command line
> option, which essentially just duplicates the functionality of the
> existing '--list-documents' option (through main.c/h and socket.c/h),
> but with the actual string generation bit that corresponds to
> build_document_list() changed to the following:
>
> static gchar *build_location(void)
> {
> GString *location = g_string_new(NULL);
> const gchar *filename;
> gint pos, line, col;
>
> GeanyDocument *doc = document_get_current();
> if(doc)
> {
> filename = DOC_FILENAME(doc);
> pos = sci_get_current_position(doc->editor->sci);
> line = sci_get_line_from_position(doc->editor->sci, pos);
> col = sci_get_col_from_position(doc->editor->sci, pos);
> g_string_append_printf(location, "%s:%d:%d", filename, line +
> 1, col);
> g_string_append_c(location, '\n');
> }
> return g_string_free(location, FALSE);
> }
>
> So what the overall change does then is basically to allow you to
> query for the currently selected file, and current cursor location
> within that file, from outside of geany, like so:
>
> thomas at MS-7752 ~ $ geany --print-location
> /home/thomas/Downloads/geany_git/src/socket.c:600:33
>
> I can then use this in a python command within gdb (running completely
> separately within a terminal) to set break points for positions
> selected in files in Geany within having to actually type the whole
> filename and line number bit each time.
>
> This was based on the nightly build for January 17th, and seems to be
> working correctly.
>
> Should I submit a patch for this change?
> If so, how?
> (Not used to this whole open source malarky!)
>
> I got the nightly build archive instead of using git, but I have
> copies of the source archive both before and after the change.
>
> Is it possible for this change (or something similar) to be included
> in the Geany mainline?
>
> Best regards,
>
> Thomas
> _______________________________________________
> Devel mailing list
> Devel at lists.geany.org
> https://lists.geany.org/cgi-bin/mailman/listinfo/devel
More information about the Devel
mailing list