mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
doc/develop.txt: brevity
design-flexible and design-multi-platform sections are "obvious" by now (and covered in much of our other resources) and I've never seen it referenced in any discussion.
This commit is contained in:
parent
b12c20e466
commit
ab69944978
@ -4,7 +4,7 @@
|
|||||||
NVIM REFERENCE MANUAL
|
NVIM REFERENCE MANUAL
|
||||||
|
|
||||||
|
|
||||||
Development of Nvim. *development*
|
Development of Nvim *development*
|
||||||
|
|
||||||
Nvim is open source software. Everybody is encouraged to contribute.
|
Nvim is open source software. Everybody is encouraged to contribute.
|
||||||
https://github.com/neovim/neovim/blob/master/CONTRIBUTING.md
|
https://github.com/neovim/neovim/blob/master/CONTRIBUTING.md
|
||||||
@ -23,37 +23,17 @@ Note that some items conflict; this is intentional. A balance must be found.
|
|||||||
|
|
||||||
NVIM IS... IMPROVED *design-improved*
|
NVIM IS... IMPROVED *design-improved*
|
||||||
|
|
||||||
The IMproved bits of Vim should make it a better Vi, without becoming a
|
The Neo bits of Nvim should make it a better Vim, without becoming a
|
||||||
completely different editor. Extensions are done with a "Vi spirit".
|
completely different editor.
|
||||||
- Use the keyboard as much as feasible. The mouse requires a third hand,
|
- In matters of taste, prefer Vim/Unix tradition. If there is no relevant
|
||||||
which we don't have. Many terminals don't have a mouse.
|
Vim/Unix tradition, consider the "common case".
|
||||||
- When the mouse is used anyway, avoid the need to switch back to the
|
|
||||||
keyboard. Avoid mixing mouse and keyboard handling.
|
|
||||||
- Add commands and options in a consistent way. Otherwise people will have a
|
|
||||||
hard time finding and remembering them. Keep in mind that more commands and
|
|
||||||
options will be added later.
|
|
||||||
- A feature that people do not know about is a useless feature. Don't add
|
- A feature that people do not know about is a useless feature. Don't add
|
||||||
obscure features, or at least add hints in documentation that they exist.
|
obscure features, or at least add hints in documentation that they exist.
|
||||||
- Minimize using CTRL and other modifiers, they are more difficult to type.
|
|
||||||
- There are many first-time and inexperienced Vim users. Make it easy for
|
|
||||||
them to start using Vim and learn more over time.
|
|
||||||
- There is no limit to the features that can be added. Selecting new features
|
- There is no limit to the features that can be added. Selecting new features
|
||||||
is based on (1) what users ask for, (2) how much effort it takes to
|
is based on (1) what users ask for, (2) how much effort it takes to
|
||||||
implement and (3) someone actually implementing it.
|
implement and (3) someone actually implementing it.
|
||||||
|
- Backwards compatibility is a feature. The RPC API in particular should
|
||||||
|
never break.
|
||||||
NVIM IS... MULTI PLATFORM *design-multi-platform*
|
|
||||||
|
|
||||||
Vim tries to help as many users on as many platforms as possible.
|
|
||||||
- Support many kinds of terminals. The minimal demands are cursor positioning
|
|
||||||
and clear-screen. Commands should only use key strokes that most keyboards
|
|
||||||
have. Support all the keys on the keyboard for mapping.
|
|
||||||
- Support many platforms. A condition is that there is someone willing to do
|
|
||||||
Vim development on that platform, and it doesn't mean messing up the code.
|
|
||||||
- Support many compilers and libraries. Not everybody is able or allowed to
|
|
||||||
install another compiler or GUI library.
|
|
||||||
- People switch from one platform to another, and from GUI to terminal
|
|
||||||
version. Features should be present in all versions.
|
|
||||||
|
|
||||||
|
|
||||||
NVIM IS... WELL DOCUMENTED *design-documented*
|
NVIM IS... WELL DOCUMENTED *design-documented*
|
||||||
@ -90,15 +70,6 @@ NVIM IS... MAINTAINABLE *design-maintain*
|
|||||||
knowledge spread to other parts of the code.
|
knowledge spread to other parts of the code.
|
||||||
|
|
||||||
|
|
||||||
NVIM IS... FLEXIBLE *design-flexible*
|
|
||||||
|
|
||||||
Vim should make it easy for users to work in their preferred styles rather
|
|
||||||
than coercing its users into particular patterns of work. This can be for
|
|
||||||
items with a large impact or for details. The defaults are carefully chosen
|
|
||||||
such that most users will enjoy using Vim as it is. Commands and options can
|
|
||||||
be used to adjust Vim to the desire of the user and its environment.
|
|
||||||
|
|
||||||
|
|
||||||
NVIM IS... NOT *design-not*
|
NVIM IS... NOT *design-not*
|
||||||
|
|
||||||
Nvim is not an operating system; instead it should be composed with other
|
Nvim is not an operating system; instead it should be composed with other
|
||||||
|
Loading…
Reference in New Issue
Block a user