summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcadmio <gioresta87@gmail.com>2024-02-10 10:55:11 +0100
committercadmio <gioresta87@gmail.com>2024-02-10 10:55:11 +0100
commit10f10fa82752578e7eb34848bbe227282c0308b7 (patch)
treec5af79acec571d2131a3b1a58762cf8ffa19c404
parentd886d051ab6e7c9094876ce31d20a01458e8100c (diff)
downloadlitos4-10f10fa82752578e7eb34848bbe227282c0308b7.tar.gz
litos4-10f10fa82752578e7eb34848bbe227282c0308b7.tar.bz2
litos4-10f10fa82752578e7eb34848bbe227282c0308b7.zip
update all
-rw-r--r--README55
-rw-r--r--litosaccels.c7
-rw-r--r--litosfile.c41
-rw-r--r--org.litos.gtk.desktop2
4 files changed, 87 insertions, 18 deletions
diff --git a/README b/README
index 5e39121..9d0e222 100644
--- a/README
+++ b/README
@@ -1 +1,54 @@
-Step 3: Opening files, add a stack switcher
+# litos v. 4.0.0
+
+**litos** aims to be an easy-to-use and fast editor. My target is an editor for quickly editing HTML files, providing shortcuts for inserting HTML tags. I try to use the latest GTK features available, which means that if GTK adds something new in a major release that is useful for the editor, I will likely bump the GTK dependency and integrate this new feature in **litos**.
+
+### Required Packages
+
+Mousepad depends on the following packages:
+
+* gcc
+* make
+* pkg-config
+* libgtk-4-dev [GTK](https://www.gtk.org) >= 4.8.3
+* [GLib](https://wiki.gnome.org/Projects/GLib) >=2.42.0
+* libgtksourceview-4-dev [GtkSourceView](https://wiki.gnome.org/Projects/GtkSourceView) >=4.0
+* libaspell-dev
+
+### Installation
+
+From source code repository:
+
+ % cd litos
+ % make
+ % sudo make install
+
+### Usage
+
+* Ctrl+b If text is selected tranforms "string" into "&lt;b&gt;string&lt;/b&gt;"
+* Ctrl+i To tranform "string" into "&lt;i&gt;string&lt;/i&gt;"
+* Ctrl+2 To tranform "string" into "&lt;h2&gt;string&lt;/h2&gt;"
+* Ctrl+3 To tranform "string" into "&lt;h3&gt;string&lt;/h3&gt;"
+* Ctrl+p insert "&lt;/p&gt;" tag
+* Ctrl+ h insert "&lt;/a&gt;" tag
+* Ctrl+h insert "<a href=\"link\">this</a>"
+* Ctrl+Shift + p To tranform "string" into "&lt;sup&gt;string&lt;/sup&gt;"
+* Ctrl+l insert "&lt;/li&gt;" tag
+* Ctrl+g insert "&emsp;■□&emsp;" characters
+* Ctrl+g insert "<div class=\"eq\">this</p>"
+* Ctrl+d insert ⋅ character
+* Ctrl+m insert − character
+* Ctrl+r insert &lt;br&gt; characters
+* Ctrl+y insert ⟶⟼⇒ characters
+* Shift + Ctrl+y insert ⇌⟵⇐ characters
+* Ctrl m insert — character
+
+To create file from Templates make sure you've the "Templates" dir in you home direcotry and the file $HOME/.config/user-dirs.dirs exists (see https://wiki.archlinux.org/title/XDG_user_directories)
+
+###Authors
+
+Giovanni Resta - giovannirestadev@gmail.com
+
+### Reporting Bugs
+
+giovannirestadev@gmail.com
+
diff --git a/litosaccels.c b/litosaccels.c
index 14032e9..2343f0b 100644
--- a/litosaccels.c
+++ b/litosaccels.c
@@ -9,7 +9,6 @@ void litos_file_highlight_buffer(LitosFile *file);
GtkTextBuffer *litos_file_get_buffer(LitosFile *file);
GFile *litos_file_get_gfile(LitosFile* file);
void litos_file_reset_gfile(LitosFile *file);
-void litos_file_set_gfile(LitosFile *file, GFile *gfile);
gchar *litos_file_get_name(LitosFile *file);
gboolean litos_app_window_remove_child(LitosAppWindow *win);
@@ -242,7 +241,7 @@ insertHtmlTags (GSimpleAction *action, GVariant *parameter, gpointer app)
char *string = NULL;
- char replaceString[350] = { 0 };
+ char replaceString[650] = { 0 };
gchar *tag;
@@ -264,7 +263,7 @@ insertHtmlTags (GSimpleAction *action, GVariant *parameter, gpointer app)
else
{
- snprintf(replaceString, sizeof(replaceString), "</%c>", tag[1]);
+ snprintf(replaceString, sizeof(replaceString), "</%c>", tag[1]); /*e.g. enters </l> if Ctrl-l is pressed*/
gtk_text_buffer_insert_at_cursor (buffer, replaceString,(gint)strlen(replaceString));
}
@@ -320,7 +319,7 @@ void setAccels (GApplication *app)
{ "app.insert_html(\"<h3>%s</h3>\")", { "<Control>3", NULL} },
{ "app.insert_html('<a href=\"this.html\">%s</a>')", { "<Control>h", NULL} },
{ "app.insert_html(\"<p>%s</p>\")", { "<Control>p", NULL} },
- { "app.insert_html(\"<li>%s</li>\")", { "<Control>l", NULL} },
+ { "app.insert_html(\"<li><p>%s</p></li>\")", { "<Control>l", NULL} },
{ "app.insert_html(\"<sup>%s</sup>\")", { "<Control>e", NULL} },
{ "app.insert_html(\"<sub>%s</sub>\")", { "<Control>u", NULL} },
{ "app.insert_char('<div class=\"eq\">\n<p>this</p>\n</div>\')", { "<Control>g", NULL} },
diff --git a/litosfile.c b/litosfile.c
index db794ec..ea0142b 100644
--- a/litosfile.c
+++ b/litosfile.c
@@ -147,33 +147,33 @@ LitosFile *litos_file_new()
return g_object_new (LITOS_TYPE_FILE, NULL);
}
-void litos_file_set_gfile(LitosFile *file, GFile *gfile)
-{
- file->gfile = gfile;
-}
-
GtkWidget * litos_file_get_lbl(LitosFile *file)
{
+ g_object_ref(file->lbl);
return file->lbl;
}
GtkWidget * litos_file_get_view(LitosFile *file)
{
+ g_object_ref(file->view);
return file->view;
}
GFile *litos_file_get_gfile(LitosFile* file)
{
+ g_object_ref(file->gfile);
return file->gfile;
}
gchar *litos_file_get_name(LitosFile *file)
{
+ g_object_ref(file->name);
return file->name;
}
GtkTextBuffer *litos_file_get_buffer(LitosFile *file)
{
+ g_object_ref(file->buffer);
return file->buffer;
}
@@ -184,11 +184,13 @@ gboolean litos_file_get_saved(LitosFile *file)
void litos_file_reset_gfile(LitosFile *file)
{
+ g_object_unref(file->gfile);
file->gfile = NULL;
}
GtkWidget * litos_file_get_tabbox(LitosFile *file)
{
+ g_object_ref(file->tabbox);
return file->tabbox;
}
@@ -207,14 +209,29 @@ LitosFile * litos_file_set(struct Page *page)
{
LitosFile *file = litos_file_new();
- file->name = page->name;
file->gfile = page->gf;
- file->scrolled = page->scrolled;
- file->tabbox = page->tabbox;
- file->close_btn_box = page->close_btn_box;
- file->view = page->view;
- file->lbl = page->lbl;
- file->buffer = page->buffer;
+ g_object_unref(page->gf);
+
+ file->name = page->name;
+ g_object_unref(page->name);
+
+ file->scrolled = page->scrolled;
+ g_object_unref(page->scrolled);
+
+ file->tabbox = page->tabbox;
+ g_object_unref(page->tabbox);
+
+ file->close_btn_box = page->close_btn_box;
+ g_object_unref(page->close_btn_box);
+
+ file->view = page->view;
+ g_object_unref(page->view);
+
+ file->lbl = page->lbl;
+ g_object_unref(page->lbl);
+
+ file->buffer = page->buffer;
+ g_object_unref(page->buffer);
g_signal_connect (file->buffer, "notify::text", G_CALLBACK (_buffer_monitor_change), file);
diff --git a/org.litos.gtk.desktop b/org.litos.gtk.desktop
index 326e540..8cc2493 100644
--- a/org.litos.gtk.desktop
+++ b/org.litos.gtk.desktop
@@ -2,7 +2,7 @@
Name=litos
Exec=litos %U
Icon=litos
-DBusActivatable=true
+DBusActivatable=false
Terminal=false
Type=Application
Categories=Utility;TextEditor;GTK;