Notesh


NameNotesh JSON
Version 0.8.0 PyPI version JSON
download
home_pagehttp://github.com/Cvaniak/Notesh
SummaryNoteSH: A fully functional sticky notes App in your Terminal!
upload_time2023-10-03 21:31:16
maintainer
docs_urlNone
authorCvaniak
requires_python>=3.7, <4
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
  <h1 align="center"> 📝 NoteSH </h1>
</p>

<p align="center">
 Fully functional sticky notes App in your Terminal! Built with <a href="https://github.com/Textualize/textual">Textual</a>, an amazing TUI framework!
</p>

<p align="center">
 <a href="https://github.com/Cvaniak/NoteSH"><img alt="" src="https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/NoteshApp.png" width="100%"></a>
</p>

## In last Update 

* [**Hoptex**](https://github.com/Cvaniak/Hoptex) Support (you can focus anything easy now)! 
* User default note file

![Hoptex Usage](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/HoptexNotesh.gif)

## Installation

Best option to install is using [pipx](https://github.com/pypa/pipx):

```bash
pipx install notesh
# but it is still possible to do it with just pip:
pip install notesh
```

## Usage

To start using just type in your terminal:

```bash
notesh
```

it will create new file notes.json in current directory.
You can also specify file by using `-f` flag:

```bash
notesh -f MyNotes.json
# or full/relative path
notesh -f ~/Documents/MyNotes.json
```

## ➕ Create new Note

* To create new note just press `Ctrl+A`
* You can change color with buttons but also using scroll
* To edit note just click in its body

![New note](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/CreateNote.gif)

## 🧅 It supports layers

* To move note grab it top part and move with mouse

![Layers](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/Layers.gif)

## 🗚  You can resize notes

* To resize grab left bottom corner and move with mouse

![Resize Notes](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/Resizing.gif)

## 💡 And background is resizable

* If you make make background to big it will readjust after you reopen App
* You can also click `CTRL-Mouse` to look around whole wall

![Resize Background](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/DynamicResize.gif)

## 💡 Highlight when mouse is over

![Resize Background](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/HoverOver.gif)

## ➕ New Drawable that support borders change

![Resize Background](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/NewDrawable.png)

## ⌨️  Vim/Custom key bindings

You can now do everything using KEYBOARD!
This is first version so if you have any suggestions please write them in existing issue.  
Default keybindings are in `default_bindings.toml`
file that is in root of installation.  
You can also create second file `user_bindings.toml` where you can overwrite defaults.

### What you can do

* Change focus `focus_next/focus_previous` using `ctrl+i,ctrl+j/ctrl+o,ctrl+k`
* Edit note `edit` using `i`
* When note is focused you can move it with `j/k/l/h`.
  Also adding shift moves it more with one click
* Clicking `unfocus` using `escape` returns from edit mode,
  and unfocus drawable if not in edit mode.
* Resize note using `+/-` for vertical and `>/<` for horizontal
* Bring 'ctrl+f' Forward and `ctrl+b` Backward Note

### Bindings file

<details>
<summary>Default file</summary>

```toml
# These are default, they also are displayed at the footer
[default]
quit = ["ctrl+q,ctrl+c", "Quit"]
toggle_sidebar_left = ["ctrl+e", "Sidebar Left"]
add_note = ["ctrl+a", "Create Stick Note"]
add_box = ["ctrl+x", "Create Box"]
save_notes = ["ctrl+s", "Save Notes"]
unfocus = ["escape", "Unfocus"]
"app.toggle_dark" = ["ctrl+t", "Dark/Light"]

[moving_drawables]
# Default movement
left = "h"
right = "l"
up = "k"
down = "j"
# You can add number after _ and it will move note that many times
left_5 = "H"
right_5 = "L"
up_5 = "K"
down_5 = "J"

[normal_insert]
# there is only `next` and `previous` and the order is not changable yet
focus_next = "ctrl+i,ctrl+j"
focus_previous = "ctrl+o,ctrl+k"
unfocus = "escape"

[normal]
edit = "i"
delete = "Q"
add_note = "o"
add_box = "O"

# For special characters like `+` or `<` you need to use names
# You can check the name using textual `textual keys`
[resize_drawable]
h_plus = "greater_than_sign"
h_minus = "less_than_sign"
v_plus = "plus"
v_minus = "minus"

# It brings at the top or bottom the note
[bring_drawable]
forward = "ctrl+f"
backward = "ctrl+b"

[hoptex]
focus = "ctrl+n"
quit = "escape,ctrl+c"
unfocus = "escape,ctrl+c"
```

</details>


## Change Background Color in Left Sidebar

By default you can use `ctrl+e` to open Left Sidebar:

![New note](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/ChangeBackgroundColor.gif)

## NEW FEATURES

## TODO

There are many thigs to add! If you have idea, please create Issue with your suggestions.

* [ ] Safe saving (now if there are any bugs you may lost your notes)
* [x] Vim Key bindings
  * Wait for feedback
* [ ] Duplicate Note
* [ ] Hiding menu (Color Picker etc.)
* [x] TOML config file
* [ ] Left Sidebar (for background and preferences)
  * [x] Background color
* [ ] Align tool for text
* [ ] Fixed layers (if needed)
* [ ] Diffrent Drawables:
  * [ ] Check List
  * [ ] Arrows
* [ ] Help Screen
* [ ] Command Pallet support 
* [ ] Menu to choose borders
* [ ] Buttons to add new notes

and also resolve problems:

* [ ] Multiline Input (currently textual does not support it and here we have my hacky solution)  

## Thanks

Big thanks to [Will McGugan](https://github.com/willmcgugan) and all members and contributors of [Textualize.io](https://textualize.io)!
Go checkout [Textual](https://github.com/Textualize/textual) amazing TUI framework on which this app is based.

            

Raw data

            {
    "_id": null,
    "home_page": "http://github.com/Cvaniak/Notesh",
    "name": "Notesh",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7, <4",
    "maintainer_email": "",
    "keywords": "",
    "author": "Cvaniak",
    "author_email": "igna.cwaniak@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/36/77/bcc8190086d79927cecbf1789182ebba07320805481f8d0a760398ea2920/Notesh-0.8.0.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n  <h1 align=\"center\"> \ud83d\udcdd NoteSH </h1>\n</p>\n\n<p align=\"center\">\n Fully functional sticky notes App in your Terminal! Built with <a href=\"https://github.com/Textualize/textual\">Textual</a>, an amazing TUI framework!\n</p>\n\n<p align=\"center\">\n <a href=\"https://github.com/Cvaniak/NoteSH\"><img alt=\"\" src=\"https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/NoteshApp.png\" width=\"100%\"></a>\n</p>\n\n## In last Update \n\n* [**Hoptex**](https://github.com/Cvaniak/Hoptex) Support (you can focus anything easy now)! \n* User default note file\n\n![Hoptex Usage](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/HoptexNotesh.gif)\n\n## Installation\n\nBest option to install is using [pipx](https://github.com/pypa/pipx):\n\n```bash\npipx install notesh\n# but it is still possible to do it with just pip:\npip install notesh\n```\n\n## Usage\n\nTo start using just type in your terminal:\n\n```bash\nnotesh\n```\n\nit will create new file notes.json in current directory.\nYou can also specify file by using `-f` flag:\n\n```bash\nnotesh -f MyNotes.json\n# or full/relative path\nnotesh -f ~/Documents/MyNotes.json\n```\n\n## \u2795 Create new Note\n\n* To create new note just press `Ctrl+A`\n* You can change color with buttons but also using scroll\n* To edit note just click in its body\n\n![New note](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/CreateNote.gif)\n\n## \ud83e\uddc5 It supports layers\n\n* To move note grab it top part and move with mouse\n\n![Layers](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/Layers.gif)\n\n## \ud83d\uddda  You can resize notes\n\n* To resize grab left bottom corner and move with mouse\n\n![Resize Notes](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/Resizing.gif)\n\n## \ud83d\udca1 And background is resizable\n\n* If you make make background to big it will readjust after you reopen App\n* You can also click `CTRL-Mouse` to look around whole wall\n\n![Resize Background](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/DynamicResize.gif)\n\n## \ud83d\udca1 Highlight when mouse is over\n\n![Resize Background](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/HoverOver.gif)\n\n## \u2795 New Drawable that support borders change\n\n![Resize Background](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/NewDrawable.png)\n\n## \u2328\ufe0f  Vim/Custom key bindings\n\nYou can now do everything using KEYBOARD!\nThis is first version so if you have any suggestions please write them in existing issue.  \nDefault keybindings are in `default_bindings.toml`\nfile that is in root of installation.  \nYou can also create second file `user_bindings.toml` where you can overwrite defaults.\n\n### What you can do\n\n* Change focus `focus_next/focus_previous` using `ctrl+i,ctrl+j/ctrl+o,ctrl+k`\n* Edit note `edit` using `i`\n* When note is focused you can move it with `j/k/l/h`.\n  Also adding shift moves it more with one click\n* Clicking `unfocus` using `escape` returns from edit mode,\n  and unfocus drawable if not in edit mode.\n* Resize note using `+/-` for vertical and `>/<` for horizontal\n* Bring 'ctrl+f' Forward and `ctrl+b` Backward Note\n\n### Bindings file\n\n<details>\n<summary>Default file</summary>\n\n```toml\n# These are default, they also are displayed at the footer\n[default]\nquit = [\"ctrl+q,ctrl+c\", \"Quit\"]\ntoggle_sidebar_left = [\"ctrl+e\", \"Sidebar Left\"]\nadd_note = [\"ctrl+a\", \"Create Stick Note\"]\nadd_box = [\"ctrl+x\", \"Create Box\"]\nsave_notes = [\"ctrl+s\", \"Save Notes\"]\nunfocus = [\"escape\", \"Unfocus\"]\n\"app.toggle_dark\" = [\"ctrl+t\", \"Dark/Light\"]\n\n[moving_drawables]\n# Default movement\nleft = \"h\"\nright = \"l\"\nup = \"k\"\ndown = \"j\"\n# You can add number after _ and it will move note that many times\nleft_5 = \"H\"\nright_5 = \"L\"\nup_5 = \"K\"\ndown_5 = \"J\"\n\n[normal_insert]\n# there is only `next` and `previous` and the order is not changable yet\nfocus_next = \"ctrl+i,ctrl+j\"\nfocus_previous = \"ctrl+o,ctrl+k\"\nunfocus = \"escape\"\n\n[normal]\nedit = \"i\"\ndelete = \"Q\"\nadd_note = \"o\"\nadd_box = \"O\"\n\n# For special characters like `+` or `<` you need to use names\n# You can check the name using textual `textual keys`\n[resize_drawable]\nh_plus = \"greater_than_sign\"\nh_minus = \"less_than_sign\"\nv_plus = \"plus\"\nv_minus = \"minus\"\n\n# It brings at the top or bottom the note\n[bring_drawable]\nforward = \"ctrl+f\"\nbackward = \"ctrl+b\"\n\n[hoptex]\nfocus = \"ctrl+n\"\nquit = \"escape,ctrl+c\"\nunfocus = \"escape,ctrl+c\"\n```\n\n</details>\n\n\n## Change Background Color in Left Sidebar\n\nBy default you can use `ctrl+e` to open Left Sidebar:\n\n![New note](https://raw.githubusercontent.com/Cvaniak/NoteSH/master/documentation/ChangeBackgroundColor.gif)\n\n## NEW FEATURES\n\n## TODO\n\nThere are many thigs to add! If you have idea, please create Issue with your suggestions.\n\n* [ ] Safe saving (now if there are any bugs you may lost your notes)\n* [x] Vim Key bindings\n  * Wait for feedback\n* [ ] Duplicate Note\n* [ ] Hiding menu (Color Picker etc.)\n* [x] TOML config file\n* [ ] Left Sidebar (for background and preferences)\n  * [x] Background color\n* [ ] Align tool for text\n* [ ] Fixed layers (if needed)\n* [ ] Diffrent Drawables:\n  * [ ] Check List\n  * [ ] Arrows\n* [ ] Help Screen\n* [ ] Command Pallet support \n* [ ] Menu to choose borders\n* [ ] Buttons to add new notes\n\nand also resolve problems:\n\n* [ ] Multiline Input (currently textual does not support it and here we have my hacky solution)  \n\n## Thanks\n\nBig thanks to [Will McGugan](https://github.com/willmcgugan) and all members and contributors of [Textualize.io](https://textualize.io)!\nGo checkout [Textual](https://github.com/Textualize/textual) amazing TUI framework on which this app is based.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "NoteSH: A fully functional sticky notes App in your Terminal!",
    "version": "0.8.0",
    "project_urls": {
        "Homepage": "http://github.com/Cvaniak/Notesh"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "76055c70944c519580d4773b3210ec1ae546f9c40329cc60220e899a743d3d42",
                "md5": "ee52366d6769fd62c696a21176487b77",
                "sha256": "3d4c3f2abc76b1f881aedcb79d94f985f7b191eec4246bf7cdf1402d7723aa6a"
            },
            "downloads": -1,
            "filename": "Notesh-0.8.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ee52366d6769fd62c696a21176487b77",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7, <4",
            "size": 24601,
            "upload_time": "2023-10-03T21:31:14",
            "upload_time_iso_8601": "2023-10-03T21:31:14.829255Z",
            "url": "https://files.pythonhosted.org/packages/76/05/5c70944c519580d4773b3210ec1ae546f9c40329cc60220e899a743d3d42/Notesh-0.8.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3677bcc8190086d79927cecbf1789182ebba07320805481f8d0a760398ea2920",
                "md5": "d2bd767667d73bdbdc492a72f2447a36",
                "sha256": "8c283184685a55a1cfb9ebb5d40f0836efe79acfabedf2a98cd46bd0677ba6a7"
            },
            "downloads": -1,
            "filename": "Notesh-0.8.0.tar.gz",
            "has_sig": false,
            "md5_digest": "d2bd767667d73bdbdc492a72f2447a36",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7, <4",
            "size": 17652,
            "upload_time": "2023-10-03T21:31:16",
            "upload_time_iso_8601": "2023-10-03T21:31:16.604610Z",
            "url": "https://files.pythonhosted.org/packages/36/77/bcc8190086d79927cecbf1789182ebba07320805481f8d0a760398ea2920/Notesh-0.8.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-10-03 21:31:16",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Cvaniak",
    "github_project": "Notesh",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "notesh"
}
        
Elapsed time: 0.65370s