64 Commits

Author SHA1 Message Date
Le Tan
70eb04ebd2 vim-mode: fix w/W/e/E/b/B/ge/gE movement with block cursor 2017-12-14 18:22:40 +08:00
Le Tan
49811cabc0 VTextDocumentLayout: support cursor line block background 2017-12-08 19:31:19 +08:00
Le Tan
d14f4697b4 replace palette in clss VNote with VPalette 2017-12-05 19:45:04 +08:00
Le Tan
19323496d1 vim-mode: bug fix 2017-12-04 20:48:16 +08:00
Le Tan
7f230312df vim-mode: bug fix in block cursor mode 2017-12-03 16:21:00 +08:00
Le Tan
6fea8bf7dc vim-mode: fix cursor position after changing from Insert to Normal mode 2017-12-02 21:31:54 +08:00
Le Tan
cfbda92f67 vim-mode: amend the cursor position after executing a command 2017-12-02 21:27:20 +08:00
Le Tan
f429ffe3e5 vim-mode: support Visual mode with block cursor 2017-12-02 14:35:51 +08:00
Le Tan
0d6ed84228 bug-fix: vim mode cursor width 2017-12-01 23:24:21 +08:00
Le Tan
87af770612 vim-mode: support cursor block
Support cursor block in Normal and Insert mode.

TODO: need more fine-grain tuning of the behaviors.
2017-11-30 22:09:16 +08:00
Le Tan
d3ff787153 vim-mode: support = to auto indent selected blocks as previous block 2017-11-24 20:18:59 +08:00
Le Tan
c2973d9e23 vim-mode: add vim_exemption_keys config for Ctrl+C/V
Add vim_exemption_keys config to control the behaviors of Ctrl+C and
Ctrl+V in Vim mode.
2017-11-20 19:29:46 +08:00
Le Tan
6ac33d2bd0 support snippets
Shortcuts are not supported yet.
2017-11-11 08:09:22 +08:00
Le Tan
1e15b37a83 vim-mode: support Ctrl+O in Insert mode
- Support Ctrl+O in Insert mode to enter Normal mode temporarily;
- Use Ctrl+K instead of Ctrl+O to insert inline code;
2017-11-07 19:52:36 +08:00
Le Tan
945d29f576 vim-mode: fix left/right/up/down key in macOS 2017-11-03 22:28:52 +08:00
Le Tan
cb4d32e95f bug-fix: shortcuts for ActivateNextTab and ActivatePreviousTab 2017-10-26 21:08:24 +08:00
Le Tan
404b5329a1 replace VEdit and VMdEdit with VEditor and VMdEditor 2017-10-26 19:36:12 +08:00
Le Tan
30dfc24a28 support Insert Code Block tool bar button
Ctrl+M to insert a code block.
2017-10-19 22:21:25 +08:00
Le Tan
92bc044cac metaword: support Ctrl+E M in editor to evaluate metawords
Add shortcut configuration MagicWord.
2017-10-19 19:41:57 +08:00
Le Tan
dcb6227d3b vim-mode: share registers among all tabs 2017-10-18 19:55:25 +08:00
Le Tan
11537972f3 add V_FALLTHROUGH for explicit fallthrough 2017-10-09 21:25:30 +08:00
Le Tan
04fa3654a4 bug-fix: do not cancel auto-indentation if cursor is not at block end 2017-09-24 12:04:35 +08:00
Le Tan
b04a44f82d vim-mode: bug-fix for s, d, c in visual mode 2017-09-23 10:38:50 +08:00
Le Tan
eb24360aa9 vim-mode: fix Y and D action in Visual mode 2017-09-17 16:39:50 +08:00
Xianzhong Wang
1ae30b645e Fix the serious bug of pressing Y in vim normal mode (#42) 2017-09-16 14:34:27 +08:00
Le Tan
4ad79e4d92 vim-mode: <leader>w to save note 2017-09-07 20:35:41 +08:00
Le Tan
f33c7f86d3 minor-fix: Vim mode and VImagePreviewer
1. In Vim mode use the `undo()` and `redo()` slots of VMdEdit instead of
QTextDocument;
2. VImagePreviewer will clear the undo/redo stacks if it is empty
before;
3. Remove setLineDistanceHeight();
2017-09-06 19:23:14 +08:00
Le Tan
9523168fc3 vim-mode: support S, { and }
Thanks to xianzhon@github
2017-09-05 20:54:15 +08:00
Le Tan
8b1d7e9841 bug-fix: Vim mode Paste action
Move cursor to the right position after paste.
2017-08-30 09:11:03 +08:00
Xianzhong Wang
78bb2d5c41 [bugfix] When paste from register, discard selected texts first (#37)
* [bugfix] When paste from register, discard selected texts first

* Additional fix for the paste command to follow vim spec

* Refactor the code for paste command to make it clear
2017-08-29 21:42:32 +08:00
Le Tan
73630448a6 move vconfig to a local variable 2017-08-29 09:40:28 +08:00
Le Tan
94b671f505 vim-mode: support J and gJ to join lines 2017-08-18 19:24:15 +08:00
Le Tan
7c2f1a8927 vim-mode: scroll to center after Ctrl+O/I 2017-08-08 20:12:15 +08:00
Le Tan
226263f77c bug-fix: save wrong geometry state in single panel view 2017-07-21 22:09:40 +08:00
Le Tan
d0bcd7a2c6 vim-mode: make cursor block visible after actions 2017-07-19 20:25:28 +08:00
Le Tan
eb71c8eff1 vim-mode: support Ctrl+R to read a register
Support `Ctrl+R` to read a register both in Insert mode and command line.
2017-07-14 10:13:55 +08:00
Le Tan
cd2ac10509 vim-mode: refine command line mode
1. Support `/` and `?` to search. `N` and `Shift+N` to find next/previous
occurence.
2. `Ctrl+N` and `Ctrl+Shift+N` to navigate through the command history.
3. `:nohlsearch` or `<leader><space>` to clear search highlight.
4. `#` and `*` to search current word under cursor.
2017-07-13 18:26:38 +08:00
Le Tan
c53950fe77 refine find/replace logics
Do not select the found target. Use highlight instead.
2017-07-12 13:16:14 +08:00
Le Tan
71bcfe3019 vim-mode
- `Ctrl+Tab` and `Ctrl+Shift+Tab` in Normal mode to alternate tabs;
- Support `:<num>` command for line jump;
- Support `%`;
2017-07-05 19:42:40 +08:00
Le Tan
f9f7a365f8 add toolbar for text editing
Bold, italic, underline, strikethrough, inline code.

Underline and strikethrough are not implemented yet.
2017-07-04 14:07:48 +08:00
Le Tan
c4683dd232 vim-mode: support ~ to reverse case 2017-07-03 21:22:06 +08:00
Le Tan
c48d646a55 vim-mode: auto disable input method in non-Insert mode
Add config "enable_smart_im_in_vim_mode".
2017-07-02 13:59:07 +08:00
Le Tan
9278149941 vim-mode: support shorcuts to jump between titles
- `[[`: jump to previous title;
- `]]`: jump to next title;
- `[]`: jump to previous title at the same level;
- `][`: jump to next title at the same level;
- `[{`: jump to previous title at a higher level;
- `]}`: jump to next title at a higher level;
2017-06-30 20:31:46 +08:00
Le Tan
e1acd6e9a2 vim-mode: support r for replacement 2017-06-30 19:17:42 +08:00
Le Tan
6df4dbe12a vim-mode: support more text objects for i and a
Now Vim supports word, WORD, '', "", ``, (), [], <>, {} as text object.
2017-06-29 19:36:50 +08:00
Le Tan
4b1e256308 vim-mode: going back to Normal mode from insert mode will clear auto indent and auto list 2017-06-28 22:04:54 +08:00
Le Tan
11f06bf617 vim-mode: bug fixes
1. Enable repeat in f/t/F/T movement;
2. Make cw/W behave like ce/E;
2017-06-27 22:03:41 +08:00
Le Tan
9f4ac1f260 bug-fix: add Q_OS_MAC for check
Qt 5.7 seems to use Q_OS_MAC instead of Q_OS_MACOS.
2017-06-25 18:36:05 +08:00
Le Tan
a9ad26b035 vim-mode: use MetaModifier rather than ControlModifier in Vim mode on macOS 2017-06-25 14:58:52 +08:00
Le Tan
2734b8407c vim-mode: support canceling autoindent after o/O 2017-06-21 22:00:11 +08:00