Branch: refs/heads/master
Author: Nick Treleaven <n(a)trelsoft.com>
Committer: Nick Treleaven <n(a)trelsoft.com>
Date: Sat, 18 May 2019 12:51:55 UTC
Commit: 41122c07bca2a45cd3750311398d42da404c85fa
https://github.com/geany/geany/commit/41122c07bca2a45cd3750311398d42da404c8…
Log Message:
-----------
Always allow user filetype extensions to override system config file
Before the user would sometimes have to override 'UnwantedFiletype=' in
the user config file to remove an extension written in the system file.
Geany would ignore an overridden filetype in the user config file that
also matches the extension. This happened when the wanted filetype had a
higher index than the unwanted one in filetypes_array.
Modified Paths:
--------------
src/filetypes.c
src/filetypesprivate.h
Modified: src/filetypes.c
17 lines changed, 16 insertions(+), 1 deletions(-)
===================================================================
@@ -521,6 +521,7 @@ GeanyFiletype *filetypes_detect_from_extension(const gchar *utf8_filename)
{
gchar *base_filename;
GeanyFiletype *ft;
+ guint i;
ft = detect_filetype_conf_file(utf8_filename);
if (ft)
@@ -533,14 +534,27 @@ GeanyFiletype *filetypes_detect_from_extension(const gchar *utf8_filename)
SETPTR(base_filename, g_utf8_strdown(base_filename, -1));
#endif
- for (guint i = 0; i < filetypes_array->len; i++)
+ for (i = 0; i < filetypes_array->len; i++)
{
if (match_basename(filetypes[i], base_filename))
{
ft = filetypes[i];
break;
}
}
+ // check if user config overrides found ft
+ if (ft && !ft->priv->user_extensions)
+ {
+ for (i++; i < filetypes_array->len; i++)
+ {
+ if (filetypes[i]->priv->user_extensions &&
+ match_basename(filetypes[i], base_filename))
+ {
+ ft = filetypes[i];
+ break;
+ }
+ }
+ }
if (ft == NULL)
ft = filetypes[GEANY_FILETYPES_NONE];
@@ -1386,6 +1400,7 @@ static void read_extensions(GKeyFile *sysconfig, GKeyFile *userconfig)
gchar **list = g_key_file_get_string_list(
(userset) ? userconfig : sysconfig, "Extensions", filetypes[i]->name, &len, NULL);
+ filetypes[i]->priv->user_extensions = userset;
g_strfreev(filetypes[i]->pattern);
/* Note: we allow 'Foo=' to remove all patterns */
if (!list)
Modified: src/filetypesprivate.h
1 lines changed, 1 insertions(+), 0 deletions(-)
===================================================================
@@ -40,6 +40,7 @@ typedef struct GeanyFiletypePrivate
gboolean xml_indent_tags; /* XML tag autoindentation, for HTML and XML filetypes */
GSList *tag_files;
gboolean warn_color_scheme;
+ gboolean user_extensions; // true if extensions were read from user config file
/* TODO: move to structure in build.h and only put a pointer here */
GeanyBuildCommand *filecmds;
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Mon, 10 Jun 2019 10:36:29 UTC
Commit: eed3615c6b9c632c5d6068ac5f76ab6e7254be56
https://github.com/geany/geany-osx/commit/eed3615c6b9c632c5d6068ac5f76ab6e7…
Log Message:
-----------
Updates related to the latest gtk-osx version
Modified Paths:
--------------
README.md
Modified: README.md
20 lines changed, 10 insertions(+), 10 deletions(-)
===================================================================
@@ -70,22 +70,22 @@ To create the bundle, you need to first install JHBuild and GTK as described bel
jhbuild will not interfere with some other command-line tools installed
on your system).
-2. Get `gtk-osx-build-setup.sh` by
+2. Get `gtk-osx-setup.sh` by
```
- curl -L -o gtk-osx-build-setup.sh https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/gtk-osx-build-setup.sh
+ curl -L -o gtk-osx-setup.sh https://gitlab.gnome.org/GNOME/gtk-osx/raw/master/gtk-osx-setup.sh
```
and run it:
```
- sh gtk-osx-build-setup.sh
+ sh gtk-osx-setup.sh
```
3. Run
```
- export PATH=$PATH:"$HOME/.local/bin"
+ export PATH=$PATH:"$HOME/.new_local/bin"
```
to set path to jhbuild installed in the previous step.
@@ -107,11 +107,11 @@ To create the bundle, you need to first install JHBuild and GTK as described bel
commands:
* **GTK 2**
```
- jhbuild bootstrap && jhbuild build python meta-gtk-osx-bootstrap meta-gtk-osx-freetype meta-gtk-osx-core
+ jhbuild bootstrap-gtk-osx && jhbuild build python python3 meta-gtk-osx-bootstrap meta-gtk-osx-core
```
* **GTK 3**
```
- jhbuild bootstrap && jhbuild build python meta-gtk-osx-bootstrap meta-gtk-osx-freetype meta-gtk-osx-gtk3
+ jhbuild bootstrap-gtk-osx && jhbuild build python python3 meta-gtk-osx-bootstrap meta-gtk-osx-gtk3
```
This is the moment when you have to make a decision whether to build
Geany with GTK 2 or GTK 3 - they cannot be installed side by side.
@@ -132,20 +132,20 @@ Geany Installation
* **GTK 2**
* **Geany from release tarball**
```
- jhbuild -m geany.modules build geany-bundle-release-gtk2
+ jhbuild -m `pwd`/geany.modules build geany-bundle-release-gtk2
```
* **Geany from git master**
```
- jhbuild -m geany.modules build geany-bundle-git-gtk2
+ jhbuild -m `pwd`/geany.modules build geany-bundle-git-gtk2
```
* **GTK 3**
* **Geany from release tarball**
```
- jhbuild -m geany.modules build geany-bundle-release-gtk3
+ jhbuild -m `pwd`/geany.modules build geany-bundle-release-gtk3
```
* **Geany from git master**
```
- jhbuild -m geany.modules build geany-bundle-git-gtk3
+ jhbuild -m `pwd`/geany.modules build geany-bundle-git-gtk3
```
Bundling
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
Branch: refs/heads/master
Author: Jiří Techet <techet(a)gmail.com>
Committer: Jiří Techet <techet(a)gmail.com>
Date: Mon, 10 Jun 2019 10:34:24 UTC
Commit: e29308594be5cab03990844eae02eca202c069d6
https://github.com/geany/geany-osx/commit/e29308594be5cab03990844eae02eca20…
Log Message:
-----------
Ask for the notarization password using the shell script
Modified Paths:
--------------
README.md
notarize.sh
Modified: README.md
8 lines changed, 4 insertions(+), 4 deletions(-)
===================================================================
@@ -227,11 +227,11 @@ Distribution
[Apple notary service](https://developer.apple.com/documentation/security/notarizing_your…,
run
```
- ./notarize.sh <dmg_file> <apple_id> <pwd_file>
+ ./notarize.sh <dmg_file> <apple_id>
```
- where `<dmg_file>` is the dmg file generated above, `<apple_id>` is
- the Apple ID used for your developer account, and `<pwd_file>` is
- a file containing an [app-specific password](https://support.apple.com/en-us/HT204397)
+ where `<dmg_file>` is the dmg file generated above and `<apple_id>`
+ is the Apple ID used for your developer account. The script then
+ prompts for an [app-specific password](https://support.apple.com/en-us/HT204397)
generated for your Apple ID.
Maintenance
Modified: notarize.sh
9 lines changed, 7 insertions(+), 2 deletions(-)
===================================================================
@@ -5,10 +5,15 @@
DMGFILE="${1}"
APPLEID="${2}"
-# file containing app-specific password, see https://support.apple.com/en-us/HT204397
-PASSWORD=`cat ${3}`
BUNDLEID="org.geany.geany"
+# App-specific password, see https://support.apple.com/en-us/HT204397
+stty -echo
+printf "Password: "
+read PASSWORD
+stty echo
+printf "\n"
+
echo "Uploading disk image for notarization. This can take a while.";
xcrun altool --notarize-app -f "${DMGFILE}" --primary-bundle-id "${BUNDLEID}" -u "${APPLEID}" -p "${PASSWORD}" > ${TMPDIR}notarize_output 2>&1 || { cat ${TMPDIR}notarize_output; rm -f ${TMPDIR}notarize_output; exit $?; };
cat ${TMPDIR}notarize_output;
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).