Dear Reviewer of this pull request. The suggested pull request improves the outline facilitities for R using geany. First it is now possible also to use the = sign as the assignment operator for functions, secondly I added support for R6Class(es), environments (new.env) and a generic RxClass which can be used as well for outline creation. The latter allows for instance to write workaround code like
RxClass = proto
# and then
obj=RxClass()
th
Best regards,
Detlef Groth
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/2376
-- Commit Summary --
* R outline improved for environments and R6 classes, = sign added as well
-- File Changes --
M ctags/parsers/r.c (73)
M src/symbols.c (4)
M src/tagmanager/tm_parser.c (1)
-- Patch Links --
https://github.com/geany/geany/pull/2376.patchhttps://github.com/geany/geany/pull/2376.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/2376
After a couple of years I have to use a Windows machine again and noticed that geany does not support programming ligatures, which are supported by fonts like Fira Code or Cascadia Code.
Ligatures **do work** on Linux, though:
![image](https://user-images.githubusercontent.com/6584443/85752567-cf613900-b70b-11ea-9b33-6955b8bc4dac.png)
I first checked the Scintilla version, but it is new enough to support this, also in the Geany Windows-Version.
After a bit of research, I came across the same issue reported for Notepad++:
https://github.com/notepad-plus-plus/notepad-plus-plus/issues/2287#issuecom…
The linked comment cites the [Scintilla docs](https://www.scintilla.org/ScintillaDoc.html#SCI_SETTECHNOLOGY), stating that `SCI_SETTECHNOLOGY(int technology)` can be set to `SC_TECHNOLOGY_DIRECTWRITE` for Windows Vista or later.
I strongly assume that this would also resolve the issue for Geany.
Is there any dev regularly running a Windows build? I would of course like to test this, but I'd have to set up a cross-compiling environment or something. So I would be very happy if someone here would be in a comfortable position to test this.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/2535
Please tell me if there is some way I can make the line marker (the cross) on line number 1, shown below,
![smallcross](https://user-images.githubusercontent.com/7548378/34533758-859ab0ce-f0b3-11e7-8b06-f04f7bd0e48e.png)
larger as it is very difficult to find visually.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/1733
>From https://bugzilla.opensuse.org/show_bug.cgi?id=1166820, user reported when quitting geany, a segmentation fault happened, and got such backtrace:
```
$ gdb /usr/bin/geany core
/usr/share/gdb/python/gdb/command/prompt.py:48: SyntaxWarning: "is not" with a literal. Did you mean "!="?
if self.value is not '':
/usr/share/gdb/python/gdb/command/prompt.py:60: SyntaxWarning: "is not" with a literal. Did you mean "!="?
if self.value is not '':
GNU gdb (GDB; openSUSE Tumbleweed) 8.3.1
Copyright (C) 2019 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-suse-linux".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://bugs.opensuse.org/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/geany...
Reading symbols from /usr/lib/debug/usr/bin/geany-1.36-2.1.x86_64.debug...
[New LWP 5507]
[New LWP 5514]
[New LWP 5513]
[New LWP 5523]
[New LWP 5522]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `geany debugsource'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f6f9d4d9722 in vte_start (widget=0x56253b412180) at vte.c:497
497 if (! vf->vte_terminal_spawn_sync(VTE_TERMINAL(widget), VTE_PTY_DEFAULT,
[Current thread is 1 (Thread 0x7f6f9b533140 (LWP 5507))]
(gdb) bt
#0 0x00007f6f9d4d9722 in vte_start (widget=0x56253b412180) at vte.c:497
#1 0x00007f6f9c72531e in g_cclosure_marshal_VOID__BOOLEANv (closure=<optimized out>, return_value=<optimized out>, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x56253b4085c0)
at ../gobject/gmarshal.c:272
#2 0x00007f6f9c7230e6 in _g_closure_invoke_va (closure=0x56253b4833f0, return_value=0x0, instance=0x56253b412180, args=0x7ffef715f070, n_params=1, param_types=0x56253b4085c0) at ../gobject/gclosure.c:873
#3 0x00007f6f9c73f428 in g_signal_emit_valist (instance=0x56253b412180, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7ffef715f070) at ../gobject/gsignal.c:3306
#4 0x00007f6f9c73fbcf in g_signal_emit (instance=<optimized out>, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3453
#5 0x00007f6f98c98f07 in vte::platform::Widget::emit_child_exited (status=9, this=0x56253b412020) at ../src/widget.hh:47
#6 vte::platform::Widget::dispose (this=0x56253b412020) at ../src/widget.cc:135
#7 vte::platform::Widget::dispose (this=0x56253b412020) at ../src/widget.cc:131
#8 vte_terminal_dispose (object=0x56253b412180) at ../src/vtegtk.cc:412
#9 0x00007f6f9c729a4e in g_object_run_dispose (object=0x56253b412180) at ../gobject/gobject.c:1130
#10 0x00007f6f9ccfe729 in gtk_widget_destroy (widget=<optimized out>) at gtkwidget.c:4776
#11 0x00007f6f9d5016eb in vte_close () at vte.c:402
#12 do_main_quit () at libmain.c:1353
#13 do_main_quit () at libmain.c:1274
#14 0x00007f6f9d503558 in main_quit () at libmain.c:1415
#15 0x00007f6f9d537e69 in on_window_delete_event (widget=widget@entry=0x56253aed0510, event=event@entry=0x56253b099710, gdata=<optimized out>) at callbacks.c:85
#16 0x00007f6f9ccb6a5b in _gtk_marshal_BOOLEAN__BOXEDv (closure=0x56253adaf8b0, return_value=0x7ffef715f380, instance=<optimized out>, args=<optimized out>, marshal_data=<optimized out>, n_params=<optimized out>, param_types=0x56253aa5ec90) at gtkmarshalers.c:129
#17 0x00007f6f9c7230e6 in _g_closure_invoke_va (closure=0x56253adaf8b0, return_value=0x7ffef715f380, instance=0x56253aed0510, args=0x7ffef715f450, n_params=1, param_types=0x56253aa5ec90) at ../gobject/gclosure.c:873
#18 0x00007f6f9c73f06a in g_signal_emit_valist (instance=0x56253aed0510, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7ffef715f450) at ../gobject/gsignal.c:3306
#19 0x00007f6f9c73fbcf in g_signal_emit (instance=instance@entry=0x56253aed0510, signal_id=<optimized out>, detail=detail@entry=0) at ../gobject/gsignal.c:3453
#20 0x00007f6f9cd01c62 in gtk_widget_event_internal (event=0x56253b099710, widget=0x56253aed0510) at gtkwidget.c:7808
#21 gtk_widget_event_internal (widget=0x56253aed0510, event=0x56253b099710) at gtkwidget.c:7677
#22 0x00007f6f9ce42149 in gtk_main_do_event (event=0x56253b099710) at gtkmain.c:1818
#23 gtk_main_do_event (event=<optimized out>) at gtkmain.c:1687
#24 0x00007f6f9cbaf6e4 in _gdk_event_emit (event=0x56253b099710) at gdkevents.c:73
#25 _gdk_event_emit (event=0x56253b099710) at gdkevents.c:67
#26 0x00007f6f9cb7e1f2 in gdk_event_source_dispatch (source=source@entry=0x56253a99b1c0, callback=<optimized out>, user_data=<optimized out>) at gdkeventsource.c:367
#27 0x00007f6f9c633008 in g_main_dispatch (context=0x56253a99b2b0) at ../glib/gmain.c:3216
#28 g_main_context_dispatch (context=context@entry=0x56253a99b2b0) at ../glib/gmain.c:3881
#29 0x00007f6f9c633390 in g_main_context_iterate (context=0x56253a99b2b0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:3954
#30 0x00007f6f9c633663 in g_main_loop_run (loop=0x56253f429830) at ../glib/gmain.c:4148
#31 0x00007f6f9ce3bd75 in gtk_main () at gtkmain.c:1325
#32 0x00007f6f9d510104 in main_lib (argc=<optimized out>, argv=<optimized out>) at libmain.c:1259
#33 0x00007f6f9d5f7ceb in __libc_start_main (main=0x5625392e7050 <main>, argc=2, argv=0x7ffef715fa08, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffef715f9f8) at ../csu/libc-start.c:308
#34 0x00005625392e708a in _start () at ../sysdeps/x86_64/start.S:120
```
User said it can be reproduced with such steps:
- boot,
- login to openbox window manager,
- start a 'gnome-terminal',
- run 'geany somefile' (or with '&' to set it into background, no matter),
- wait until geany has come up,
- close geany via the 'X' of the window manager,
or via menu 'File -> Quit' (doesn't matter which).
--> Segmentation fault (core dumped)
But I failed to reproduce it, while user can not reproduce it if he create another system account.
I've read it and some code, seems `vte_close()` called `g_free(vf);` and `gtk_widget_destroy(vc->vte);`, `gtk_widget_destroy(vc->vte);` will make vte emit `child-exited` event because it will kill child process while disposing, and there are `g_signal_connect(vte, "child-exited", G_CALLBACK(vte_start), NULL);` in `create_vte()`, and then go to `#0` of backtrace.
But if so, I should be able to reproduce it, another strange thing is that gdb shows that `vf`, `vc->vte` are all valid, I don't know why, if dispose is called, at least `vf` should be freed.
I'll try to update if I get some new idea.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/2457
This commit changes JSON from a custom filetype to one with its own lexer, as requested in
https://github.com/geany/geany/issues/384#issuecomment-583869454. The lexer is taken from Scintilla's upstream
(version 3.10.4).
This has the following effects:
- JavaScript comments (//, /* */) are no longer highlighted as comments, since JSON doesn't allow them
- Text outside of quotes, except keywords and numbers, is now considered an error, and highlighted as such (in red)
It should also allow keys and string values to be highlighted in different colours, as in many other editors, but I couldn't get that to work.
Stopping comments from being highlighted is the main motivation for this - highlighting them misleads the user into thinking that JSON allows them.
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/2454
-- Commit Summary --
* Use Scintilla's JSON lexer for JSON instead of the JavaScript/C++ lexer
-- File Changes --
M data/Makefile.am (2)
D data/filedefs/filetypes.JSON.conf (17)
A data/filedefs/filetypes.json (32)
M scintilla/Makefile.am (1)
A scintilla/lexers/LexJSON.cxx (498)
M scintilla/scintilla_changes.patch (2)
M scintilla/src/Catalogue.cxx (1)
M src/editor.c (1)
M src/filetypes.c (1)
M src/filetypes.h (1)
M src/highlighting.c (2)
M src/highlightingmappings.h (25)
-- Patch Links --
https://github.com/geany/geany/pull/2454.patchhttps://github.com/geany/geany/pull/2454.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/2454
This PR conditionally uses newer GLib API to get information about the OS and to print it in with the existing debug messages. I don't really have a preference on the formatting of the info, this PR is tested against own-built Geany on Ubuntu 20.04.
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/2498
-- Commit Summary --
* Show OS info in debug messages
-- File Changes --
M src/libmain.c (22)
-- Patch Links --
https://github.com/geany/geany/pull/2498.patchhttps://github.com/geany/geany/pull/2498.diff
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/2498
I have downloaded Geany from here - https://download.geany.org/geany-1.36_osx-2.dmg
After successful installation I want to open Geany from terminal, but terminal can't find it:
![image](https://user-images.githubusercontent.com/10354348/80197879-1dd95500-8641-11ea-9447-8dd6a69c16f5.png)
How can I add Geany to the Path to make it possible to open it with terminal?
Geany version: 1.36
macOS version: Catalina 10.15.4
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany-osx/issues/15
As a python teacher I recommend Geany to newcomers a lot. It's always a pain to explain to them that first you need to change the execute command. The official python installer no longer adds itself to the path variable by default, therefore on a default python install the command "python" does not work. Instead for several years now the python installer also installs the "python launcher" named "py.exe". Users are expected to use the command "py" in the command prompt instead of "python". The python launcher adds support for shebangs to windows, making it easier to control python versions.
I propose that you change the default execute command for python files from `python "%f"` to `py "%f"` in order to make Geany on Windows work with python out of the box.
A potential downside is people that install python from Anaconda or similar packages, which do not install the python launcher and therefore still require modifying PATH and using the "python" command. However I feel that a user adept enough to adjust the PATH variable can probably also figure out how to change the execute command.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/2211