Skip to content

Commit d4fe6dc

Browse files
committed
Improve readme, add Acknowledgements
1 parent c5bbac6 commit d4fe6dc

File tree

1 file changed

+45
-13
lines changed

1 file changed

+45
-13
lines changed

README.md

Lines changed: 45 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,28 @@
11
# Swifty Swift Vim
22

3-
Swifty Swift Vim is a semantic editor backend for Vim and YouCompleteMe.
3+
Swifty Swift Vim is a semantic editor backend swift tailored to the needs of
4+
text editors.
45

5-
## Usage
6+
It was originally designed to integrate Swift into [YouCompleteMe](https://github.com/Valloric/YouCompleteMe/).
67

7-
Install the pull request branch of YCMD into YouCompleteMe.
8+
## YouCompleteMe Usage
9+
10+
Install the [RFC branch of YCMD with Swift Supprt](https://github.com/Valloric/ycmd/pull/487)
11+
into your YouCompleteMe installation.
812

913
Typically, this means going into wherever you cloned YouCompleteMe and then:
1014

1115
```
1216
mv third_party/ycmd third_party/ycmd-master
1317
git clone https://github.com/jerrymarino/ycmd.git
1418
15-
# Checout the RFC branch
19+
# Checkout the RFC branch
1620
git checkout remotes/origin/jmarino_swift_prototype_squashed
1721
git submodule update --init --recursive
1822
1923
# Build with swift support
20-
./build.py
24+
# ( Also, keep clang and potentially debug symbols --debug-symbols )
25+
./build.py --completers --swift-completer --clang-completer
2126
```
2227

2328
By default VIM does not support the `swift` filetype.
@@ -28,16 +33,16 @@ Cat this into your `.vimrc`
2833
autocmd BufNewFile,BufRead *.swift set filetype=swift
2934
```
3035

31-
Then, assert it's set to the correct value when a swift file is open.
36+
Then, assert it's set to the correct value when a `swift` file is open.
3237

3338
```
3439
:set ft?
3540
```
3641

37-
## Supported Features:
38-
39-
- Semantic Completion
42+
## Supported Features
4043

44+
- Code Completion
45+
- Semantic Diagnostics
4146

4247
## Design
4348

@@ -69,7 +74,7 @@ distribution.
6974
### Features
7075

7176
It eventually supports: semantic completion, GoTo definition, diagnostics,
72-
symbol useage, and documentation displaying. It should support compile command
77+
symbol usage, and documentation displaying. It should support compile command
7378
configuration via flags and a JSON compilation database to support complex
7479
projects, similar to clang's JSON compilation database.
7580

@@ -80,7 +85,7 @@ designed to work with YouCompleteMe YCMD. It uses HTTP as a protocol to
8085
integrate with YouCompleteMe:
8186
[https://val.markovic.io/articles/youcompleteme-as-a-server](YouCompleteMe)
8287

83-
The frontend is build on Beast HTTP and Boost ASIO
88+
The frontend is build on [Beast](https://github.com/vinniefalco/Beast) HTTP and Boost ASIO
8489

8590

8691
## Development
@@ -91,6 +96,33 @@ In the root directory, you can setup the repository with 1 line
9196
./bootstrap
9297
```
9398

94-
I log random musings about the trials and tribulations of developing and using
95-
this in `notes.txt`.
99+
I log random musings about developing and using this in `notes.txt`.
100+
101+
This project is still in early phases, and development happens sporadically.
102+
103+
**Contributions welcome**
104+
105+
### Ideas for starter projects
106+
- Write documentation that explains how to use this
107+
- Improve build system and dependency integration
108+
- Design an end to end integration testing system
109+
- Integrate GoogleTest for CPP units
110+
- Get `GoToDefinition` working end to end
111+
- Implement a semantic search engine
112+
- Add the ability to bootstrap a project from an Xcode project
113+
114+
### Ideas for YCM starter projects
115+
- Integrate Diagnostic support with YouCompleteMe
116+
- Add support for swift `.ycm_extra_conf`s in YCMD.
117+
118+
## Acknowledgements
119+
120+
The HTTP server stands on the shoulders of [Beast](https://github.com/vinniefalco/Beast)(s).
121+
Many thanks to @vinniefalco for Beast and his guidance for getting this up and
122+
running.
123+
124+
Thank you Apple for opening up the [Swift](https://github.com/apple/swift/) compiler and
125+
IDE facilities. This project would not be possible without this.
126+
127+
Thanks to @Valloric and the YCMD/YouCompleteMe project.
96128

0 commit comments

Comments
 (0)