Hello!
This is just a request to add the [Zig language](https://ziglang.org/) support (syntax highlight, file type choice (.zig), ability to build and execute, etc.)
I haven't seen a similar open issue, so decided to file one.
Thank you!
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/3724
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany/issues/3724(a)github.com>
Should there be one? A Checkbutton for "Line breaking" in Preferences/ Editor / Features , besides "Line breaking column" or besides "Line wrapping" ?
It's tedious to remember and toggle that per document every time.
Or maybe there is a way, unknown to me, to modify some start-up file to tell Geany to open with Line breaking on in menu/Document ?
--
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/1946
In Preferences/Editor/Features, the line wrapping checkbox is checked, but when opening a file or creating a new one, it is disabled and needs to be manually enabled in the top menu of the document.
I installed Geany 2.0 using the official DMG on a Macbook Pro 13" M1 2020 running MacOS 14.1.1.
The problem is present since at least MacOS 13.
When installed via NIX, the setting works correctly, so I think it might just be a problem with the DMG version.
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany-osx/issues/51
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany-osx/issues/51(a)github.com>
This patch adds a simple API allowing LSP plugins to take control of certain Geany built-in features and disabling their implementation in Geany. Currently, autocompletion, calltips, and going to definition/declaration is supported.
Plugins should define the Lsp struct, fill the pointers to the functions implementing the features they override, and register themselves using the lsp_register() call. Similarly, they should unregister themselves using lsp_unregister() when they don't want to provide the Lsp features any more, or, latest, when the plugin gets unloaded.
Each of the currently supported features is implemented using two functions - one checking whether Lsp plugin will override Geany's behavior of this feature, and the other function implementing the feature. For instance for autocompletion:
- autocomplete_available(doc) should return TRUE if the plugin performs autocompletion for the doc's filetype. This function is used to deactivate Geany's autocompletion when the Lsp plugin supports it.
- autocomplete_perform(doc) calls the corresponding interface of the LSP server (which responds asynchronously so when autocomplete_perform() is executed, the results won't be available yet)
The Lsp struct is padded with an array large enough to allow additions of many more functions to the struct and allowing binary compatibility with older LSP plugin versions not implementing all the functions. It's just mandatory that all plugins zero-initialize the allocated Lsp struct (either by creating it on the heap or by allocating it using g_new0() or similar function). NULL pointers in this struct are handled gracefully.
The current implementation supports only a single LSP plugin. However, if in the future arises the need for more LSP plugins running in parallel (e.g. a specialized LSP plugin for certain language together with the current "generic" LSP plugin), the implementation could be extended to support a list of Lsp structs and trying to call the functions defined by them one by one. The current interface should already be sufficient to support such an implementation.
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/3571
-- Commit Summary --
* Add API for LSP plugins
-- File Changes --
M meson.build (3)
M src/Makefile.am (2)
M src/editor.c (32)
M src/keybindings.c (11)
A src/lsp.c (107)
A src/lsp.h (59)
M src/symbols.c (9)
-- Patch Links --
https://github.com/geany/geany/pull/3571.patchhttps://github.com/geany/geany/pull/3571.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/3571
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany/pull/3571(a)github.com>
There are a number of probably big changes being examined or coming in the future.
The point of this discussion is to record and discuss them. Blue sky thinking is encouraged, but implementability is key.
The things I can think of ATM are:
1. GTK4, its gotta happen at some stage if Geany is to not stagnate. IIUC from people who know GTK more than I do that there are parts of GTK that are used in Geanys UI that are not available in GTK4, so it may be a UI revolution, not an evolution.
2. Plugin functionality revolution, move all language specifics into plugins, so more can be specialised per language with less maintenance to core.
3. Use above to move TM to plugins, perhaps with LSP like API, see [here](https://github.com/geany/geany/pull/3571#issuecomment-1793696182)
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/discussions/3675
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany/repo-discussions/3675(a)github.com>
On an eInk-display In Lubuntu 23.04 I can't see at all which tab is in focus because of the Widget Style Qt Style Cleanlooks, that does not work like in Lubuntu 22.10. I know that I can change in geany.css the CSS of a tab-title when a document was changed but not yet saved. So, is there a possibility to do the same in geany.css but with a tab-title of a tab that is active?
Thank you so much in advance for help.
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/discussions/3482
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany/repo-discussions/3482(a)github.com>
This may happen in headless environments.
The return value of `gtk_init_check` was not examined before; according to [^1], _"calling any GTK function or instantiating any GTK type after this function returns FALSE results in undefined behavior."_
The value 77 can be returned to tell Automake that the test was skipped.[^2][^3]
---
Based on the example [here](https://www.gnu.org/software/automake/manual/automake.html#Use-TAP-wi…, I assumed that Autotools would mark `test_sidebar` as `SKIP` if all test cases inside are marked as skipped using [`g_test_skip`](https://docs.gtk.org/glib/func.test_skip.html) despite the return value being `0`, but with the way it is plugged together (each binary being one test from the view of the harness without regard for the more granular test cases inside), this doesn't work without further ado:
`test_sidebar.log`:
```
TAP version 13
# random seed: R02Seafe1e22758e0c4a49fe548501665a2d
1..3
# Start of sidebar tests
ok 1 /sidebar/openfiles_none # SKIP Could not initizlize GTK, skipping. Headless environment?
ok 2 /sidebar/openfiles_path # SKIP Could not initizlize GTK, skipping. Headless environment?
ok 3 /sidebar/openfiles_tree # SKIP Could not initizlize GTK, skipping. Headless environment?
# End of sidebar tests
PASS test_sidebar (exit status: 0)
```
`test_sidebar.trs`:
```
:test-result: PASS
:global-test-result: PASS
:recheck: no
:copy-in-global-log: no
```
`geany-2.0/tests $ env TESTS="test_sidebar" make -e check SUBDIRS=`
```
PASS: test_sidebar
============================================================================
Testsuite summary for Geany 2.0
============================================================================
# TOTAL: 1
# PASS: 1
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
```
---
However, returning `77` works as intended:
`test_sidebar.log`:
```
GTK initialisation failed; skipping. Running inside a headless environment?
SKIP test_sidebar (exit status: 77)
```
`test_sidebar.trs`:
```
:test-result: SKIP
:global-test-result: SKIP
:recheck: no
:copy-in-global-log: yes
```
`geany-2.0/tests $ env TESTS="test_sidebar" make -e check SUBDIRS=`
```
SKIP: test_sidebar
============================================================================
Testsuite summary for Geany 2.0
============================================================================
# TOTAL: 1
# PASS: 0
# SKIP: 1
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
```
Fixes #3674
[^1]: https://docs.gtk.org/gtk3/func.init_check.html
[^2]: https://www.gnu.org/software/automake/manual/automake.html#index-Exit-statu…
[^3]: https://docs.gtk.org/glib/func.test_run.html
You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/3676
-- Commit Summary --
* Skip `tests/test_sidebar` if GTK initialisation fails
-- File Changes --
M tests/test_sidebar.c (8)
-- Patch Links --
https://github.com/geany/geany/pull/3676.patchhttps://github.com/geany/geany/pull/3676.diff
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/pull/3676
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany/pull/3676(a)github.com>
I am using Geany in Linux Mint Cinnamon and Kubuntu. What is needed to be modified please?
--
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/3555
You are receiving this because you are subscribed to this thread.
Message ID: <geany/geany/issues/3555(a)github.com>