All Projects → unchartedworks → SmalltalkVimMode

unchartedworks / SmalltalkVimMode

Licence: MIT license
Vim Mode for Playground, System Browser, Debugger in Pharo.

Programming Languages

smalltalk
420 projects

Projects that are alternatives of or similar to SmalltalkVimMode

Grease
The Grease Portability Library
Stars: ✭ 12 (-69.23%)
Mutual labels:  pharo, pharo-smalltalk
Cruiser
A Pharo Tool to package applications
Stars: ✭ 41 (+5.13%)
Mutual labels:  pharo, pharo-smalltalk
protobuf-smalltalk
Protocol buffers support for Smalltalk
Stars: ✭ 14 (-64.1%)
Mutual labels:  pharo, pharo-smalltalk
kendrick
Domain-Specific Modeling for Epidemiology
Stars: ✭ 43 (+10.26%)
Mutual labels:  pharo, pharo-smalltalk
heysql
Sql-based orm based on smalltalk reflection ideas
Stars: ✭ 19 (-51.28%)
Mutual labels:  pharo, pharo-smalltalk
PharoJS
PharoJS: Develop in Pharo, Run on JavaScript
Stars: ✭ 90 (+130.77%)
Mutual labels:  pharo, pharo-smalltalk
Winter
Winter is a 2D game engine for Pharo Smalltalk
Stars: ✭ 43 (+10.26%)
Mutual labels:  pharo, pharo-smalltalk
NEAT
NEAT implementation in Pharo
Stars: ✭ 16 (-58.97%)
Mutual labels:  pharo, pharo-smalltalk
Teapot
Teapot micro web framework for Pharo Smalltalk
Stars: ✭ 86 (+120.51%)
Mutual labels:  pharo, pharo-smalltalk
iPharo
Pharo Smaltalk kernel for Jupyter
Stars: ✭ 32 (-17.95%)
Mutual labels:  pharo, pharo-smalltalk
Moose2Model
A software exploration tool to support developers during their work
Stars: ✭ 12 (-69.23%)
Mutual labels:  pharo, pharo-smalltalk
libtensorflow-pharo-bindings
TensorFlow library bindings for Pharo
Stars: ✭ 30 (-23.08%)
Mutual labels:  pharo, pharo-smalltalk
fari.sh
fari.sh — fresh, ready-to-hack Pharo images
Stars: ✭ 12 (-69.23%)
Mutual labels:  pharo
pharo-talents
No description or website provided.
Stars: ✭ 20 (-48.72%)
Mutual labels:  pharo
Buoy
A complement to Pharo
Stars: ✭ 18 (-53.85%)
Mutual labels:  pharo
PetitParser
Petit Parser is a framework for building parsers.
Stars: ✭ 39 (+0%)
Mutual labels:  pharo
opensmalltalk-vm
This is the VM used by Pharo
Stars: ✭ 59 (+51.28%)
Mutual labels:  pharo
NeoCSV
NeoCSV is an elegant and efficient standalone Smalltalk framework to read and write CSV converting to or from Smalltalk objects.
Stars: ✭ 20 (-48.72%)
Mutual labels:  pharo
mars-gtk
The Gtk3 bindings for Pharo and Spec
Stars: ✭ 14 (-64.1%)
Mutual labels:  pharo
Microdown
Microdown is a cleaned and simpler markdown but with more powerful features such as extensions.
Stars: ✭ 26 (-33.33%)
Mutual labels:  pharo

Smalltalk Vim Mode

Vim Mode for Playground, System Browser, Debugger in Pharo.

Install SmalltalkVimMode

Prerequisites

  • Latest Pharo 6.1 image.
  • Pharo VM for Pharo 6.1. (It doesn't work in the latest Pharo. I have tried to fix it, but my Smalltalk skill is rusty, I have no idea what went wrong.)

Execute the code in a Playground in Pharo

baseline   := 'SmalltalkVimMode'.
repository := 'github://unchartedworks/SmalltalkVimMode:master'. 
metacello  := [ Metacello new baseline: baseline; repository: repository ].
get        := [ metacello value get ].
load       := [ metacello value onConflict: [:ex | ex allow]; load ].
actions    := {get . load}.
apply      := [ :action | action value ].
actions do: apply.

Shortcuts

Main

Esc enter normal mode

i enter insert mode

V enter visual mode per line

Normal mode

Comment/Uncomment

Command + / comment/uncomment selected code, if there is no selection, the current line will be commented/uncommented.

Navigation keys

h left

N h left N times

j down

N j down N times

k up

N k up N times

l right

N l right N times

0 move the cursor to the first character in the line

$ move the cursor to the last character in the line

^ move the cursor to the first non-blank character in the line

g_ move the cursor to the last non-blank character in the line

w move forward to the start of the next word (next alphanumeric word)

N w move forward to the start of the next N words (next N alphanumeric words)

W move forward to the start of the next word (delimited by a white space)

N W move forward to the start of the next N words (delimited by a white space)

e move forward to the end of the next word (next alphanumeric word)

N e move forward to the end of the next N words (next N alphanumeric words)

E move forward to the end of the next word (delimited by a white space)

N E move forward to the end of the next N words (delimited by a white space)

b move backward to the start of previous word (previous alphanumeric word)

N b move backward to the start of previous N words (previous N alphanumeric words)

B move backward to teh start of previous word (delimited by a white space)

N B move backward to teh start of previous N words (delimited by a white space)

gg move to the beginning of the buffer

G move to the end of the buffer

fx move forward to the next occurrence of character x to the right

N fx move forward to the Nth occurrence of character x to the right

tx move forward to before the next occurrence of character x to the rigtht

N tx move forward to before the Nth occurrence of character x to the right

Fx move forward to the Nth occurrence of character x to the left

N Fx move forward to the Nth occurrence of character x to the left

Tx move forward to after the previous occurrence of character x to the left

N Tx move forward to after the Nth occurrence of character x to the left

Insert text

a insert text after the cursor

A insert text at the end of the line

i insert text before the cursor

o begin a new line below the cursor

O begin a new line above the cursor

Delete text

x delete character at the cursor

N x delete N characters from the cursor

dw delete a word.

N dw delete N words.

d0 delete to the beginning of a line.

d$ delete to the end of a line.

dgg delete to the beginning of the file.

dG delete to the end of the file.

dd delete line

N dd delete N lines

Simple replace text

r peplace the character under the cursor

R replace characters instead of inserting them

Copy/Paste text

yy copy current line into storage buffer

p paste storage buffer after current line

N p paste N times storage buffer after current line

Undo/Redo operation

u undo the last operation

N u undo the last N operations

Ctrl + rredo the last undo operation

N Ctrl + rredo the last N undo operations

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].