1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-02-09 10:50:07 +08:00

doc: Update development page (#4376)

This commit is contained in:
Wang Shidong 2021-08-09 21:37:50 +08:00 committed by GitHub
parent a7e9465a8c
commit ec1ff58124
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 247 additions and 111 deletions

View File

@ -13,17 +13,12 @@ description: "General contributing guidelines and changelog of SpaceVim, includi
- [Contributing code](#contributing-code) - [Contributing code](#contributing-code)
- [License](#license) - [License](#license)
- [Conventions](#conventions) - [Conventions](#conventions)
- [Git commit style guide](#git-commit-style-guide) - [Commit style guide](#commit-style-guide)
- [types](#types)
- [scopes](#scopes)
- [subject](#subject)
- [body](#body)
- [footer](#footer)
- [Pull Request](#pull-request) - [Pull Request](#pull-request)
- [Title prefix of pull request](#title-prefix-of-pull-request) - [Prefix of title](#prefix-of-title)
- [Rebase on top of upstream master](#rebase-on-top-of-upstream-master) - [Workflow](#workflow)
- [Ideally for simple PRs](#ideally-for-simple-prs) - [Simple PRs](#simple-prs)
- [For complex PRs](#for-complex-prs) - [Complex PRs](#complex-prs)
- [Contributing a layer](#contributing-a-layer) - [Contributing a layer](#contributing-a-layer)
- [File header](#file-header) - [File header](#file-header)
- [Author of a new layer](#author-of-a-new-layer) - [Author of a new layer](#author-of-a-new-layer)
@ -61,14 +56,28 @@ Besides, you can also [chat with us](../community/#chat)
## Reporting bugs ## Reporting bugs
If you run into a bug, please follow these guidelines to get feedback. If you run into a bug, please follow the guidelines below to give feedback.
before sending mail, please:
- Check that no duplicate issue in [google groups](https://groups.google.com/forum/#!forum/spacevim) - Check that no duplicate issue in [issue tracker](https://github.com/SpaceVim/SpaceVim/issues)
- Check that the issue has not been fixed in latest version of SpaceVim, - Check that the issue has not been fixed in latest version of SpaceVim,
please update your SpaceVim, and try to reproduce the bug here. please update your SpaceVim, and try to reproduce the bug here.
- Use a clear title with `[bug]` prefix. - Use a clear title with `bug reporting` issue template
- Include details on how to reproduce it, just like a step by step guide.
```
<!-- bug reporting without issue template will be closed automatically -->
## Expected behavior, english is required
## The reproduce ways from Vim starting (Required!)
## Debug info
<!-- Please press SPC h I, debug info will be put into clipboard, -->
<!-- then paste all content below. -->
## Screenshots
<!-- If you have any screenshots for this issue, -->
<!-- please upload here. -->
<!-- BTW you can use https://asciinema.org/ for recording video in terminal. -->
```
## Requesting new feature ## Requesting new feature
@ -91,8 +100,9 @@ You need to choose a concise title and refine the content in the issue template:
## Contributing code ## Contributing code
Code contributions are welcome. Please read the following sections carefully. Code and documentation contributions of any kind are welcome.
In any case, feel free to join us on the [gitter chat](https://gitter.im/SpaceVim/SpaceVim) to ask questions about contributing! Please read the following sections carefully.
In any case, feel free to [chat with us](../community/#chat) to ask questions about contributing!
### License ### License
@ -102,16 +112,18 @@ The license is GPLv3 for all the parts of SpaceVim. This includes:
- All the layer files. - All the layer files.
- The documentation - The documentation
For files not belonging to SpaceVim like local packages and libraries, For files not belonging to SpaceVim like bundle packages,
refer to the header file. Those files should not have an empty header, we may not accept code without a proper header file. refer to the header file. Those files should not have an empty header,
we may not accept code without a proper header file.
### Conventions ### Conventions
SpaceVim is based on conventions, mainly for naming functions, SpaceVim is based on conventions, mainly for naming functions,
keybindings definition and writing documentation. keybindings definition and writing documentation.
Please read the [conventions](https://spacevim.org/conventions/) before your first contribution to get to know them. Please read these [conventions](../conventions/) to make sure you
understand them before you contribute code or documentation for the first time.
### Git commit style guide ### Commit style guide
A git commit message consists a three distinct parts separated by black line. A git commit message consists a three distinct parts separated by black line.
@ -123,23 +135,25 @@ body
footer footer
``` ```
#### types **types:**
- `feat`: A new feature - `feat`: a new feature
- `fix`: A bug fix - `fix`: a bug fix
- `docs`: Changes to documentation - `docs`: changes to documentation
- `style`: Formatting, missing semi colons, etc; no code change - `style`: formatting, missing semi colons, etc; no code change
- `refactor`: Refactoring production code - `refactor`: refactoring production code
- `test`: Adding tests, refactoring test; no production code change - `test`: adding tests, refactoring test; no production code change
- `chore`: Updating build tasks, package manager configs, etc; no production code change - `chore`: updating build tasks, package manager configs, etc; no production code change
#### scopes **scopes:**
- `layer` - `core`: vim script in `autoload/SpaceVim/` directory
- `api` - `layer`: vim script in `autoload/SpaceVim/layers/` directory
- `plugin` - `api`: vim script in `autoload/SpaceVim/api/` directory
- `plugin`: vim script in `autoload/SpaceVim/plugins/` directory
- `bundle`: files in `bundle/` directory
#### subject **subject:**
Subjects should be no greater than 50 characters, Subjects should be no greater than 50 characters,
should begin with a capital letter and do not end with a period. should begin with a capital letter and do not end with a period.
@ -147,20 +161,20 @@ should begin with a capital letter and do not end with a period.
Use an imperative tone to describe what a commit does, Use an imperative tone to describe what a commit does,
rather than what it did. For example, use change; not changed or changes. rather than what it did. For example, use change; not changed or changes.
#### body **body:**
Not all commits are complex enough to warrant a body, Not all commits are complex enough to warrant a body,
therefore it is optional and only used when a commit requires a bit of explanation and context. therefore it is optional and only used when a commit requires a bit of explanation and context.
#### footer **footer**
The footer is optional and is used to reference issue tracker IDs. The footer is optional and is used to reference issue tracker IDs.
### Pull Request ### Pull Request
#### Title prefix of pull request #### Prefix of title
Pull request titles should contain one of these prefixes: The title of a pull request should contain one of the following prefixes::
- `Add:` Adding new features. - `Add:` Adding new features.
- `Change:` Change default behaviors or the existing features. - `Change:` Change default behaviors or the existing features.
@ -173,7 +187,7 @@ Here is an example:
`Website: Update the lang#c layer page.` `Website: Update the lang#c layer page.`
#### Rebase on top of upstream master #### Workflow
- Fork SpaceVim repository - Fork SpaceVim repository
- Clone your repository - Clone your repository
@ -195,7 +209,7 @@ git fetch upstream
git rebase upstream/master git rebase upstream/master
``` ```
#### Ideally for simple PRs #### Simple PRs
- Branch from `master` - Branch from `master`
- One topic per PR - One topic per PR
@ -203,7 +217,7 @@ git rebase upstream/master
- If you have several commits on different topics, close the PR and create one PR per topic - If you have several commits on different topics, close the PR and create one PR per topic
- If you still have several commits, squash them into only one commit - If you still have several commits, squash them into only one commit
#### For complex PRs #### Complex PRs
Squash only the commits with uninteresting changes like typos, syntax fixes, etc. Squash only the commits with uninteresting changes like typos, syntax fixes, etc.
And keep the important and isolated steps in different commits. And keep the important and isolated steps in different commits.

View File

@ -107,164 +107,276 @@ Before adding these languages, we need to know:
| 4th Dimension | | | | 4th Dimension | | |
| ABAP | | | | ABAP | | |
| ABC | | | | ABC | | |
| ABCL | | |
| ALF | | |
| ALGOL | | |
| APL | | |
| APL | | |
| ATLAS | | |
| Ada | | | | Ada | | |
| Ada | | |
| Afnix | | |
| Agilent VEE | | | | Agilent VEE | | |
| Agora | | |
| Algol | | | | Algol | | |
| Alice | | | | Alice | | |
| Angelscript | | | | Angelscript | | |
| Apex | | | | Apex | | |
| APL | | | | AppleScript | | |
| Applescript | | | | Applescript | | |
| Arc | | | | Arc | | |
| ATLAS | | | | AssemblyScript/assemblyscript | | |
| AutoIt | | |
| AutoIt | | | | AutoIt | | |
| AutoLISP | | | | AutoLISP | | |
| Automator | | | | Automator | | |
| Avenue | | | | Avenue | | |
| Awk | | | | Awk | | |
| Basic | | | | Awk | | |
| BASIC | | |
| BBC BASIC | | | | BBC BASIC | | |
| bc | | |
| BCPL | | | | BCPL | | |
| BETA | | | | BETA | | |
| BETA | | |
| Basic | | |
| BeanShell | | |
| Bliss | | |
| BlitzMax | | | | BlitzMax | | |
| Boo | | | | Boo | | |
| Bourne shell | | | | Bourne shell | | |
| C | | |
| C shell | | | | C shell | | |
| C# | | |
| C++ | | |
| C-Omega | | | | C-Omega | | |
| Ceylon | | |
| CFML | | | | CFML | | |
| cg | | |
| Ch | | |
| CHILL | | | | CHILL | | |
| CIL | | | | CIL | | |
| CL | | | | CL | | |
| Clarion | | | | CLEO | | |
| Clean | | | | CLIST | | |
| Clipper | | |
| CLU | | | | CLU | | |
| COBOL | | | | COBOL | | |
| Cobra | | | | COBOL | | |
| COMAL | | | | COMAL | | |
| Cecil | | |
| Ceylon | | |
| Ch | | |
| Charity | | |
| ChucK | | |
| Cilk | | |
| Clarion | | |
| Clean | | |
| Clean | | |
| Clipper | | |
| Cobra | | |
| Cobra | | |
| ColdFusion | | |
| Common Lisp | | | | Common Lisp | | |
| cT | | | | Component Pascal | | |
| Concurrent Pascal | | |
| Curl | | | | Curl | | |
| Curl | | |
| Curry | | |
| D | | |
| DASL | | |
| DCL | | | | DCL | | |
| DIBOL | | |
| Delphi | | | | Delphi | | |
| DiBOL | | | | DiBOL | | |
| Dylan | | | | Dylan | | |
| E | | | | E | | |
| E | | |
| ECMAScript | | | | ECMAScript | | |
| EGL | | | | EGL | | |
| EXEC | | |
| Eiffel | | |
| Emacs Lisp | | | | Emacs Lisp | | |
| Erlang | | |
| Etoys | | | | Etoys | | |
| Euphoria | | | | Euphoria | | |
| EXEC | | | | F# | | |
| F-Script | | |
| Falcon | | | | Falcon | | |
| Fantom | | | | Fantom | | |
| FascinatedBox/lily | | |
| Felix | | | | Felix | | |
| Forth | | | | Forth | | |
| Forth | | |
| Fortran | | |
| Fortress | | | | Fortress | | |
| Gambas | | | | Frege/frege | | |
| Fril | | |
| Frink | | |
| GAMS | | | | GAMS | | |
| GLSL | | | | GLSL | | |
| GML | | | | GML | | |
| GNU Octave | | | | GNU Octave | | |
| Haxe | | | | Gambas | | |
| Heron | | | | Game Maker Language | | |
| HPL | | | | HPL | | |
| HTML | | |
| Haskell | | |
| Haxe | | |
| HaxeFoundation/haxe | | |
| Heron | | |
| HyperTalk | | | | HyperTalk | | |
| Icon | | | | HyperTalk | | |
| ICI | | |
| IDL | | | | IDL | | |
| INTERCAL | | |
| IO | | |
| Icon | | |
| Inform | | | | Inform | | |
| Informix-4GL | | | | Informix-4GL | | |
| INTERCAL | | |
| Ioke | | | | Ioke | | |
| J | | |
| JADE | | | | JADE | | |
| JavaFX Script | | | | JASS | | |
| JOVIAL | | |
| JScript | | | | JScript | | |
| JScript.NET | | | | JScript.NET | | |
| Janus | | |
| Java | | |
| JavaFX Script | | |
| Joule | | |
| Joy | | |
| Kite | | |
| Korn shell | | | | Korn shell | | |
| LPC | | |
| LabVIEW | | | | LabVIEW | | |
| Ladder Logic | | | | Ladder Logic | | |
| Lasso | | | | Lasso | | |
| Lava | | |
| Leda | | |
| Limbo | | |
| Limbo | | | | Limbo | | |
| Lingo | | | | Lingo | | |
| Lisaac | | |
| Lisp | | |
| LiveCode | | | | LiveCode | | |
| Logo | | | | Logo | | |
| LotusScript | | | | LotusScript | | |
| LPC | | | | Lua | | |
| Lustre | | | | Lustre | | |
| M | | |
| M4 | | | | M4 | | |
| MAD | | | | MAD | | |
| Magic | | |
| Magik | | |
| Malbolge | | |
| MANTIS | | | | MANTIS | | |
| Maple | | | | MATLAB | | |
| Max/MSP | | |
| MAXScript | | | | MAXScript | | |
| MDX | | | | MDX | | |
| MEL | | | | MEL | | |
| Mercury | | |
| Miva | | |
| ML | | | | ML | | |
| Modula-2 | | | | ML | | |
| Modula-3 | | | | MOO | | |
| Monkey | | |
| MOO | | | | MOO | | |
| Moto | | |
| MQL4 | | | | MQL4 | | |
| MUMPS | | | | MUMPS | | |
| Magic | | |
| Magik | | |
| Malbolge | | |
| Maple | | |
| Max/MSP | | |
| Maya Embedded Language | | |
| Mercury | | |
| Miva | | |
| Modula-2 | | |
| Modula-2 | | |
| Modula-3 | | |
| Mondrian | | |
| Monkey | | |
| Moto | | |
| Moto | | |
| NATURAL | | | | NATURAL | | |
| Nemerle | | |
| NetLogo | | |
| NQC | | | | NQC | | |
| NSIS | | | | NSIS | | |
| NXT-G | | | | NXT-G | | |
| Nemerle | | |
| Nemerle | | |
| NetLogo | | |
| OPAL | | |
| OPL | | |
| OPS5 | | |
| Oberon | | |
| Oberon | | | | Oberon | | |
| Object Rexx | | | | Object Rexx | | |
| Object-Z | | |
| Objective-C | | |
| Obliq | | |
| Occam | | |
| Occam | | | | Occam | | |
| OpenCL | | | | OpenCL | | |
| OpenEdge ABL | | | | OpenEdge ABL | | |
| OPL | | | | Oxygene | | |
| Oxygene | | | | Oxygene | | |
| Oz | | | | Oz | | |
| Paradox | | | | Oz | | |
| Pike | | | | PCASTL | | |
| PHP | | |
| PILOT | | | | PILOT | | |
| PL/C | | |
| PL/I | | |
| PL/I | | | | PL/I | | |
| PL/SQL | | | | PL/SQL | | |
| Pliant | | |
| PostScript | | |
| POV-Ray | | | | POV-Ray | | |
| PWCT | | |
| Paradox | | |
| Pascal | | |
| Perl | | |
| Pict | | |
| Pike | | |
| Pliant | | |
| Pliant | | |
| Poplog | | |
| PostScript | | |
| PostScript | | |
| PowerBasic | | | | PowerBasic | | |
| PowerScript | | | | PowerScript | | |
| PWCT | | | | Prograph | | |
| Prolog | | |
| Pure Data | | | | Pure Data | | |
| PureBasic | | | | PureBasic | | |
| Python | | |
| Q | | |
| Q | | | | Q | | |
| REBOL | | | | REBOL | | |
| REBOL | | |
| REXX | | | | REXX | | |
| REXX | | |
| ROOP | | |
| RPG | | | | RPG | | |
| S-PLUS | | | | RPG | | |
| Rapira | | |
| Revolution | | |
| Ruby | | |
| S | | | | S | | |
| S-Lang | | |
| S-PLUS | | |
| SALSA | | |
| SAS | | | | SAS | | |
| Sather | | | | SGML | | |
| Scratch | | |
| sed | | |
| Seed7 | | |
| SIGNAL | | | | SIGNAL | | |
| Simula | | | | SMALL | | |
| Simulink | | |
| Slate | | |
| Smalltalk | | |
| Smarty | | |
| Snap! | | |
| SNOBOL | | | | SNOBOL | | |
| SPARK | | | | SPARK | | |
| SPSS | | | | SPSS | | |
| SQR | | | | SQR | | |
| SR | | |
| Sather | | |
| Scala | | |
| Scratch | | |
| Seed7 | | |
| Self | | |
| Simula | | |
| Simulink | | |
| Slate | | |
| Slate | | |
| Smalltalk | | |
| Smalltalk | | |
| Smarty | | |
| Snap! | | |
| Spin | | |
| Squeak | | | | Squeak | | |
| Squirrel | | | | Squirrel | | |
| Standard ML | | | | Standard ML | | |
@ -272,42 +384,52 @@ Before adding these languages, we need to know:
| Suneido | | | | Suneido | | |
| SuperCollider | | | | SuperCollider | | |
| TACL | | | | TACL | | |
| tcsh | | |
| Tex | | |
| thinBasic | | |
| TOM | | | | TOM | | |
| Tcl | | |
| Tex | | |
| Transact-SQL | | | | Transact-SQL | | |
| Vala/Genie | | | | Turing | | |
| VBScript | | |
| VBScript | | | | VBScript | | |
| Verilog | | |
| VHDL | | | | VHDL | | |
| Vala/Genie | | |
| Verilog | | |
| Visual Basic | | | | Visual Basic | | |
| Visual Basic | | |
| Visual FoxPro | | |
| WebAssembly | | | | WebAssembly | | |
| WebDNA | | | | WebDNA | | |
| Whitespace | | | | Whitespace | | |
| Windows PowerShell | | |
| Wolfram | | | | Wolfram | | |
| X10 | | | | X10 | | |
| xBase | | |
| XBase++ | | | | XBase++ | | |
| Xen | | | | XHTML | | |
| Xojo | | | | XL | | |
| XML | | |
| XOTcl | | |
| XPL | | | | XPL | | |
| XQuery | | | | XQuery | | |
| XSLT | | | | XSLT | | |
| Xen | | |
| Xojo | | |
| Xtend | | | | Xtend | | |
| yacc | | |
| Yorick | | | | Yorick | | |
| bc | | |
| cT | | |
| cg | | |
| dotnet/roslyn | | | | dotnet/roslyn | | |
| micropython/micropython | | |
| AssemblyScript/assemblyscript | | |
| Frege/frege | | |
| typelead/eta | | |
| programming-nu/nu | | |
| zdevito/terra | | |
| skiplang/skip | | |
| FascinatedBox/lily | | |
| rakudo/rakudo | | |
| lucee/Lucee | | |
| eclipse/golo-lang | | | | eclipse/golo-lang | | |
| HaxeFoundation/haxe | | |
| livecode/livecode | | | | livecode/livecode | | |
| lucee/Lucee | | |
| micropython/micropython | | |
| programming-nu/nu | | |
| rakudo/rakudo | | |
| sed | | |
| skiplang/skip | | |
| tcsh | | |
| thinBasic | | |
| typelead/eta | | |
| xBase | | |
| yacc | | |
| zdevito/terra | | |