Re: [Geany-Devel] Helping Geany move forward: testing

2017-07-08 Thread Vasiliy Faronov
Hi all,

Two points were raised in this thread that I feel might not have
received enough attention. I'm going to try and float them once more.
Please do tell me if I'm being too persistent.

1. Thomas has offered [1] his help in merging PRs if he is given more
GitHub access.

2. Lex has agreed with me [2] that it might be a good idea to try and
engage the users more in testing Geany, so as to reduce the risks in
merging PRs. To that end, I have drafted up a tutorial [3] which may
or may not help.

Any further thoughts/actions on this?

[1] http://lists.geany.org/pipermail/devel/2017-April/010237.html
[2] http://lists.geany.org/pipermail/devel/2017-April/010248.html
[3] https://wiki.geany.org/howtos/testing_git


-- 
Vasiliy

On Sun, Apr 30, 2017 at 2:40 PM, Lex Trotman  wrote:
> On 29 April 2017 at 23:15, Vasiliy Faronov  wrote:
>> On Sat, Apr 29, 2017 at 2:58 PM, Lex Trotman  wrote:
>>> The vast majority are therefore not testing anything in master prior
>>> to release, so they are not helping stabilise the release.  Thats no
>>> help. (Of course users are not expected to help stabilise the
>>> release).
>>
>> By the way, I think it might be a good idea to call on users for more 
>> testing.
>
> Well, it can't hurt :)
>
>>
>> Many of them must be technical people who wouldn't be scared by Git
>> and may be interested in improvements. At least on Linux, it's
>> (relatively) easy to build Geany from Git and run it with a copy of
>> one's normal config. So it's easy and safe to try PRs out at least
>> briefly.
>
> Yes, its only a "one-liner" (well it would be one line if the mailer
> didn't wrap it :) after you have installed the prerequisites using
> your package manager:
>
> mkdir /some/where/geany; cd /some/where/geany;
> git clone https://github.com/geany/geany.git; cd geany;
> ./autogen.sh --prefix=/some/where/geany; make install;
> cd ../bin; ./geany -c ../config
>
> This keeps everything inside /some/where/geany, so you can delete it
> all, and it doesn't affect any geany release you have installed in the
> system location, doesn't need system privileges, doesn't overwrite
> your home directory config, so you can mess with things to your hearts
> content.  It is preferred that you use a clean config for testing if
> your normal Geany is an earlier version, but it then won't hurt to
> copy your normal one to /some/where/geany/config afterwards.  Remember
> config is a directory.
>
> To avoid gitting it (waa waa) you can also use the nightly tarball
> http::/download.geany.org/geany_git.tar.gz and you don't need the
> Autotools stuff either.
>
> mkdir /some/where/geany;
>
> Then just use your browser to download and the GUI extractor that your
> distro has to get the tarball and extract it into git_geany in
> /some/where/geany.  Or your favourite command line tools, but every
> distro has a browser and an extractor.
>
> cd /some/where/geany/git_geany;
> ./configure --prefix=/some/where/geany;
> make install; cd ../bin; ./geany -c ../config
>
> We really should publish it as the basic process for building from git
> and nightly, and a definitive list of dependencies and tools, the
> README waffles on about all the GTK deps etc. makes it sound complex
> but they should all be provided from your package manager, and it
> doesn't mention libvte or that most tools will be provided by the
> dev_basics packages, in fact actually doesn't ever cleanly list whats
> needed.
>
> There is a nightly Deb package built which you could use, but it will
> overwrite your system version of Geany (IIUC).
>
>>
>> I mean, at the moment geany.org doesn't even mention testing in its
>> "Contribute" sections.
>
> Well, a "Call for testers" on the front page would be better still,
> (in flashing orange and purple striped text -- ok maybe not).
>
> Enrico, any comment?
>
> Cheers
> Lex
>
>>
>>
>> --
>> Vasiliy
>> ___
>> Devel mailing list
>> Devel@lists.geany.org
>> https://lists.geany.org/cgi-bin/mailman/listinfo/devel
> ___
> Devel mailing list
> Devel@lists.geany.org
> https://lists.geany.org/cgi-bin/mailman/listinfo/devel



-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] Hooks on calling some functions for plugins?

2017-07-04 Thread Vasiliy Faronov
Hi Denis,

As far as I understand, none of this is directly supported by Geany right now.

This is a known problem: https://github.com/geany/geany/issues/1458

Until it is solved systematically (if ever), you might be able to hack
around it.

For custom autocompletion, see:
https://github.com/notetau/geany-jedi-complete/tree/master/geany-complete-core

For tags, you do have access to parts of TagManager such as
tm_workspace_add_source_file -- maybe you could use that creatively
somehow.

And of course you can have a custom "Go to D Symbol Definition" command.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] Helping Geany move forward: testing

2017-04-30 Thread Vasiliy Faronov
On Sun, Apr 30, 2017 at 2:40 PM, Lex Trotman  wrote:
> We really should publish it as the basic process for building from git
> and nightly, and a definitive list of dependencies and tools, the
> README waffles on about all the GTK deps etc. makes it sound complex
> but they should all be provided from your package manager, and it
> doesn't mention libvte or that most tools will be provided by the
> dev_basics packages, in fact actually doesn't ever cleanly list whats
> needed.

I started drafting up a tutorial on Geany wiki:

https://wiki.geany.org/howtos/testing_git

Please feel free to reuse and/or improve.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] Helping Geany move forward: testing

2017-04-29 Thread Vasiliy Faronov
On Sat, Apr 29, 2017 at 2:58 PM, Lex Trotman  wrote:
> The vast majority are therefore not testing anything in master prior
> to release, so they are not helping stabilise the release.  Thats no
> help. (Of course users are not expected to help stabilise the
> release).

By the way, I think it might be a good idea to call on users for more testing.

Many of them must be technical people who wouldn't be scared by Git
and may be interested in improvements. At least on Linux, it's
(relatively) easy to build Geany from Git and run it with a copy of
one's normal config. So it's easy and safe to try PRs out at least
briefly.

I mean, at the moment geany.org doesn't even mention testing in its
"Contribute" sections.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


[Geany-Devel] Helping Geany move forward: testing

2017-04-27 Thread Vasiliy Faronov
Hi all,

From discussions elsewhere, such as [1], it sounds like one of the
things holding back Geany development right now is a need for more
testing.

I have some spare time that I can dedicate to exploratory testing of
PRs to Geany and Geany-Plugins. I'm not a QA professional, but I am a
programmer, I use a range of Geany features daily, and I understand
Geany's code.

How can I test PRs in a way that would really help them get merged?

In particular:

1. How can I determine that a PR is mostly blocked on testing, and is
likely to be merged when positive testing results come in? Some PRs
are marked as "approved" in GitHub yet are not merged -- is that it?

2. How can I communicate my results to the satisfaction of Geany
committers? For example, I could write up some kind of a report: an
outline of what I tried, with screenshots of what I got -- would that
help?

Thank you.


[1] https://github.com/geany/geany/pull/1246#issuecomment-290047712


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


[Geany-Devel] New plugin: Python Navigation

2017-02-16 Thread Vasiliy Faronov
Hi all,

I hope you don't mind a quick mention of a little new Geany plugin:

https://github.com/vfaronov/geany-pynav

I've been using it privately for months, and I find that it makes my
Python experience in Geany quite a bit better.

Thanks to Matthew and everyone for GeanyPy, on which this plugin is based.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] Storing per-project settings for plugins

2017-02-16 Thread Vasiliy Faronov
Hi Thomas,

On Thu, Feb 16, 2017 at 2:15 PM, Thomas Martitz  wrote:
> Geanypy is not actively developed at this time. Let me suggest to give my
> Peasy plugin a
> try, as all the signals should be working there. Peasy is a newer approach
> to support Python (and lua)
> plugins inside Geany.

Thank you for your suggestion. Peasy is interesting and will probably
be indispensable for GTK+3 Geany. But at this time GeanyPy is better
suited for my purposes, as it's more widely packaged and works well
enough for me. The signals are emitted all right; it's just that the
callback doesn't get a GKeyFile argument, but that seems like a minor
nuisance.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] Storing per-project settings for plugins

2017-02-16 Thread Vasiliy Faronov
Jiří, Matthew, thanks!

I missed the GKeyFile thing.

Actually, my plugin is written in Python (via Geanypy), and doesn't
get the GKeyFile on project-open/project-save. Probably because there
are no Python bindings for it.

But I guess Python's built-in ConfigParser should be enough.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


[Geany-Devel] Storing per-project settings for plugins

2017-02-15 Thread Vasiliy Faronov
Hi,

I have a small Geany plugin that needs some settings per Geany project.

Currently, I do it as follows: the user manually writes a special
section in the .geany project file, which my plugin reads as a generic
INI file.

I really like this approach (as a user) because it keeps all Geany
project-related settings in one file.

But is this approach OK in the eyes of Geany core?


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


Re: [Geany-Devel] Plugins

2016-07-22 Thread Vasiliy Faronov
Colomban Wendling's Commander plugin [1] also supports switching
between open files, even though this is not documented. However, to
limit Commander to display *only* the files, you have to type an "f:"
prefix (likewise "c:" for menu items). Personally I find this
cumbersome, so I use a straightforward patch that adds keybindings for
limited modes (not sending this upstream yet because it needs more UI
work).

Colomban, do you think these two features -- symbols from the current
document, and keybindings for limited modes -- would be good to have
in Commander?

[1] http://plugins.geany.org/commander.html


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


[Geany-Devel] Improving the navqueue

2016-07-04 Thread Vasiliy Faronov
Hi,

Geany's navigation history (navqueue) would be more useful to me if I
could add positions into it manually.

For example, I want to peek into another location in the code (page up
/ page down) and then return. The navqueue fits this case much better
than bookmarks.

A plugin can emulate this by doing navqueue_goto_line() to the current
line, but this doesn't work very well: it adds two positions (unless
the cursor happens to be on the beginning of the line) and also
scrolls the view.

Do you think it would be a good idea to have a keybinding for this in
Geany core? I have a patch in the works [1].

[1] https://github.com/geany/geany/compare/master...vfaronov:add-position


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel


[Geany-Devel] Toggle menu and status bars

2016-07-02 Thread Vasiliy Faronov
Hi,

Most of the time, when using Geany, I don't need the menu and status
bars; they are just noise. But occasionally I want to check the status
bar (e.g. for the line/column number) or browse the menu. So I want to
toggle their visibility with a keystroke.

I wrote a simple plugin for that: https://github.com/vfaronov/geany-togglebars

The problem is, the menu and status bars are not exposed in
geany.main_widgets, so I have to find them manually, which makes the
plugin brittle as it relies on a specific window layout.

Perhaps there is a better way to do it?

Perhaps the menu and status bars should be exposed in main_widgets?

Or perhaps this feature should be in Geany core? We already have
keybindings for the sidebar and the messages pane. There is some
discussion in issue #633, but I'm not sure what to make of it.


-- 
Vasiliy
___
Devel mailing list
Devel@lists.geany.org
https://lists.geany.org/cgi-bin/mailman/listinfo/devel