Commit Graph

11 Commits

Author SHA1 Message Date
7a126af17a
Refactored main init.lua file
File has undergone refactor to reduce overall expected responsibility
which was temporary for kickstarting the extension.

The presser/init.lua script will now, and only now, be responsible for
handling and setting up configuration of presser itself (extensibility
to be concluded in future). Now, the script defines presser@setup()
which is to be called by a user in their Neovim config script. This
function currently defines one user command which allows for executing
the builtins@find_replace.

Most functions which were defined in table@presser have been migrated to
a new location presser/actions, defined in table@actions.

The function definition presser@find_replace has been migrated to
presser.builtins (in builtins@find_replace).

Consult other commits related to migrations for more info about specific
refactors.
2023-01-13 16:04:04 +00:00
686dbd9ae4
Upated context_manager
Added a getter function to return the current state of the global
context manager.
2023-01-13 16:02:11 +00:00
7908c64c00
Moved to presser subdirectory 2023-01-10 22:34:05 +00:00
d1ab26196a
Updated presser/utils.lua
Updated M@clean_buf. If the type is not string or is nil, return empty string.
2023-01-10 22:33:45 +00:00
4d40f43a73
Updated presser/init.lua
File has been moved to subdirectory.
Note: TBR = To Be Refactored/Restructured.

- changed `ctx` to `gcm` as import for context manager module.
	- gcm/GCM = global context manager
	- all associations with this variable have been updated
	  respectfully.
- func@new is no longer responsible for creating a new context in the
  GCM. This is now handled per built-in.
	- call to gcm@update now respects newly modified GCM structure.
- Added presser@move_next_buffer:
	- temporary function to experiment moving between buffers which
	  are marked as `allowed = true` in the GCM.
	- TBR.
- Added func@read_buffer:
	- reads the contents of all buffers in the GCM.
	- returns a table storing all collected buffer contents.
	- TBR.
- Added presser@execute:
	- temporary function which calls func@read_buffer and performs a
	  vim substitute as per the built-in presser@find_replace.
	 - TBR.
- Added func@start_buffer:
	- place the cursor in an initial buffer by name.
	- TBR. Should be func@put_cursor_in_buf (or similar).
- Updated keymap to store more keys for experimenting.
- Calculate the centre of the current window height (should check for
  split windows in future, or determine terminal size).
- Changed ordering of window creation. Windows created in order they are
  rendered.
2023-01-10 22:17:30 +00:00
a66d9ae62f
Updated context_manager/init.lua
- Added diagram for global context manager (GCM) structure.
- Removed local func@get_ctx_head (unused).
- Updated func@M.update:
	- function takes 2 parameter arguments (see docstring).
	- constructs new record for the given context in the GCM to keep
	  record of a newly constructed window buffer.
	- function updates the GCM with the new record.
- Updated func@M.flush:
	- handles for new structure of records in the GCM.
	- see docstring for info.
2023-01-10 22:02:16 +00:00
8f88af8d69
Renamed modules
Files were moved from top-level space into presser sub-directory.
2023-01-09 19:46:12 +00:00
90b57ed4b1
Added context manager module
Added a context manager for handling and managing windows/buffers
constructed by built-ins. This was handled by the `new()` function in
presser/init.lua but is now a dedicated module.
2023-01-09 19:44:44 +00:00
5f6839ca43
Updated init.lua
Script has been refactor and now easily allows for the creation of new
windows/buffers upon function call. Tracking windows/buffers previously
was invalid and lead to visual glitches of buffers. Windows/buffers now
belong to a context manager found within Vim's global scope, due to ease
of accessibility.

Created function `new()` which is responsible for constructing new
windows/buffers, updating the global context manager of newly added
windows/buffers, and allowing for customisation given by plenary.popup.
2023-01-08 22:31:34 +00:00
9472a7b969
Added utils.lua
File is not used extensively at current development; however, usage in
the future is to be considered.

Provide utility functions to aid built-in functions. Greater usage to be
made in future development.
2023-01-08 22:29:33 +00:00
ceb8576281
Added init.lua
First initial commit of file as a backup to refactor.
2023-01-08 12:35:11 +00:00