**Rationale:**
Currently geany functionality for Lisp dialects is limited to syntax highlighting and only covers [Common] Lisp and Clojure (currently not full built-in file type). The following change not only expands functionality to existing Lisps dialects but adds support for two major Lisp dialects, Scheme and Racket.
**Changes:**
* Add and integrate universal-ctags parsers for Lisp, Clojure, Scheme and Racket (based on Scheme parser)
* Add built-in filetypes for Clojure, Scheme and Racket (following HACKING instructions)
* Modify calltip functionality to work with current document file type defined wordchars
**Existing problems:**
* Parser capability to identify symbols is limited to functions (Lisp, Clojure, Scheme, Racket), variables (Scheme, Racket) and namespaces (Clojure)
* Calltip only works by typing a open paren after function name which is not suitable for Lisp dialects
* Racket filetype keywords are not being consistently highlighted
* Racket parser is minimal adaptation of Scheme parser
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/1922
-- Commit Summary --
* Add TagManager parser for Clojure, Lisp and Scheme
* Add Racket parser and lisp-based builtin filetypes
* Minor fixes relating to the filetypes
* Remove reference to scheme tag file
* Make use of current editor wordchars for calltip
* Add generated keywords to filetype.rkt
-- File Changes --
M ctags/Makefile.am (5)
M ctags/main/parsers.h (6)
A ctags/parsers/clojure.c (175)
A ctags/parsers/lisp.c (134)
A ctags/parsers/racket.c (120)
A ctags/parsers/scheme.c (122)
M data/Makefile.am (5)
R data/filedefs/filetypes.clj (20)
M data/filedefs/filetypes.lisp (3)
A data/filedefs/filetypes.rkt (62)
A data/filedefs/filetypes.scheme (60)
M data/filetype_extensions.conf (4)
M src/editor.c (2)
M src/filetypes.c (5)
M src/filetypes.h (3)
M src/highlighting.c (6)
M src/highlightingmappings.h (16)
M src/symbols.c (31)
M src/tagmanager/tm_parser.c (26)
M src/tagmanager/tm_parser.h (4)
-- Patch Links --
https://github.com/geany/geany/pull/1922.patchhttps://github.com/geany/geany/pull/1922.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/1922
How to reproduce:
open a .vala file
try to comment a line of the code.
Expected behaviour:
comment start at the same indentation level of the code
Actual behaviour:
comments start from the first line and add an extra tab indentation to the code
Example:
python
button = Gtk.Button()
# ~ button = Gtk.Button()
c
enum giorni settimana;
//~ enum giorni settimana;
vala
var label = new Gtk.Label (null);
//~ var label = new Gtk.Label (null);
--
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/1920
This adds the `.ino` extension to the file extension list for c++ code. Arduino sketch files are 99% c++ code. This makes them easier to edit in Geany :).
If unsure, take a read at <https://www.visualmicro.com/page/User-Guide.aspx?doc=INOs-and-CPPs.html>:
>Even though the Arduino web site does not mention it, the programming language Arduino uses is nothing but C++, with some limitations due to the tight memory constraints of the processors used.
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/1918
-- Commit Summary --
* Add *.ino (Arduino sketch files) to c++ fileextension list
-- File Changes --
M ctags/parsers/c.c (2)
M data/filetype_extensions.conf (2)
-- Patch Links --
https://github.com/geany/geany/pull/1918.patchhttps://github.com/geany/geany/pull/1918.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/1918
OS: Ubuntu Release 18.04.1 LTS
UI: Mate 1.20.1
Compiler package:
- gcc (Ubuntu 7.3.0-16ubuntu3) 7.3.0
- g++ (Ubuntu 7.3.0-16ubuntu3) 7.3.0
- GNU Make 4.1, Built for x86_64-pc-linux-gnu
- pkg-config 0.29.2
Other packages:
sudo apt-get install glib2.0
sudo apt-get install gtk2.0
sudo apt-get install docutils-common
sudo apt-get install git
Geany version 1.34 does configure, compile, make and install in said environment.
running make in the debugger plugin sub directory generated the following
**debug.c:53:10: fatal error: vte/vte.h: No such file or directory
#include <vte/vte.h>**
```
$ make
Making all in src
make[1]: Entering directory '/home/lewis/Downloads/geany-plugins/debugger/src'
CC debugger_la-bptree.lo
bptree.c: In function ‘on_hitscount_changed’:
bptree.c:373:5: warning: this ‘if’ clause does not guard... [-Wmisleading-indentation]
if (oldcount != count)
^~
bptree.c:376:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘if’
gtk_tree_path_free(tree_path);
^~~~~~~~~~~~~~~~~~
CC debugger_la-breakpoint.lo
CC debugger_la-breakpoints.lo
CC debugger_la-btnpanel.lo
CC debugger_la-callbacks.lo
CC debugger_la-calltip.lo
CC debugger_la-dbm_gdb.lo
CC debugger_la-dconfig.lo
dconfig.c: In function ‘saving_thread_func’:
dconfig.c:314:2: warning: ‘g_cond_timed_wait’ is deprecated [-Wdeprecated-declarations]
while (!g_cond_timed_wait(cond, change_config_mutex, &interval));
^~~~~
In file included from /usr/include/glib-2.0/glib.h:108:0,
from /usr/include/glib-2.0/glib/gprintf.h:21,
from /usr/include/glib-2.0/glib/gstdio.h:22,
from dconfig.c:30:
/usr/include/glib-2.0/glib/deprecated/gthread.h:285:17: note: declared here
gboolean g_cond_timed_wait (GCond *cond,
^~~~~~~~~~~~~~~~~
dconfig.c: In function ‘config_init’:
dconfig.c:461:2: warning: ‘g_mutex_new’ is deprecated [-Wdeprecated-declarations]
change_config_mutex = g_mutex_new();
^~~~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:108:0,
from /usr/include/glib-2.0/glib/gprintf.h:21,
from /usr/include/glib-2.0/glib/gstdio.h:22,
from dconfig.c:30:
/usr/include/glib-2.0/glib/deprecated/gthread.h:277:17: note: declared here
GMutex * g_mutex_new (void);
^~~~~~~~~~~
dconfig.c:462:2: warning: ‘g_cond_new’ is deprecated [-Wdeprecated-declarations]
cond = g_cond_new();
^~~~
In file included from /usr/include/glib-2.0/glib.h:108:0,
from /usr/include/glib-2.0/glib/gprintf.h:21,
from /usr/include/glib-2.0/glib/gstdio.h:22,
from dconfig.c:30:
/usr/include/glib-2.0/glib/deprecated/gthread.h:281:17: note: declared here
GCond * g_cond_new (void);
^~~~~~~~~~
dconfig.c:463:2: warning: ‘g_thread_create’ is deprecated: Use 'g_thread_new' instead [-Wdeprecated-declarations]
saving_thread = g_thread_create(saving_thread_func, NULL, TRUE, NULL);
^~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:108:0,
from /usr/include/glib-2.0/glib/gprintf.h:21,
from /usr/include/glib-2.0/glib/gstdio.h:22,
from dconfig.c:30:
/usr/include/glib-2.0/glib/deprecated/gthread.h:104:10: note: declared here
GThread *g_thread_create (GThreadFunc func,
^~~~~~~~~~~~~~~
dconfig.c: In function ‘config_destroy’:
dconfig.c:474:2: warning: ‘g_mutex_free’ is deprecated [-Wdeprecated-declarations]
g_mutex_free(change_config_mutex);
^~~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:108:0,
from /usr/include/glib-2.0/glib/gprintf.h:21,
from /usr/include/glib-2.0/glib/gstdio.h:22,
from dconfig.c:30:
/usr/include/glib-2.0/glib/deprecated/gthread.h:279:17: note: declared here
void g_mutex_free (GMutex *mutex);
^~~~~~~~~~~~
dconfig.c:475:2: warning: ‘g_cond_free’ is deprecated [-Wdeprecated-declarations]
g_cond_free(cond);
^~~~~~~~~~~
In file included from /usr/include/glib-2.0/glib.h:108:0,
from /usr/include/glib-2.0/glib/gprintf.h:21,
from /usr/include/glib-2.0/glib/gstdio.h:22,
from dconfig.c:30:
/usr/include/glib-2.0/glib/deprecated/gthread.h:283:17: note: declared here
void g_cond_free (GCond *cond);
^~~~~~~~~~~
CC debugger_la-debug.lo
debug.c:53:10: fatal error: vte/vte.h: No such file or directory
#include <vte/vte.h>
^~~~~~~~~~~
compilation terminated.
Makefile:1032: recipe for target 'debugger_la-debug.lo' failed
make[1]: *** [debugger_la-debug.lo] Error 1
make[1]: Leaving directory '/home/lewis/Downloads/geany-plugins/debugger/src'
Makefile:583: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
$
```
vte.c and vte.h do exist in the geany 1.34 src subdirectory and can be copied to for the debugger but there are still to many errors to compile.
--
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-plugins/issues/762