698 Commits

Author SHA1 Message Date
Ben Young
b9891f2912
Added error_regex to filetypes.rust (#3300) 2022-09-22 13:10:03 +10:00
Enrico Tröger
6c0b48c809
Merge pull request #2924 from eht16/update_python_identifiers_py3_only
Generate Python identifiers only for Python 3
2022-05-22 14:40:12 +00:00
Jiří Techet
4b573b7a40
Merge pull request #3042 from techee/project_create2
Improve user experience when creating new projects, attempt 2
2022-05-13 02:19:35 +02:00
Jiří Techet
74c2b39126 Add typescript ctags parser 2022-05-13 01:54:04 +02:00
Jiří Techet
a5d5ae3d87 Add Clojure ctags parser 2022-05-13 01:28:16 +02:00
Enrico Tröger
5856e4bdb6
Merge pull request #3130 from Codeberg-AsGithubAlternative-buhtz/patch-1
Add "el" as "Lisp" filetyp extension
2022-04-10 19:31:09 +00:00
Jiří Techet
ce66dc9223 Improve user experience when creating new projects
At the moment, when creating a project, the user is greeted with the
dialog containing:
1. Name
2. Filename
3. Base path

The user is expected to type the name of the project into (1), and then,
Geany tries to guess the base path and file name. The guess simply takes
the project directory specified in settings and appends the name. When the
project is located anywhere else than in the projects directory,
the guessed values are wrong and have to be entered manually which is
quite annoying. In addition, the dialog doesn't make it clear that the
user should start with (1), when he starts with (2) or (3), he has to
fill in all 3 values manually.

This patch adds another method of project creation which is more
suitable for creating projects from existing directory with source
files. There's a new "Project->New from Folder..." option that in
the first step asks user to provide the base path and based on this
path fills in the entries in the New Project dialog.

With this approach, Project->New from Folder...:
a. First pops up a open directory dialog to specify base path
b. After that, opens the (currently used) New Project dialog which
is pre-filled in the following way:
  1. Name: The last directory in base_path
  2. Filename: depending on "store project file inside the project base
directory" settings either in base_path/(1).geany or projects_dir/(1).geany
  3. Base path: path specified in (a)

This way, in most cases, the user will only have to select the base
directory in the first step and use the pre-filled values without
any modification no matter whether the project is stored in the projects
directory or not.

After this patch, there will be 2 different ways to create projects:
1. Project->New - more suitable for creating empty projects from scratch
inside the "projects" directory
2. Project->New from Folder - more suitable for creating projects from
existing sources
2022-03-15 20:44:59 +01:00
Thomas Martitz
53a3eff360 Port to the meson build system.
Benefits are blazing fast builds and more user friendly configuration.
This is promised by meson and I would agree in the case of Geany.

Autotools is supported and still the default.

Meson builds might have rough edges but should generally work OK.
Time will tell if it superseeds autotools builds completely.
2022-03-14 22:16:26 +01:00
Jiří Techet
92e2a78379 Use C parser for GLSL files and CUDA parser for CUDA files
The GLSL portion of c.c doesn't seem to do anything - it's just a synonym
for a C parser which can be used directly instead. This way we can
switch to the new cxx parser for GLSL too and reduce one more language
to care about in c.c.

For reference, the GLSL "parser" was introduced in commit

6ce421f1411060b8576bdac982cca11229b8ef96

Since we need to keep original identifiers for parsers and need some
parser instead of the removed GLSL parser, we can replace it with
the CUDA parser that is part of the new cxx parser and we can use
this parser for parsing CUDA files instead of C++ (the CUDA parser
is basically just C++ parsers with different keywords).
2022-03-14 19:54:12 +01:00
Jiří Techet
6671d3c314
Merge pull request #3075 from techee/remove_ferite_parser
Remove Ferite filetype
2022-03-14 19:41:29 +01:00
Codeberg-AsGithubAlternative-buhtz
0dc98c5000
Added semicolon 2022-02-23 11:20:16 +01:00
Codeberg-AsGithubAlternative-buhtz
e58cbca675
Add "el" as "Lisp" filetyp extension
The suffix "el" is very common in the context of Lisp and Emacs (a Lisp interpreter).
2022-02-23 09:28:37 +01:00
Thomas Martitz
2ed4fc9eb6 Remove pref "Use project-based session files", now always enabled
As per #267 we agreed that this pref makes little sense. Especially
as we're considering to move the project session files to a completely
separate file (so neither geany.conf nor $project.geany).

Currently, if not checked, the project session files would be stored
in the (new) session.conf file, overwriting the non-project session.
This is what #267 is about.
2022-02-17 22:40:36 +01:00
Antonio Cebrián
a3031e96bd
Imports and enables Asciidoc lexer from Lexilla 5.1.4 (#3097) 2022-02-12 15:14:59 +01:00
xiota
305b324a1b Update geany.glade to target gtk+3.20 (#3026) 2022-02-11 13:50:26 +01:00
Enrico Tröger
977928a1bc
Merge pull request #3037 from eht16/issue2968_windows_strftime
Use GDateTime for date and time formatting
2022-01-30 21:40:24 +00:00
Enrico Tröger
5a369a41e3
Merge pull request #3055 from techee/tagfilter-new
Filter for symbol tree - improved version
2022-01-23 23:06:51 +00:00
Jiří Techet
f15f5a5dd8 Minor improvements related to the search entry
* Add search icon to the entry
* Mention the possibility to use more filters separated
  by space in tooltip
* Focus the tree when pressing enter in the search entry
2022-01-23 17:43:57 +01:00
Jiří Techet
c0b7940f90 Remove the Ferite filetype
Replace the gap in filetypes array with the recently added GDScript
filetype.
2022-01-15 20:32:23 +01:00
David Yu Yang
f59e52008e Add GDScript file type
Heavily borrowed from python due to GDScript's syntax being heavily borrowed from python
2022-01-14 12:01:41 +08:00
Dmitry
d3ded11ad2 Filter symbols in the Symbol List (new feature) 2022-01-13 15:48:31 +01:00
Jiří Techet
48d4f58966
Merge pull request #3061 from techee/css_statusbar
Make it easier to discover how to reduce the size of the statusbar
2021-12-27 09:52:43 +01:00
jmb6
1eb956525b
Add new C++20 keywords (#3065) 2021-12-23 17:18:47 +10:00
Jiří Techet
b8c9d99bb7 Make it easier to discover how to reduce the size of the statusbar 2021-12-20 10:51:41 +01:00
Jiří Techet
ed1048918a
Merge pull request #3013 from techee/default_colors
Use dark-theme friendly colors for compiler messages
2021-12-15 10:42:06 +01:00
Zoom
d031d6f2fc
Update Nim filetype config (#2988)
* Update Nim filetype config

Keywords taken from official Manual.
Identifiers list expanded with:
1. Some basic types from the System module, which is always implicitly imported.
2. Additional keywords (`lent, spawn, parallel`) from Nim experimental features.

Styling and build-menu settings taken from @HJarausch config in #2669

* Fixup: Nim filetype: add `sink`

* Add multiline comments to Nim filetype

...which won't work until the Nim lexer from lexilla is added.
2021-12-11 09:49:24 +10:00
Enrico Tröger
55deaab404 Use GDateTime for date and time formatting
This replaces the use of the native strftime() function to use
GLib's GDateTime functions which should work more platform agnostic.

Fixes #2968.
2021-12-01 14:29:43 +01:00
Jiří Techet
95c9947e6c Use dark-theme friendly colors for compiler messages
These colors seem to provide good legibility for both light and dark
themes and seem to be better defaults regardless of what theme users
use.
2021-11-23 16:20:19 +01:00
Thomas Martitz
6d109b3091 Update to Scintilla 5.1.3 and Lexilla 5.1.2
Notable changes:
Scintilla:
- Add SC_ELEMENT_FOLD_LINE to set the colour of fold lines. Add SC_ELEMENT_HIDDEN_LINE to show where lines are hidden.
- On GTK, fix the line spacing so that underscores and accents are visible for some fonts such as DejaVu Sans Mono 10.

Lexilla
- Implement conditional group rules in CSS. Issue #25, Pull request #28.
- Check PHP numeric literals, showing invalid values with default style instead of numeric. Issue #20.

The CSS change causes compatiblity trouble. We exposed the changed
style in filetypes.css. Users must update local copies.
2021-11-15 07:46:40 +01:00
Enrico Tröger
36f7511173 Generate Python identifiers only for Python 3
Python 2 is EOL since almost two years now, so remove Python2 keywords
and simplify the script to generate them.
2021-10-10 16:42:15 +02:00
Andy Alt
4166618d30
Add @mesonbuild filetype support (#2850) 2021-09-30 20:52:25 +00:00
getzze
90c6096ed6
Create julia lexer and tags parser (#2584)
* Create julia parser, ctags and lexilla

* add ctags test file
2021-07-20 14:05:49 +10:00
Thomas Martitz
b524a58e12 Merge branch 'gh-codebrainz/remove-gtk2' into master
This merge removes GTK2 support entirely only GTK3 is left.

Closes #2602
2021-05-29 14:17:42 +02:00
Jan Dolinár
d9f8cdbad5
add comment_single configuration for kotlin (#2710) 2020-12-29 14:09:13 +10:00
Colomban Wendling
97f8f3c7af Revert "add 'folding margin width setting' (#2140)"
This reverts commit d8f532b5adf41ae57b99b6ac95d336401ba15e35.
2020-10-25 10:33:19 +01:00
Colomban Wendling
b2151bd5f0 Merge pull request #2223 from b4n/windows-py-command
Allow to select the Python command, and use `py` on Windows
2020-10-10 09:29:23 +02:00
Colomban Wendling
fb2872097d Merge pull request #2399 from b4n/smalltalk
Add Smalltalk filetype
2020-10-09 11:26:16 +02:00
Colomban Wendling
d369123a2d Merge pull request #2333 from foresto/nomatch-text-color
Define text color when setting dark background in find dialog
2020-10-09 11:17:00 +02:00
Snowflake the Pony
d7d1810d26 Add Smalltalk filetype 2020-10-05 16:25:51 +02:00
Matthew Brush
afc39c287c Remove gtkrc file and related documentation 2020-10-04 05:33:46 -07:00
Matthew Brush
d065c50985 Initial pass at remove GTK+2
Updating the build system and some of the conditional code.
More to come.
2020-10-04 05:31:01 -07:00
Enrico Tröger
f6624c69df Update FreeBasic keywords
Closes #2583.
2020-10-04 11:29:32 +00:00
Filip Szymański
6118e5506b
filetypes.lua: Change block comment (#2566)
See: https://www.lua.org/pil/1.3.html
2020-10-04 09:30:26 +10:00
Andy Alt
d8f532b5ad
add 'folding margin width setting' (#2140) 2020-06-22 12:45:26 +10:00
Dmitry
08d8cec330 Sync javascript keywords 2020-04-28 06:27:25 +10:00
Colomban Wendling
e390377884 Remove explicit static accessible name from the main window
Users expect accessible name of the window to match the window title,
so remove the custom explicit name of "Geany" which was added at the
very beginnings of Geany, presumably without real a11y reasons.

Without this, GTK forwards the window title to the a11y name for us,
leading to the expected result and matching most other apps.

Fixes #2421.
2020-01-15 23:46:32 +01:00
Matthew Brush
8abe5342c5
Merge pull request #2212 from TwlyY29/bibtex-parser
Added a bibtex parser that extracts identifiers of entries in bib-fil…
2019-10-29 17:12:02 -07:00
Forest
9f049a7b40 Define text color when setting dark background
Some Gtk themes define a dark foreground color for selected text, so when we
set the background to dark red, it becomes difficult to read. We must therefore
set a foreground color that will remain legible against our background.

Fixes #2332
2019-10-01 12:39:02 -07:00
Enrico Tröger
83c9042ab7 Add "Nim" to the Programming file types group
Previously Nim was grouped on the top-level menu
because the group was missing.
2019-09-28 13:52:43 +02:00
Grigoriy Kramarenko
f8f4dd891b Django highlighting in templates.
See https://docs.djangoproject.com/en/2.2/ref/templates/builtins/#is-operator
2019-09-23 14:53:29 +10:00