*PicVim*                     A Neovim plugin for viewing and manipulating images

==============================================================================

INDEX
  |PicVim|
  |SYNOPSIS|
  |INSTALLATION|
  |CONFIGURATION|
  |USAGE|
  |HELP|

==============================================================================

1. *SYNOPSIS*

PicVim is a Neovim plugin that allows you to view and manipulate images in a
Neovim buffer. It also provides configurable key mappings for image navigation
and manipulation.
>lua
  require'picvim'.setup({ filetypes = { ... }, keymap = { ... } })
<
==============================================================================

2. *INSTALLATION*

Use your preferred plugin manager, e.g., with `lazy.nvim`:
>lua
  {
      'Toprun123/PicVim',
      config = function()
          require'picvim'.setup()
      end
  }
<
==============================================================================

3. *CONFIGURATION*

The plugin can be configured using:
>lua
  require'picvim'.setup({
      filetypes = {                         -- Default filetypes
          "png",                            -- For now only these are supported:
          "jpg",                            -- >   PNG, JPG, JPEG, GIF, BMP
          "jpeg",
          "gif",                            -- No need to set these if you want to
          "bmp",                            -- support all of these image formats.
      }
      keymap = {
          move_left = { "<Left>", "h" },    -- Pan left
          move_right = { "<Right>", "l" },  -- Pan right
          move_down = { "<Down>", "j" },    -- Pan down
          move_up = { "<Up>", "k" },        -- Pan up
          zoom_in = { "=", "+" },           -- Zoom in
          zoom_out = { "-", "_" },          -- Zoom out
          rotate_clockwise = "t",           -- Rotate clockwise
          rotate_counterclockwise = "T",    -- Rotate counterclockwise
          reset = "o",                      -- Reset image
          rerender = "r",                   -- Rerender image
      }
  })
<
  ┌─────────────────────────┬──────────────────┬──────────────────────────┐
  │ Options within `keymap`   │ Default Value    │ Description              │
  ├─────────────────────────┼──────────────────┼──────────────────────────┤
  │ `move_left`               │ `{"<Left>", "h"}  `│ Moves the image left     │
  │ `move_right`              │ `{"<Right>", "l"} `│ Moves the image right    │
  │ `move_down`               │ `{"<Down>", "j"}  `│ Moves the image down     │
  │ `move_up`                 │ `{"<Up>", "k"}`    │ Moves the image up       │
  │ `zoom_in`                 │ `{"=", "+"}`       │ Zooms into the image     │
  │ `zoom_out`                │ `{"-", "_"}`       │ Zooms out of the image   │
  │ `rotate_clockwise`        │ `"t"`              │ Rotates clockwise        │
  │ `rotate_counterclockwise `│ `"T"`              │ Rotates counterclockwise │
  │ `reset`                   │ `"o"`              │ Resets the image         │
  │ `rerender`                │ `"r"`              │ Rerenders the image      │
  └─────────────────────────┴──────────────────┴──────────────────────────┘

Filetypes defaults to:
- `{ "png", "jpg", "jpeg", "gif", "bmp" }`

- You can set custom filetypes using the `filetypes` option.
    - The value must be a table of strings.
    - Filetypes not in the default list will not work (They'll be ignored).

==============================================================================

4. *USAGE*

1. Open an image file in Neovim.
2. Use the configured (or default) keymaps to move, zoom, or rotate the image.
3. Press `o` to reset the image to its original state.
4. Press `r` to force a re-render.

==============================================================================

5. *HELP*

To view this help file inside Neovim, use:
>
  :h picvim
<
==============================================================================
vim:tw=78:ts=4:ft=help:norl:ft=help
