> @techee done reading new patches, and apart from the comments, look good. I imported the changes in my local Geany so I'll be testing it a bit, but for now it looks good :)
@b4n Fantastic! Thanks a lot Colomban and sorry for the huge and complicated patch sets like this - will write just trivial patches from now on :-)
I'll post the hopefully final pull request soon.
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/505#issuecomment-170287861
> pos--;
> - else if (ft->id == GEANY_FILETYPES_CPP && pos >= 3 && match_last_chars(sci, pos, "->*"))
> +
> + if (pos > 0)
> + typed = sci_get_char_at(sci, pos - 1);
> + }
> +
> + if (typed == '.')
> + pos -= 1;
> + else if (ft->id == GEANY_FILETYPES_C || ft->id == GEANY_FILETYPES_CPP ||
> + ft->id == GEANY_FILETYPES_PHP || ft->id == GEANY_FILETYPES_RUST)
> + {
> + if (match_last_chars(sci, pos, "::"))
Good idea. Even though for ASCIIDOC and TXT2TAGS it returns some dummy character (that nobody will ever enter so we don't have to worry), for the rest of the languages it really seems to return the scope separator used in the language itself. Will change it this way.
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/505/files#r49268874
Just a thought (I don't think it has anything to do directly with the changes here, but it's related to scope completion): it'd be nice to trigger scope completion back when continuing on typing on a word after a scope element, instead of only when actually *typing* the scope separator. E.g the user could cancel the autoc some way, and get back to it without re-typing the separator.
```c
static struct {
int first, second;
} foo;
int main(void) {
return foo.f/*cursor*/; // <- here, typing "o" would show "first"
}
```
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/505#issuecomment-170283552
@techee done reading new patches, and apart from the comments, look good. I imported the changes in my local Geany so I'll be testing it a bit, but for now it looks good :)
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/505#issuecomment-170282790
> pos--;
> - else if (ft->id == GEANY_FILETYPES_CPP && pos >= 3 && match_last_chars(sci, pos, "->*"))
> +
> + if (pos > 0)
> + typed = sci_get_char_at(sci, pos - 1);
> + }
> +
> + if (typed == '.')
> + pos -= 1;
> + else if (ft->id == GEANY_FILETYPES_C || ft->id == GEANY_FILETYPES_CPP ||
> + ft->id == GEANY_FILETYPES_PHP || ft->id == GEANY_FILETYPES_RUST)
> + {
> + if (match_last_chars(sci, pos, "::"))
just a thought: what about using `tm_tag_context_separator()` instead of checking for some filetypes? Not sure it's sensible at all, but right now I see the check above will leave out GLSL, Zephir and PowerShell (not sure if it'd make sense for the latter, but definitely for the former two).
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/505/files#r49268284
Closes #622.
---
While a very common keybinding for this would be `Alt+Return`, I didn't set any default because:
1. `Alt+Return` might be in use by a plugin already, and Geany would steal it;
2. Properties don't seem to be important enough to me to really need a default keybinding.
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/652
-- Commit Summary --
* Allow to set a keybinding for File->Properties
-- File Changes --
M data/geany.glade (2)
M src/callbacks.c (2)
M src/callbacks.h (2)
M src/keybindings.c (5)
M src/keybindings.h (1)
M src/ui_utils.c (2)
-- Patch Links --
https://github.com/geany/geany/pull/652.patchhttps://github.com/geany/geany/pull/652.diff
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/652
```
# check for SVN revision
GEANY_CHECK_REVISION([dnl force debug mode for a SVN working copy
CFLAGS="-g -DGEANY_DEBUG $CFLAGS"])
```
Hopefully its just the comments are wrong and it actually checks git, but someone who knows where to look should check.
---
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/856