Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/phastmike/tags

A simple text tagger
https://github.com/phastmike/tags

gnome gnome-app tagger text-analysis vala vala-applications

Last synced: 10 days ago
JSON representation

A simple text tagger

Awesome Lists containing this project

README

        

# Tags

A GNOME text tagger inspired by the [TextAnalysisTool.NET](https://textanalysistool.github.io/)
tool.

The main goal is to aid log analysis by tagging lines with user defined colors.
Tags have a description name, a visibility toggle, a color scheme and a hit counter.

## Screenshot

![tagger](./data/screenshots/tags.png)

## Download

[![Download on flathub](https://dl.flathub.org/assets/badges/flathub-badge-en.png)](https://flathub.org/apps/io.github.phastmike.tags)

## Actions and Shortchuts

Ctrl + N : Add a Tag

Ctrl + S : Save tagged lines

Ctrl + C : Copy selected text lines to clipboard

Ctrl + H : Toggle untagged lines visibility

Ctrl + F : Hide/Show Tag list (bottom)

### Tags

Toggle the first ten tags with keyboard shortcuts.

Alt + 1 : Toggle enabled status for first tag

Alt + 2 : Toggle enabled status for second tag

...

Alt + 9 : Toggle enabled status for ninth tag

Alt + 0 : Toggle enabled status for tenth tag

### Navigation

-- *requires a tag to be selected on the tag list*

F2 : Previous tag hit

F3 : Next tag hit

---
#### Notice

**Using Ctrl instead of Alt will enable the respective tag
and hide all the others**.

---

### Additional features:

- Load tags
- Save tags
- Remove all tags
- Open new window
- User defined line numbering color scheme
- Simple tags based on a string containg a pattern
- Support for regular expressions
- Case sensitive support
- Automatic load tags file when opening a file and a similarly named file with
added `.tags` extension exists
- Navigate thru hits with F2 and F3
- Random color scheme on tag creation

## Development

Developed with Vala + Gtk4.

### Dependencies

It depends on:

- meson
- ninja
- valac
- Gtk 4
- LibAdwaita-1
- json-glib-1.0

### Build

Clone the repository and inside it, compile with:

`$ meson build && cd build && ninja`

Install with:

`$ ninja install`

Then, test it with:

`$ tags`

---

Only works with text files and uses string matching rules.