Code Monkey home page Code Monkey logo

vintage's People

Contributors

behrends avatar bengolds avatar bradleypriest avatar djjcast avatar fjl avatar gordin avatar guillermooo avatar jskinner avatar misfo avatar mrannanj avatar netpro2k avatar orutherfurd avatar quarnster avatar rctay avatar redjohn avatar zbuc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

vintage's Issues

Some text objects don't work inside of strings

When the current file's syntax is set to a language that contains strings, the [, (, and { text objects don't work inside of them.

Specifically, when inside of a string (or a regex pattern), those text objects only act on a single character. When using visual text objects like vi(, the character under the cursor will be selected; when using normal text objects like di( or ca(, the character before the cursor will be deleted.

Interestingly, the " and ' text objects still work when nested inside of strings.

This isn't directly related to the issue, but where is the method has_non_empty_selection_region documented? I've checked the API, and I don't see anything there. A Google search for "def has_non_empty_selection_region" returns only this. It is used extensively by this plugin, and the code path for the above-mentioned text objects calls it.

Allow "." to repeat last insert mode actions.

In vim if you go into insert mode, type something, and then hit esc that action is repeated when you press "."
Right now . will repeat actions like dd but it does nothing if your last action was input.

va is partially broken in visual mode

a won't take you out of visual mode as it should:

va should exist visual mode and leave the caret after the selection, but instead it does nothing (visible). Pressing a again inserts aa.

Movement by paragraph does not skip over empty lines

In vim, using the paragraph motion (i.e. "{") will skip over any block of empty lines as if it were a single paragraph. Vintage mode currently doesn't do this.

This makes the paragraph operator much less useful in Sublime, unfortunately. Should be an easy fix though, I hope.

Always in command mode, most of the time

Is it possible to always have Vintage in command mode most of the time?

For example, consider these 2 scenarios:

  1. If I am in INSERT mode, and I click anywhere in the file, Vintage should change the mode back to COMMAND mode.
  2. When I switch files / tabs, Vintage should always start with COMMAND mode

These two behaviors are quite Vim-like. Would be great to have them.

[Bug] Delete/Change/Select to a mark doesn't work

Somebody has already posted this issue on Sublime forum http://www.sublimetext.com/forum/viewtopic.php?f=2&t=2921 since nobody has replied to that post, I'm reposting this again here as I'm being limited by the lack of this feature.

"
In Vintage mode, if you set a mark (ex. by pressing "ma"), and then move the cursor somewhere else and try to delete to the mark (ex. by pressing "d`a"), the cursor just moves to the mark instead of deleting to the mark. This also happens when trying to select to the mark, copy to the mark, or change to the mark.
"

>> and << no longer work on multiple lines

Commit 7e2fa61 changed the behavior of these commands to keep the cursor from moving after the indent, but this change also keeps a command like 3>> from working. In vim, << and >> indent the line(s) and then move the cursor to the first non-whitespace character, rather than keeping it where it is. Can we get this changed back?

"j" and "k" not working

After enabling Vintage, j and k do not go up or down, respectively, but h and l work perfectly fine. any reason why some key mappings are working but others aren't?

Highlight words when search using '*', '#' or '/'

Greetings!!

When search using '*', '#' or '/', the searched pattern isn't highlighted like a regular search using sublime, in fact i can't tell the whats the searched pattern is.

Its this a bug? Or is this not implemented yet?

Regards!

Holding down hjk or l doesnt move the cursor

Holding down hjk or l doesnt move the cursor. So in command mode, if I wanted to move down 10 lines. I would have to manually tap j 10 times.

If I hold the j key down, it only moves the cursor down once...

:#,#d doesn't correctly paste

When you use the :#,#d syntax, the contents put into the paste buffer is truncated. For example, lets say you have a file that looks like this:

1:  
2:  hey
3:  there
4: 
5:  guys
6:

If you input <escape>, :2,3d, <enter>, go to line 5, <escape>, p, you should see this output:

1:  
2:  
3:  
4: 
5:  guys
6:  hey
7:  there

Add documentation

Document at least available options. Maybe include Vintage's own Preferences.sublime-settings file and add comments as in Default/Preferences.sublime-settings.

[BUG] Repeat digits do not work with insertion, etc

I found that repeat digits work with delete, but not with insertion.

E.g.

orginal text: 123 123

command 2dw will delete those two words

but 2i123 will only produce 123 instead of 123 123 as expected in VIM.

Many Thanks,

Treat searches as text objects

I'm not sure whether "text object" is the proper term here, but please read on!

Basically, in Vim, you can type d/hamster, hit enter, and Vim will delete all text until the first occurrence of the word "hamster". This is consistent with the fand t movement commands—you can use them to move to the first occurrence of a letter, or you can delete/change/select all text until that first occurrence.

It would be extraordinarily useful if Vintage could provide similar functionality.

Autocomplete is not a repeatable command.

If I enter insert mode, type "f", it autocompletes to "foobar" and I hit enter and escape out of insert mode, then "." should intuitively repeat the insertion of foobar. However, "." only repeats the insertion of "f".

Feature: GoTo line, etc not implmented

I know GoTo "line number" etc is implemented in sublime text but being a vim user I'm used to ":" (or command) and a sending me directly there and would be a great feature for vintage.

Is there a possibility to enable always in command mode?

Is it possible to enable "always in command mode"? For example. When I am switching through tabs. If Tab 1 and 2 are in INSERT mode. If I am in Tab 1 and click on tab 2. Tab 2 automatically switches mode to COMMAND mode.

Similarly, if I click back on Tab 1, it switches automatically to COMMAND mode as well.

% motion works incorrectly

The vim behavior is search forward for a matchpair opener, if one is found on the same line, jump to the matchpair closer. If no matchpair is found forward on the same line, do nothing.

Implement back and forward jumps

Vim keeps track of files and locations within files that the user has visited, and allows the user to jump back and forward between these locations. Vintage should have this feature. If it did, it would own.

Allow hjkl keys on the file tree

When the file tree has focus, you should allow the H J K L keys for basic movements in the directory structures.
You can already navigate using the arrow keys, so that should be allowed, too.

Right now I have to reach over and use the arrow keys. That kind of destroys the flow.

Moving cursor via j/k does not retain column

In any decent editor, moving up and down, in any mode will preserve the column. Even in sublime (non-vintage mode) the column is preserved. Do you know a way to fix the keymapping so that this is the case? The problem may be in the implementation of the command itself.

_ is different to ^

See commit #25110f2.

_ takes a count according to vim's help file, while ^ does not.

gv and '. not implemented

Hi, loving the new update. But would like to see the gv functionality, which selects the previously selected selection.

Also the '. functionality which brings you to the last edited line.

Vintage "0" Fix

From: http://www.sublimetext.com/forum/viewtopic.php?f=3&t=6517

I'm not sure where the right place to put fixes is, so I'll try here. I had noticed that when doing commands like yank or delete, something like "y20y" would misbehave, and have the cursor simply jump to the beginning of the line. It looks like the issue was in vintage.py:172,

CODE: SELECT ALL
elif key == "vi_has_repeat_digit":
if g_input_state.motion_command: #this line
v = len(g_input_state.motion_repeat_digits) > 0
else:
v = len(g_input_state.prefix_repeat_digits) > 0

Needed to be

CODE: SELECT ALL
elif key == "vi_has_repeat_digit":
if g_input_state.action_command:
v = len(g_input_state.motion_repeat_digits) > 0
else:
v = len(g_input_state.prefix_repeat_digits) > 0

Simple motions give incorrect result

I would expect 40i-<Esc> to insert 40 - characters.

If I have a file, with one line with the text "Hello World" and do: YpVr-, I would expect that to result in:

Hello World
-----------

Instead it turns it into:

----------------------

If you have a buffer with two lines, the same command turns the text into:

Hello World
------------

(One too many -)

dw broken when used on last word of a line

Hi,
When I position my cursor on the last word of a line and execute dw it deletes the EOL and the next line. For example

lorem ipsum hello
foo sit amet
sed pulvinar bar

If you position your customer under the h in hello and execute dw it deletes all the way to sed. I am using the Sublime Text 2 Beta Build 2139 and the master git version of Vintage. Thanks for your time.
/Eoin/

change/delete commands always delete a char

Changes and deletes shouldn't any characters in certain cases:

  • dtz when there are no zs on the line
  • cc on the last line of the file if that line is empty
  • etc

In these cases, Vintage backspaces from where the selection was instead of just leaving the text alone

putting linewise text into a register is broken at EOF

For example, in a file with just the text abc (no newline), yyp should result in the file:

abc
abc

Since there's no newline in the original file, there has to be a special case to add the newline into the register with the yanked text.

de, cw, cW, ce etc no longer working

These commands were broken by the latest commit (commit 3e76932). I've checked out the previous commit and everything seems to work fine.

It looks like it has something to do with the movement portion of the command, as other, similar commands still work: cb, cc, c$, dw.

Implement '. command to jump to last change

Vim's many ' commands such as '. and '[ jump to changes in a file, which is super useful. I wrote a quick plugin to do something like this but a more robust solution, built into Vintage, that uses ' as a prefix would be ideal.

Is there a way to configure the cursor?

Is there a way to configure the cursor that shows in command mode to non-blinking, and into a solid i-type cursor (instead of an underscore type-cursor)?

Adding settings file for Vim options

Someone asked in the forums how to set copy ops to always use the system's clipboard. This seems easy enough to fix with a Vintage.sublime-settings file.

Would this be desirable?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.