1
1
mirror of https://github.com/qvacua/vimr.git synced 2024-12-19 03:31:32 +03:00
Commit Graph

321 Commits

Author SHA1 Message Date
Tae Won Ha
137831e367
GH-262 Launch NeoVimServer using login shell. 2016-08-26 17:27:42 +02:00
Tae Won Ha
772b824a5e Set snapshot version: 0.9.0-SNAPSHOT-20160825.2258-64 2016-08-25 22:58:30 +02:00
Tae Won Ha
762c1e7267
GH-251, GH-258 Show a warning when there was an error during the initialization of init.vim 2016-08-25 22:52:31 +02:00
Tae Won Ha
fb86c67c73 Set snapshot version: 0.9.0-SNAPSHOT-20160825.1621-63 2016-08-25 16:22:20 +02:00
Tae Won Ha
61b882bdd1
GH-261 Compute the cell correctly when clicked 2016-08-25 16:08:54 +02:00
Tae Won Ha
44377b7011 Set snapshot version: 0.9.0-SNAPSHOT-20160825.1535-62 2016-08-25 15:35:40 +02:00
Tae Won Ha
a53073e6a0
GH-252 Use different color when drawing cursor
- when bg=dark, then use the foreground
2016-08-25 15:26:45 +02:00
Tae Won Ha
80a76019af Set snapshot version: 0.9.0-SNAPSHOT-20160825.1015-61 2016-08-25 10:16:05 +02:00
Tae Won Ha
d36967816b
GH-232 Open files from vimr 2016-08-24 23:12:33 +02:00
Tae Won Ha
4b3e756e0f
GH-232 Reformat 2016-08-21 20:00:29 +02:00
Tae Won Ha
a236b2c16a
GH-232 Launch neovim synchronously.
- The agent waits till neovim has finished launching. This makes many
  things easier...
2016-08-21 18:43:21 +02:00
Tae Won Ha
c52eccbed9 Set snapshot version: 0.9.0-SNAPSHOT-20160820.1912-60 2016-08-20 19:13:20 +02:00
Tae Won Ha
85d17cfb73
GH-255 Add Save and Save As menu items 2016-08-20 19:02:16 +02:00
Tae Won Ha
0b8469a011 Set snapshot version: 0.9.0-SNAPSHOT-20160820.1706-59 2016-08-20 17:06:51 +02:00
Tae Won Ha
918c743c89
GH-257 Let neovim clean up when using Cmd-Q
- Refactor NeoVimView slightly
2016-08-20 16:59:30 +02:00
Tae Won Ha
ee3a07ec14 Set snapshot version: 0.9.0-SNAPSHOT-20160819.0745-58 2016-08-19 07:45:56 +02:00
Tae Won Ha
49cf51077c
GH-229 Send dirty status when changed to the UI 2016-08-18 23:11:33 +02:00
Tae Won Ha
ea31a26676 Set snapshot version: 0.9.0-SNAPSHOT-20160818.2037-57 2016-08-18 20:38:02 +02:00
Tae Won Ha
940e9b00d9 Set snapshot version: 0.9.0-SNAPSHOT-20160818.1757-56 2016-08-18 17:57:45 +02:00
Tae Won Ha
810dda95a6
GH-243 Add a comment 2016-08-18 17:42:26 +02:00
Tae Won Ha
07a16e6d99
GH-243 Set $PATH when launching neovim 2016-08-18 17:40:41 +02:00
Tae Won Ha
112e614aeb
GH-243 Add ShellUtils
- run command
- get path of user's shell
2016-08-18 17:40:04 +02:00
Tae Won Ha
21c58ec259 Set snapshot version: 0.9.0-SNAPSHOT-20160816.2159-55 2016-08-16 21:59:49 +02:00
Tae Won Ha
0d6d804925
GH-253 Improve cursor rendering
- Tried to minimize the background filling by only filling the cursor
  rects, but it did not work. Dunno why...
2016-08-16 21:52:36 +02:00
Tae Won Ha
6c9e6ff612
GH-225 Display cell size when resizing 2016-08-15 21:53:40 +02:00
Tae Won Ha
53ee7612d1
User user's monospace font by default 2016-08-15 21:02:35 +02:00
Tae Won Ha
392d627b46 Set snapshot version: 0.9.0-SNAPSHOT-20160815.2034-54 2016-08-15 20:34:46 +02:00
Tae Won Ha
ee8f4fdc06
GH-252 Update cursor when putting 2016-08-15 20:30:44 +02:00
Tae Won Ha
f25e06cdfa Set snapshot version: 0.9.0-SNAPSHOT-20160815.1635-53 2016-08-15 16:35:33 +02:00
Tae Won Ha
832b05f75f
GH-245 A flag will be sent to agent from server whether there was an error during the initialization. 2016-08-15 16:08:03 +02:00
Tae Won Ha
a7aa7fb6f9 Set snapshot version: 0.9.0-SNAPSHOT-20160814.2233-52 2016-08-14 22:33:22 +02:00
Tae Won Ha
fcd546d8e7
Check for nil responses 2016-08-13 11:20:03 +02:00
Tae Won Ha
4cfb644a0e
GH-248 Deactivate some logs 2016-08-12 23:44:16 +02:00
Tae Won Ha
534a0077e1
GH-248 Close the current tab instead of always closing the whole window 2016-08-12 23:07:16 +02:00
Tae Won Ha
9d16ae1d26 Set snapshot version: 0.9.0-SNAPSHOT-20160812.1949-51 2016-08-12 19:49:53 +02:00
Tae Won Ha
a7716c5c7e
GH-247 Clean up swap files
- Cleaning the swap files are done by `ml_close_all()` in `mch_exit()`
  and now we call it before stopping UI in neovim.
- When all main windows are closed we quit. Using Observable here, but
  it's messy...
2016-08-12 19:37:03 +02:00
Tae Won Ha
c6282bb2f4 Set snapshot version: 0.9.0-SNAPSHOT-20160812.1638-50 2016-08-12 16:39:06 +02:00
Tae Won Ha
e011498299
GH-228 Rename NeoVimTypes to NeoVimBuffer 2016-08-12 15:19:06 +02:00
Tae Won Ha
2055fcb104
GH-228 Refactor slightly 2016-08-12 15:16:43 +02:00
Tae Won Ha
7871eddd63
GH-228 Refactor open and open in new tab 2016-08-12 14:57:39 +02:00
Tae Won Ha
c2e79e0632
GH-228 Add get all buffers 2016-08-12 14:57:38 +02:00
Tae Won Ha
b84e24a2d5
GH-228 Open when drag & dropping 2016-08-12 14:57:35 +02:00
Tae Won Ha
ecc63fbbfe
GH-228 Open files using escaped file name
- Let NeoVim escape the file names.
2016-08-12 10:51:44 +02:00
Tae Won Ha
d1676d38f8
GH-228 Typo 2016-08-11 22:52:36 +02:00
Tae Won Ha
179bc3e03e
GH-228 Add external parameter name 2016-08-11 22:50:44 +02:00
Tae Won Ha
6e723ddeeb
GH-228 Add open 2016-08-11 22:37:41 +02:00
Tae Won Ha
8de82c2d30
GH-228 Add newTab and openInNewTab 2016-08-11 21:19:03 +02:00
Tae Won Ha
382394dad5
GH-228 Update MMCoreTextView.m
- no changes from 104 to 106
2016-08-11 18:49:28 +02:00
Tae Won Ha
b539ed86a2
Delete unused stuff (forceRedraw) 2016-08-09 21:54:56 +02:00
Tae Won Ha
67b25c2c90 Set snapshot version: 0.9.0-SNAPSHOT-20160809.1910-49 2016-08-09 19:11:02 +02:00
Tae Won Ha
d56972966c
GH-234 Simplify a bit 2016-08-09 18:50:35 +02:00
Tae Won Ha
2118542031
GH-234 Implement other edit menu items
- Sync Mode with ui.c
- Refactor cut/copy/paste
2016-08-09 18:38:49 +02:00
Tae Won Ha
893b84c37f Set snapshot version: 0.9.0-SNAPSHOT-20160808.1924-48 2016-08-08 19:25:31 +02:00
Tae Won Ha
51271dcf0a Set snapshot version: 0.9.0-SNAPSHOT-20160807.1818-47 2016-08-07 18:18:35 +02:00
Tae Won Ha
c78d8f8f80
Merge branch 'issue/214-cursor' 2016-08-07 18:14:58 +02:00
Tae Won Ha
95e5c22052
GH-214 Improve background drawing
- draw only when not equal to the default background
- use the foreground color when drawing the cursor
2016-08-07 18:14:02 +02:00
Tae Won Ha
feef6091d9 Set snapshot version: 0.9.0-SNAPSHOT-20160807.1627-46 2016-08-07 16:27:29 +02:00
Tae Won Ha
efc3ef4c3b
GH-214 When not in Commandline mode, draw the screenCursor and not the put-cursor. 2016-08-07 16:15:33 +02:00
Tae Won Ha
192a5534bc Set snapshot version: 0.9.0-SNAPSHOT-20160804.2342-45 2016-08-04 23:43:27 +02:00
Tae Won Ha
9885505a68
GH-226 Enable or disable cut/copy/paste menu items 2016-08-04 23:34:09 +02:00
Tae Won Ha
74f5989ec3
GH-226 Comment out a log msg 2016-08-04 23:19:31 +02:00
Tae Won Ha
ce18e5cdee
GH-226 Implement cut/copy/paste
- cursor drawing is not yet correct
2016-08-04 23:13:40 +02:00
Tae Won Ha
dcb31e895c
GH-226 Reformat 2016-08-03 22:33:33 +02:00
Tae Won Ha
8c7e7b8ca6
GH-226 Import Cocoa (almost) everywhere in SwiftNeoVim 2016-08-03 21:43:05 +02:00
Tae Won Ha
972d04f0f5
GH-226 Reformat 2016-08-03 21:35:24 +02:00
Tae Won Ha
729ba7429a
GH-226 Add Mode enum and use it 2016-08-03 21:34:39 +02:00
Tae Won Ha
0300546a71 Set snapshot version: 0.9.0-SNAPSHOT-20160803.1908-44 2016-08-03 19:09:10 +02:00
Tae Won Ha
375f988ddd Set snapshot version: 0.9.0-SNAPSHOT-20160802.1833-43 2016-08-02 18:34:14 +02:00
Tae Won Ha
145e732d97 Set snapshot version: 0.9.0-SNAPSHOT-20160801.2216-42 2016-08-01 22:16:42 +02:00
Tae Won Ha
18bc493ec4
GH-221 Refactor slightly 2016-08-01 21:57:06 +02:00
Tae Won Ha
d9a5e907e0
GH-221 Fix cursor drawing in the command area 2016-08-01 21:55:41 +02:00
Tae Won Ha
7aa2875ef6
GH-221 Take zero puts into account when computing the word boundaries 2016-08-01 21:55:36 +02:00
Tae Won Ha
9b30934f77
GH-221 Improve drawing when cursor is on the cell 2016-08-01 21:34:26 +02:00
Tae Won Ha
6bdfb5ed8c
GH-221 Use bounds and take offsets into account when computing Region from a CGRect 2016-08-01 21:34:22 +02:00
Tae Won Ha
3863fca9a4
GH-221 Refactor slightly 2016-07-31 21:16:08 +02:00
Tae Won Ha
2530472729
GH-221 Rename a method 2016-07-31 20:53:51 +02:00
Tae Won Ha
75f922d4e7
GH-221 Draw word-wise to take ligatures into account 2016-07-31 20:51:28 +02:00
Tae Won Ha
c77ce13737
Merge branch 'master' into issue/221-ligatures 2016-07-30 22:19:10 +02:00
Tae Won Ha
083d8618fa
GH-221 Add useLigatures flag and use it in the TextDrawer 2016-07-30 18:31:33 +02:00
Tae Won Ha
798bde03de Set snapshot version: 0.9.0-SNAPSHOT-20160730.1822-41 2016-07-30 18:22:29 +02:00
Tae Won Ha
0f27f36997
GH-221 Remove unnec' class 2016-07-30 18:11:59 +02:00
Tae Won Ha
e5ecaa2879 Set snapshot version: 0.9.0-SNAPSHOT-20160730.0954-40 2016-07-30 09:54:27 +02:00
Tae Won Ha
db4b7c6bee
Reformat and refactor slightly 2016-07-30 09:49:39 +02:00
Tae Won Ha
12fe0daa4b
GH-223 When pinching use a proxy image 2016-07-29 22:23:43 +02:00
Tae Won Ha
da0720f169
GH-223 Add rudimentary pinch support 2016-07-29 18:25:32 +02:00
Tae Won Ha
f9a021d97d Set snapshot version: 0.9.0-SNAPSHOT-20160728.2220-39 2016-07-28 22:21:08 +02:00
Tae Won Ha
c967a912da
GH-224 Check null for set title and set icon 2016-07-28 22:14:27 +02:00
Tae Won Ha
9f40b738f0
GH-222 Add some font related menu items 2016-07-28 19:37:39 +02:00
Tae Won Ha
34632095bd Set snapshot version: 0.9.0-SNAPSHOT-20160727.1832-38 2016-07-27 18:33:25 +02:00
Tae Won Ha
3ae8a1d4c2
GH-213 Handle initial font setting 2016-07-27 00:04:31 +02:00
Tae Won Ha
d9af7fb0c5 Set snapshot version: 0.9.0-SNAPSHOT-20160718.2250-37 2016-07-18 22:50:33 +02:00
Tae Won Ha
89fdab1566
GH-218 Check validity of ports before invalidating 2016-07-18 20:16:56 +02:00
Tae Won Ha
4b4ccd13b3
GH-218 Add hasDirtyDocs()
- Use it to determine whether to close the window or not.
2016-07-18 20:16:56 +02:00
Tae Won Ha
2068a57bb8 Set snapshot version: 0.9.0-SNAPSHOT-20160717.1629-36 2016-07-17 16:29:39 +02:00
Tae Won Ha
e51c823b17
GH-216 Get rid of almost all cleanUp() methods
- We cannot get rid of -cleanUp of NeoVimAgent since -dealloc does not
  get called unless the run loop has been stopped.
2016-07-17 15:56:36 +02:00
Tae Won Ha
6a66cb877c
GH-216: Implement the stop UI callback
- There was a leak of NeoVimAgent because the thread where the we ran a
  CFRunLoop never stopped. We now stop the run loop explicitly.
2016-07-17 15:49:34 +02:00
Tae Won Ha
32ee8ab1d1 Set snapshot version: 0.9.0-SNAPSHOT-20160716.2332-35 2016-07-16 23:33:05 +02:00
Tae Won Ha
b02c0b4c87
GH-215 Refactor slightly
- play with some constants
2016-07-16 18:49:19 +02:00
Tae Won Ha
a06c1ca4f6
GH-215 Use one file for NeoVimView
- This way we can use more `private` properties.
2016-07-16 18:49:14 +02:00
Tae Won Ha
b6a1d21912
GH-215 Support trackpad scrolling
- We use some heuristics to make the scrolling on trackpad kind of ok...
- Scrolling using the scrollwheel of a mouse is probably broken.
2016-07-15 19:50:35 +02:00
Tae Won Ha
3b07365fc6
Update bundle version to 34 2016-07-14 20:35:02 +02:00
Tae Won Ha
13d7ccbb4c
Change version to new snapshot
- closes GH-211
2016-07-14 20:21:30 +02:00
Tae Won Ha
4780976f1a
GH-211 Refactor slightly 2016-07-14 20:20:39 +02:00
Tae Won Ha
845354a833
GH-211 Rename NeoVimViewEvents to NeoVimViewKeyEvents 2016-07-14 20:20:36 +02:00
Tae Won Ha
1bfc1380c3
GH-211 Implement left mouse events 2016-07-14 20:18:30 +02:00
Tae Won Ha
6aa609ab79
Refactor slightly 2016-07-13 22:09:49 +02:00
Tae Won Ha
484209b514
Underline in the foreground color
- not in the special color
2016-07-13 20:26:39 +02:00
Tae Won Ha
5e12c218b1
Fix the background rect when drawing 2016-07-13 20:16:04 +02:00
Tae Won Ha
b43bb29094
Change version to include SNAPSHOT and the date 2016-07-12 18:48:04 +02:00
Tae Won Ha
56a9fc0678
Delete unnec' import 2016-07-12 18:41:28 +02:00
Tae Won Ha
4f46e619cf
Rename nvox to VimR
- hopefully we renamed everything
2016-07-12 17:59:01 +02:00
Tae Won Ha
4699e3db35
Forward almost every keystroke to neovim
- we probably still have to fine-tune this.
2016-07-12 17:58:35 +02:00
Tae Won Ha
97cc6e4ad5
Make cursor drawing a bit better
- we still have to overhaul the cursor drawing, this is just a temporary
  fix...
2016-07-11 19:39:28 +02:00
Tae Won Ha
c54e673e9c
Use agvtool to set versions 2016-07-10 23:09:52 +02:00
Tae Won Ha
9a2b3b0a86
Add rudimentary support for multi window 2016-07-10 18:47:24 +02:00
Tae Won Ha
07f0210841
Add some logging 2016-07-10 14:43:26 +02:00
Tae Won Ha
52f528b33b
Use ARC in NeoVimServer 2016-07-10 14:27:28 +02:00
Tae Won Ha
1da03e56d4
Make uuid of NeoVimView public 2016-07-10 14:14:19 +02:00
Tae Won Ha
b1af87bc5c
Refactor slightly 2016-07-10 14:10:09 +02:00
Tae Won Ha
f6038619db
Set current working directory for neovim 2016-07-10 14:05:10 +02:00
Tae Won Ha
6eca26bbc7
Refactor slightly 2016-07-10 14:00:31 +02:00
Tae Won Ha
f7a2fe770b
Ensure no NeoVimServer processes are left over 2016-07-10 11:38:53 +02:00
Tae Won Ha
4f0a20d2ba
Make NeoVimServer work 2016-07-10 11:38:52 +02:00
Tae Won Ha
2623b351c6
Restructure the project
- add the NeoVimServer binary
- we're on our way to remove the XPC service since only 1-to-1 correspondence
  possible between an XPC and the main app
- NeoVimServer communicates with the main app via two CFMessagePorts
- Use enums to distinguish between messages
2016-07-10 11:38:34 +02:00
Tae Won Ha
9d491d5245
Establish bidirectional communication channel
- use CFMessagePort
2016-07-09 14:05:04 +02:00
Tae Won Ha
9242dd8c47
Add change font method 2016-07-06 19:51:31 +02:00
Tae Won Ha
4075b49fa7
Resize neovim when resized not by live resizing 2016-07-06 19:11:53 +02:00
Tae Won Ha
670c19043c
Refactor slightly 2016-07-06 19:02:30 +02:00
Tae Won Ha
903ef3e97b
Make Ctrl-F/B work
- maybe we should directly forward the key combination to neovim
2016-07-06 18:28:40 +02:00
Tae Won Ha
edfd5ccf4a
Rename some methods 2016-07-05 20:13:46 +02:00
Tae Won Ha
5b55c9522d
Remove unnec' code 2016-07-05 20:03:14 +02:00
Tae Won Ha
01cbb584be
Guard against invalid positions 2016-07-05 19:00:27 +02:00
Tae Won Ha
292e2be410
Remove unnec' code 2016-07-05 18:54:44 +02:00
Tae Won Ha
07ac09e95f
Make resizing NeoVimView work
- live resizing is not yet activated, but can be easily done
- @autoreleasepool-block for each UI callback and for each key input is
  ugly...
2016-07-05 18:49:19 +02:00
Tae Won Ha
a5d6ca0ffd
Handle x,y-offset in the view drawing
- we won't resize the view in integer steps, but just draw some margins
2016-07-04 19:04:49 +02:00
Tae Won Ha
1948c2ea9f
Reformat 2016-07-03 22:08:14 +02:00
Tae Won Ha
e5f82261ca
Refactor slightly 2016-07-03 22:07:02 +02:00
Tae Won Ha
b2b959fd4f
Add Quick/Nimble and a stub test 2016-07-03 21:37:12 +02:00
Tae Won Ha
23d36d83be
Revert ugly cursor color 2016-07-03 16:42:25 +02:00
Tae Won Ha
4b4668ae21
Add a note on text input 2016-07-03 15:55:11 +02:00
Tae Won Ha
734b31c7e6
Make Hanja handling better(?) 2016-07-03 15:54:44 +02:00
Tae Won Ha
3d48c17fc1
Guard against too early call of selected range 2016-07-03 07:49:49 +02:00
Tae Won Ha
e685ef3581
Try to correctly render marked text 2016-07-02 18:59:23 +02:00
Tae Won Ha
1d1c46c3fc
Make hanja menu pop up
- Very rudimentary: since we don't use the replacement range when
  setting marked text, the original hangul character won't be replaced.
- We probably should use a different mechanism for returning attributed
  string: e.g. ask neovim to return the correct string...
2016-07-02 18:57:38 +02:00
Tae Won Ha
5a8fdbe9bc
Add some comments regarding two-cell-characters 2016-06-29 21:55:44 +02:00
Tae Won Ha
47a41156f4
Turn off some logging 2016-06-29 20:11:20 +02:00
Tae Won Ha
015b12332d
Improve cursor drawing 2016-06-29 20:10:00 +02:00
Tae Won Ha
8f38a53698
Add very rudimentary cursor drawing 2016-06-29 19:54:06 +02:00
Tae Won Ha
a27a16c47b
Update neovim 2016-06-29 18:36:55 +02:00
Tae Won Ha
903f72b542
Add a comment 2016-06-29 18:32:33 +02:00
Tae Won Ha
7358243b07
Add some support for marked text
- implement some of usual text-editing related selectors of NSResponder
- do not send <S-a> for A
- introduce a dispatch queue in XPC which is needed to sync all marked
  stuff
2016-06-29 18:18:11 +02:00
Tae Won Ha
9f39654e4b
Fix redraw rect when scrolling 2016-06-27 18:42:37 +02:00
Tae Won Ha
ec4dbeb9aa
Play around with Cocoa's text input system 2016-06-27 18:42:35 +02:00
Tae Won Ha
02b338ed9a
Test NSTextInputClient using a stub view 2016-06-27 18:42:34 +02:00
Tae Won Ha
a4112d4927
Remove unnec' constant 2016-06-19 21:11:03 +02:00
Tae Won Ha
d5420f4b78
Use CoreText's font metric 2016-06-19 20:54:55 +02:00
Tae Won Ha
bbc0096019
Implement update fg/bg/sp 2016-06-19 20:54:47 +02:00
Tae Won Ha
edffb8956b
Use @import where appropriate 2016-06-18 23:14:49 +02:00
Tae Won Ha
c95d2c3201
Draw bold/italic/underline and correct color 2016-06-18 23:09:34 +02:00
Tae Won Ha
8e9c532b40
Minor refactoring 2016-06-16 18:36:26 +02:00
Tae Won Ha
a394f9ce4a
Remove unused stuff 2016-06-15 22:59:07 +02:00
Tae Won Ha
c124f1adbb
Find out which Cells to draw in drawRect
- NeoVim's UI callbacks stores the screen data in the Grid and sets
  appropriate rects invalid.
- drawRect() then computes which cells are invalidated and draw them.
2016-06-15 22:39:46 +02:00
Tae Won Ha
c7fe3f1dac
Add scroll for Grid 2016-06-15 20:37:02 +02:00
Tae Won Ha
79e39b8350
Remove some crashing 2016-06-14 23:50:25 +02:00
Tae Won Ha
355844ad01
Add very very rudimentary rendering of some characters 2016-06-13 18:09:34 +02:00
Tae Won Ha
1ca45e84c5
Manually memory-manage in the XPC implementation
- Input events are fed and processed in two different threads. We want
  to be sure that our NSStrings are released only after the processing
  of the event has been done.
2016-06-07 19:47:27 +02:00
Tae Won Ha
5acc58d376
Add a probe method to the XPC service 2016-06-07 18:48:59 +02:00
Tae Won Ha
f8e759162a
Delete unused file 2016-06-06 23:11:02 +02:00
Tae Won Ha
681ee137f4
Call vim_input on the main_loop 2016-06-06 21:50:35 +02:00
Tae Won Ha
ab33181cc4
Use RxSwift to react to some of the UI events 2016-06-05 17:49:16 +02:00
Tae Won Ha
fa0ef63611
Add SwiftNeoVim framework target
- This target includes the XPC-service and will be included in the main
  app
2016-06-05 17:46:05 +02:00