lloeki / ex-mode Goto Github PK
View Code? Open in Web Editor NEWEx mode for Atom
License: MIT License
Ex mode for Atom
License: MIT License
commands such as:
:10,50y a
:10,15c 42
:5,30m 80
do not work. and give
Command error: Not an editor command: 10,50y a
:q
Atom Version: 1.0.2
System: Ubuntu 14.04.2
Thrown From: ex-mode package, v0.5.1
Uncaught TypeError: Cannot read property 'getScreenPosition' of undefined
At /home/tgrosinger/.atom/packages/ex-mode/lib/ex-state.coffee:56
TypeError: Cannot read property 'getScreenPosition' of undefined
at TextEditor.module.exports.TextEditor.getCursorScreenPosition (/usr/share/atom/resources/app.asar/src/text-editor.js:1354:34)
at TextEditor.module.exports.TextEditor.isFoldedAtCursorRow (/usr/share/atom/resources/app.asar/src/text-editor.js:2496:44)
at BracketMatcherView.module.exports.BracketMatcherView.updateMatch (/usr/share/atom/resources/app.asar/node_modules/bracket-matcher/lib/bracket-matcher-view.js:111:23)
at /usr/share/atom/resources/app.asar/node_modules/bracket-matcher/lib/bracket-matcher-view.js:94:26
at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at /usr/share/atom/resources/app.asar/src/cursor.js:66:25
at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at Marker.module.exports.Marker.destroyed (/usr/share/atom/resources/app.asar/src/marker.js:232:20)
at /usr/share/atom/resources/app.asar/src/marker.js:37:24
at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at Marker.module.exports.Marker.destroy (/usr/share/atom/resources/app.asar/node_modules/text-buffer/lib/marker.js:256:20)
at Marker.module.exports.Marker.destroy (/usr/share/atom/resources/app.asar/src/marker.js:43:25)
at Selection.module.exports.Selection.destroy (/usr/share/atom/resources/app.asar/src/selection.js:62:26)
at TextEditor.module.exports.TextEditor.destroyed (/usr/share/atom/resources/app.asar/src/text-editor.js:267:19)
at TextEditor.module.exports.Model.destroy (/usr/share/atom/resources/app.asar/src/model.js:45:58)
at Pane.module.exports.Pane.destroyItem (/usr/share/atom/resources/app.asar/src/pane.js:456:18)
at Pane.module.exports.Pane.destroyActiveItem (/usr/share/atom/resources/app.asar/src/pane.js:431:12)
at Ex.quit (/home/tgrosinger/.atom/packages/ex-mode/lib/ex.coffee:62:36)
at Ex.q (/home/tgrosinger/.atom/packages/ex-mode/lib/ex.coffee:64:10)
at /home/tgrosinger/.atom/packages/ex-mode/lib/ex.coffee:1:1
at Command.execute (/home/tgrosinger/.atom/packages/ex-mode/lib/command.coffee:153:7)
at ExState.processOpStack (/home/tgrosinger/.atom/packages/ex-mode/lib/ex-state.coffee:50:17)
at ExState.pushOperations (/home/tgrosinger/.atom/packages/ex-mode/lib/ex-state.coffee:40:6)
at ExViewModel.ViewModel.confirm (/home/tgrosinger/.atom/packages/ex-mode/lib/view-model.coffee:13:14)
at ExViewModel.module.exports.ExViewModel.confirm (/home/tgrosinger/.atom/packages/ex-mode/lib/ex-view-model.coffee:35:5)
at ExViewModel.confirm (/home/tgrosinger/.atom/packages/ex-mode/lib/ex-view-model.coffee:1:1)
at ex-command-mode-input.ExCommandModeInputElement.confirm (/home/tgrosinger/.atom/packages/ex-mode/lib/ex-command-mode-input-element.coffee:46:16)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:241:29)
at /usr/share/atom/resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:520:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:355:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app.asar/src/window-event-handler.js:177:20)
3x -0:22.6.0 vim-mode:repeat-prefix (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
-0:21.9.0 vim-mode:move-to-line (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
-0:21.5.0 vim-mode:activate-linewise-visual-mode (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
3x -0:21.3.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.is-focused.visual-mode)
-0:20.7.0 vim-mode:delete (atom-text-editor.editor.vim-mode.is-focused.visual-mode)
71x -0:19.9.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.is-focused.normal-mode)
-0:12.2.0 vim-mode:move-to-start-of-file (atom-text-editor.editor.vim-mode.is-focused.normal-mode)
-0:07.8.0 ex-mode:open (atom-text-editor.editor.vim-mode.is-focused.normal-mode)
-0:07.8.0 blur (atom-text-editor.editor.vim-mode.is-focused.normal-mode)
-0:07.4.0 core:confirm (atom-text-editor.editor.mini.is-focused)
2x -0:07.3.0 blur (atom-text-editor.editor.mini.is-focused)
-0:04.9.0 pane:show-next-item (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
-0:04.8.0 blur (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
-0:01.8.0 ex-mode:open (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
-0:01.7.0 blur (atom-text-editor.editor.vim-mode.normal-mode.is-focused)
-0:00.9.0 core:confirm (atom-text-editor.editor.mini.is-focused)
{
"core": {}
}
# User
ex-mode, v0.5.1
file-icons, v1.5.8
go-plus, v3.4.3
go-rename, v0.3.0
last-cursor-position, v0.9.0
vim-mode, v0.57.0
vim-surround, v0.7.2
# Dev
No dev packages
unamed file
using vim-mode, type:
i (insert)
one
two
<esc>
:w
Atom Version: 0.199.0
System: Mac OS X 10.10.3
Thrown From: ex-mode package, v0.4.1
Uncaught TypeError: Arguments to path.join must be strings
At /Users/victorkane/.atom/packages/ex-mode/lib/ex-state.coffee:56
TypeError: Arguments to path.join must be strings
at Object.posix.join (path.js:449:13)
at getFullPath (/Users/victorkane/.atom/packages/ex-mode/lib/ex.coffee:35:15)
at Ex.write (/Users/victorkane/.atom/packages/ex-mode/lib/ex.coffee:131:20)
at Ex.w (/Users/victorkane/.atom/packages/ex-mode/lib/ex.coffee:143:5)
at /Users/victorkane/.atom/packages/ex-mode/lib/ex.coffee:1:1
at Command.execute (/Users/victorkane/.atom/packages/ex-mode/lib/command.coffee:148:7)
at ExState.processOpStack (/Users/victorkane/.atom/packages/ex-mode/lib/ex-state.coffee:49:17)
at ExState.pushOperations (/Users/victorkane/.atom/packages/ex-mode/lib/ex-state.coffee:40:6)
at ExViewModel.ViewModel.confirm (/Users/victorkane/.atom/packages/ex-mode/lib/view-model.coffee:12:14)
at ExViewModel.module.exports.ExViewModel.confirm (/Users/victorkane/.atom/packages/ex-mode/lib/ex-view-model.coffee:35:5)
at ExViewModel.confirm (/Users/victorkane/.atom/packages/ex-mode/lib/ex-view-model.coffee:1:1)
at ExCommandModeInputView.module.exports.ExCommandModeInputView.confirm (/Users/victorkane/.atom/packages/ex-mode/lib/ex-command-mode-input-view.coffee:46:16)
at atom-text-editor.<anonymous> (/Users/victorkane/.atom/packages/ex-mode/lib/ex-command-mode-input-view.coffee:1:1)
at atom-text-editor.jQuery.event.dispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4435:9)
at atom-text-editor.elemData.handle (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4121:28)
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:519:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:354:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/Applications/Atom.app/Contents/Resources/app.asar/src/window-event-handler.js:178:20)
-5:31.5.0 settings-view:open (atom-text-editor.editor.is-focused)
-3:46 core:confirm (atom-text-editor.editor.mini.is-focused)
8x -2:03.8.0 core:backspace (atom-text-editor.editor.mini.is-focused)
-1:31 core:confirm (atom-text-editor.editor.mini.is-focused)
-0:14 vim-mode:activate-insert-mode (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:10.7.0 editor:newline (atom-text-editor.editor.vim-mode.is-focused.insert-mode)
-0:08.9.0 vim-mode:activate-command-mode (atom-text-editor.editor.vim-mode.is-focused.insert-mode)
-0:07.7.0 ex-mode:open (atom-text-editor.editor.vim-mode.is-focused.command-mode)
-0:02.1.0 core:confirm (atom-text-editor.editor.mini.is-focused)
{
"core": {}
}
# User
atom-html-preview, v0.1.6
autocomplete-haskell, v0.2.1
color-picker, v1.7.0
ex-mode, v0.4.1
vim-mode, v0.46.0
# Dev
No dev packages
In vim its possible to do : to go to that line
Hello,
I was wondering about the future of this package.
I am looking for something that would be more like vim's command bar, wich can be used as both input and output.
What are your plans about this?
It would be super helpful to add tab completion support for ex-mode, like in real vim.
It probably can be implemented as separate package, however ex-mode should provide more unified way to register and list all registered commands.
What do you guys think?
[Enter steps to reproduce below:]
ma
%
:'a,.d
Atom Version: 1.0.2
System: Microsoft Windows 7 Ultimate
Thrown From: ex-mode package, v0.5.1
Uncaught TypeError: Cannot read property 'end' of undefined
At C:\Users\pfnguyen\.atom\packages\ex-mode\lib\ex-state.coffee:56
TypeError: Cannot read property 'end' of undefined
at Command.parseAddr (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\command.coffee:26:37)
at Command.execute (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\command.coffee:101:21)
at ExState.processOpStack (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\ex-state.coffee:50:17)
at ExState.pushOperations (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\ex-state.coffee:40:6)
at ExViewModel.ViewModel.confirm (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\view-model.coffee:13:14)
at ExViewModel.module.exports.ExViewModel.confirm (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\ex-view-model.coffee:35:5)
at ExViewModel.confirm (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\ex-view-model.coffee:1:1)
at ex-command-mode-input.ExCommandModeInputElement.confirm (C:\Users\pfnguyen\.atom\packages\ex-mode\lib\ex-command-mode-input-element.coffee:46:16)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\pfnguyen\AppData\Local\atom\app-1.0.2\resources\app.asar\src\command-registry.js:241:29)
at C:\Users\pfnguyen\AppData\Local\atom\app-1.0.2\resources\app.asar\src\command-registry.js:3:61
-0:52.8.0 core:confirm (atom-text-editor.editor.mini.is-focused)
7x -0:52.8.0 blur (atom-text-editor.editor.mini.is-focused)
24x -0:18.7.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:17.5.0 vim-mode:search (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:17.5.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:16.5.0 core:confirm (atom-text-editor.editor.mini.is-focused)
2x -0:16.5.0 blur (atom-text-editor.editor.mini.is-focused)
-0:14 vim-mode:move-to-last-character-of-line (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:13.8.0 vim-mode:bracket-matching-motion (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:12.1.0 vim-mode:mark (atom-text-editor.editor.vim-mode.command-mode.is-focused)
3x -0:12.1.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:11.8.0 vim-mode:bracket-matching-motion (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:11.4.0 ex-mode:open (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:11.4.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:10.7.0 core:confirm (atom-text-editor.editor.mini.is-focused)
2x -0:04.3.0 blur (atom-text-editor.editor.mini.is-focused)
{
"core": {}
}
# User
ex-mode, v0.5.1
language-scala, v1.1.3
vim-mode, v0.55.0
# Dev
No dev packages
when i saved files by ":w", the error [Uncaught TypeError: Cannot read property 'hiddenInputComponent' of null] was thrown.
This is a minor issue, but I figured I'd report it: in buffers that are not files (such as the Settings buffer), ex-mode does not work. I was not able to do :q to quit the Settings menu.
currently i use atom 0.199.0, with vim-mode and ex-mode. i obtain this warning from deprecation cop:
Are you trying to listen for the 'core:confirm' Atom command with jQuery::on
?
jQuery::trigger
can no longer be used to listen for Atom commands. Please
use atom.commands.add
instead. See the docs at
https://atom.io/docs/api/latest/CommandRegistry
thanks in advance,
The package throws this error whenever I try using it, I tried fixing it and I think the problem is with the dependencies, I looked for all of them with no avail. I would be pretty rad if you could tell me how to fix it.
[Enter steps to reproduce below:]
Atom Version: 1.0.0
System: linux 3.16.0-4-amd64
Thrown From: ex-mode package, v0.5.1
Failed to activate the ex-mode package
At Cannot find module 'event-kit'
Error: Cannot find module 'event-kit'
at Module._resolveFilename (module.js:328:15)
at Function.Module._resolveFilename (/usr/share/atom/resources/app.asar/src/module-cache.js:383:52)
at Function.Module._load (module.js:270:25)
at Module.require (module.js:357:17)
at require (module.js:376:17)
at Object.<anonymous> (/home/juanchovilla/.atom/packages/ex-mode/lib/ex-state.coffee:1:46)
at Object.<anonymous> (/home/juanchovilla/.atom/packages/ex-mode/lib/ex-state.coffee:1:1)
at Module._compile (module.js:452:26)
at Object.requireCoffeeScript (/usr/share/atom/resources/app.asar/node_modules/coffee-cash/lib/coffee-cash.js:85:19)
at Module.load (module.js:347:32)
at Function.Module._load (module.js:302:12)
at Module.require (module.js:357:17)
at require (module.js:376:17)
at Object.<anonymous> (/home/juanchovilla/.atom/packages/ex-mode/lib/ex-mode.coffee:2:11)
at Object.<anonymous> (/home/juanchovilla/.atom/packages/ex-mode/lib/ex-mode.coffee:1:1)
at Module._compile (module.js:452:26)
at Object.requireCoffeeScript (/usr/share/atom/resources/app.asar/node_modules/coffee-cash/lib/coffee-cash.js:85:19)
at Module.load (module.js:347:32)
at Function.Module._load (module.js:302:12)
at Module.require (module.js:357:17)
at require (module.js:376:17)
at Package.module.exports.Package.requireMainModule (/usr/share/atom/resources/app.asar/src/package.js:709:34)
at Package.module.exports.Package.activateConfig (/usr/share/atom/resources/app.asar/src/package.js:257:12)
at Package.module.exports.Package.activateNow (/usr/share/atom/resources/app.asar/src/package.js:236:14)
at /usr/share/atom/resources/app.asar/src/package.js:772:25
at Emitter.module.exports.Emitter.emit (/usr/share/atom/resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:222:20)
at /usr/share/atom/resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:520:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:355:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app.asar/src/window-event-handler.js:180:20)
-2:24.7.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
-2:24.7.0 core:cancel (atom-text-editor.editor.mini.is-focused)
-2:23.5.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
-2:23.5.0 core:cancel (atom-text-editor.editor.mini.is-focused)
-2:21.5.0 core:backspace (atom-text-editor.editor.mini.is-focused)
-2:20.7.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
-2:20.7.0 core:cancel (atom-text-editor.editor.mini.is-focused)
-2:19.5.0 core:backspace (atom-text-editor.editor.mini.is-focused)
-2:18.4.0 core:paste (atom-text-editor.editor.mini.is-focused)
-2:14.8.0 core:confirm (atom-text-editor.editor.mini.is-focused)
13x -0:08.2.0 vim-mode:move-left (atom-text-editor.editor.vim-mode.command-mode.is-focused)
6x -0:07.6.0 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:05.8.0 vim-mode:activate-insert-mode (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:01.5.0 core:backspace (atom-text-editor.editor.vim-mode.is-focused.insert-mode)
-0:01.2.0 vim-mode:activate-command-mode (atom-text-editor.editor.vim-mode.is-focused.insert-mode)
-0:00.5.0 ex-mode:open (atom-text-editor.editor.vim-mode.is-focused.command-mode)
{
"core": {
"themes": [
"one-dark-ui",
"monokai"
]
}
}
# User
ex-mode, v0.5.1
minimap, v4.10.0
monokai, v0.14.0
vim-mode, v0.54.0
# Dev
No dev packages
Currently it's not possible to toggle ex-mode panel if Atom has no active editors (empty workspace)
'atom-workspace:not(.editor)':
':': 'ex-mode:open'
while the following keymap works fine
'atom-workspace:not(.editor)':
':': 'application:open'
Am I missing something here? How can it be accomplished?
(Copied from atom/vim-mode#703)
:s
(e.g. :s/"/'/g
)u
/ Ctrl-Z
to undoAtom Version: 0.209.0
System: Unknown Windows Version
Thrown From: vim-mode package, v0.53.0
Uncaught TypeError: Cannot read property '0' of undefined
At C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\node_modules\text-buffer\lib\marker-store.js:204
TypeError: Cannot read property '0' of undefined
at MarkerStore.module.exports.MarkerStore.restoreFromSnapshot (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\node_modules\text-buffer\lib\marker-store.js:204:35)
at TextBuffer.module.exports.TextBuffer.undo (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\node_modules\text-buffer\lib\text-buffer.js:715:33)
at TextEditor.module.exports.TextEditor.undo (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\src\text-editor.js:1138:19)
at VimState.module.exports.VimState.undo (C:\Users\KJRS-Nixus\.atom\packages\vim-mode\lib\vim-state.coffee:239:13)
at atom-text-editor.registerCommands.undo (C:\Users\KJRS-Nixus\.atom\packages\vim-mode\lib\vim-state.coffee:71:23)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\src\command-registry.js:238:29)
at C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\src\command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\node_modules\atom-keymap\lib\keymap-manager.js:520:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\node_modules\atom-keymap\lib\keymap-manager.js:355:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (C:\Users\KJRS-Nixus\AppData\Local\atom\app-0.209.0\resources\app.asar\src\window-event-handler.js:177:20)
-0:53.2.0 ex-mode:open (atom-text-editor.editor.vim-mode.is-focused.command-mode)
-0:53.2.0 blur (atom-text-editor.editor.vim-mode.is-focused.command-mode)
-0:52.8.0 core:confirm (atom-text-editor.editor.mini.is-focused)
2x -0:52.7.0 blur (atom-text-editor.editor.mini.is-focused)
-0:49 ex-mode:open (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:48.9.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:40.4.0 core:confirm (atom-text-editor.editor.mini.is-focused)
2x -0:40.3.0 blur (atom-text-editor.editor.mini.is-focused)
-0:36.6.0 vim-mode:undo (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:16.4.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:11.9.0 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode.is-focused)
22x -0:11.4.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode.is-focused)
6x -0:09.8.0 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode.is-focused)
4x -0:08.6.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:02.2.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:01.5.0 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode.is-focused)
{
"core": {
"disabledPackages": [
"minimap",
"bracket-close-jump",
"autohide-tree-view",
"atom-beautify",
"jsformat",
"jumpy",
"atom-html-preview",
"atom-jshint",
"autoclose-html",
"color-picker",
"docblockr",
"jshint",
"language-smarty-php",
"linter",
"linter-jshint",
"react",
"react-snippets",
"tabularize",
"turbo-javascript"
],
"themes": [
"seti-ui",
"one-dark-syntax"
]
},
"vim-mode": {
"useSmartcaseForSearch": true
}
}
# User
ex-mode, v0.5.1
seti-ui, v0.7.1
turbo-javascript, v1.1.3
vim-mode, v0.53.0
# Dev
No dev packages
This looks like it's related to atom/atom#7124, atom/atom#6982 and atom/atom#6757.
[Enter steps to reproduce below:]
Atom Version: 0.210.0
System: Mac OS X 10.10.3
Thrown From: ex-mode package, v0.5.1
Uncaught TypeError: Cannot read property 'hiddenInputComponent' of null
At /Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:207
TypeError: Cannot read property 'hiddenInputComponent' of null
at atom-text-editor.TextEditorElement.blurred (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:207:51)
at HTMLInputElement.<anonymous> (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor-element.js:182:26)
at atom-pane.PaneElement.activated (/Applications/Atom.app/Contents/Resources/app.asar/src/pane-element.js:125:19)
at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at Pane.module.exports.Pane.activate (/Applications/Atom.app/Contents/Resources/app.asar/src/pane.js:615:27)
at ex-command-mode-input.ExCommandModeInputElement.removePanel (/Users/K-Nakamura/.atom/packages/ex-mode/lib/ex-command-mode-input-element.coffee:57:36)
at ex-command-mode-input.ExCommandModeInputElement.confirm (/Users/K-Nakamura/.atom/packages/ex-mode/lib/ex-command-mode-input-element.coffee:47:6)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:238:29)
at /Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:520:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:355:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/Applications/Atom.app/Contents/Resources/app.asar/src/window-event-handler.js:180:20)
-0:02.7.0 ex-mode:open (input.hidden-input)
-0:02.5.0 core:confirm (input.hidden-input)
3x -0:02.5.0 blur (input.hidden-input)
-0:00.4.0 ex-mode:open (input.hidden-input)
3x -0:00.4.0 blur (input.hidden-input)
-0:00.2.0 core:confirm (input.hidden-input)
3x -0:00.2.0 blur (input.hidden-input)
{
"core": {
"disabledPackages": [
"autocomplete-python",
"minimap",
"autocomplete-plus-python-jedi",
"linter-python-pep8",
"linter-pep8",
"term2"
],
"themes": [
"one-dark-ui",
"solarized-dark-syntax"
],
"excludeVcsIgnoredPaths": false,
"followSymlinks": false,
"destroyEmptyPanes": false
}
}
# User
atom-alignment, v0.12.1
atom-runner, v2.4.1
autocomplete-paths, v1.0.2
docblockr, v0.7.2
emmet, v2.3.10
ex-mode, v0.5.1
file-icons, v1.5.7
highlight-column, v0.4.3
japanese-wrap, v0.2.10
language-rdf, v0.2.0
linter, v0.12.7
linter-javac, v0.1.4
linter-pylint, v0.2.2
project-manager, v1.15.10
vim-mode, v0.53.0
vim-mode-visual-block, v0.2.4
vim-surround, v0.7.0
# Dev
No dev packages
I just installed the vim mode and ex mode packages to try.
First thing I noticed when using ex mode, hitting : opens a command bar, but it doesn't display the : at the start of the line.
Vim does this so you can visually check the commands you are entering are correct e.g. : activates ex then w displays as :w for write
ex mode accepts : then w for write, and also : then :w for write. So the actual function doesn't seem to break.
It's a minor thing, but it would be clearer if the bar displayed the initial : used to activate ex mode.
When running :s/foo//
...
atom ex-mode:
before: "foo bar"
after: "/ bar"
vim:
before "foo bar"
after: " bar"
From @msmaili on July 8, 2015 21:46
I noticed whenever I try to go to a particular line, it's off by one. I'm guessing it's just some indexing issue.
E.g., typing :20
takes me to line 21.
Also, is there a way to show the bottom input bar when entering a line number? That way I can see what line I'm typing?
Copied from original issue: atom/vim-mode#749
The following error arise, usually on the second time I press ':'.
/home/romgrk/.atom/packages/ex-mode/lib/ex-state.coffee:47
TypeError: Cannot read property 'length' of undefined
at ExState.processOpStack (/home/romgrk/.atom/packages/ex-mode/lib/ex-state.coffee:47:24)
at ExState.pushOperations (/home/romgrk/.atom/packages/ex-mode/lib/ex-state.coffee:40:6)
at atom-text-editor.pushFn (/home/romgrk/.atom/packages/ex-mode/lib/ex-state.coffee:29:26)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/usr/share/atom/resources/app.asar/src/command-registry.js:238:29)
at /usr/share/atom/resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:519:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:354:22)
at KeymapManager.module.exports.KeymapManager.terminatePendingState (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:502:14)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/usr/share/atom/resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:392:21)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/usr/share/atom/resources/app.asar/src/window-event-handler.js:178:20)
This happens when you try to save without a new file without specifying a filename. I think it should open up a save file dialog in this case.
Atom Version: 0.181.0
System: Microsoft Windows 8.1
Thrown From: ex-mode package, v0.1.0
Uncaught Error: Can't save buffer with no file path
At C:\Users\Chris\.atom\packages\ex-mode\lib\ex-state.coffee:54
Error: Can't save buffer with no file path
at TextBuffer.module.exports.TextBuffer.saveAs (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\node_modules\text-buffer\lib\text-buffer.js:963:15)
at TextBuffer.module.exports.TextBuffer.save (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\node_modules\text-buffer\lib\text-buffer.js:958:19)
at TextEditor.module.exports.TextEditor.save (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\src\text-editor.js:620:26)
at Ex.write (C:\Users\Chris\.atom\packages\ex-mode\lib\ex.coffee:2:46)
at Ex.w (C:\Users\Chris\.atom\packages\ex-mode\lib\ex.coffee:3:10)
at C:\Users\Chris\.atom\packages\ex-mode\lib\ex.coffee:1:1
at Command.execute (C:\Users\Chris\.atom\packages\ex-mode\lib\command.coffee:17:7)
at ExState.processOpStack (C:\Users\Chris\.atom\packages\ex-mode\lib\ex-state.coffee:48:17)
at ExState.pushOperations (C:\Users\Chris\.atom\packages\ex-mode\lib\ex-state.coffee:39:6)
at ExViewModel.ViewModel.confirm (C:\Users\Chris\.atom\packages\ex-mode\lib\view-model.coffee:12:14)
at ExViewModel.module.exports.ExViewModel.confirm (C:\Users\Chris\.atom\packages\ex-mode\lib\ex-view-model.coffee:35:5)
at ExViewModel.confirm (C:\Users\Chris\.atom\packages\ex-mode\lib\ex-view-model.coffee:1:1)
at ExCommandModeInputView.module.exports.ExCommandModeInputView.confirm (C:\Users\Chris\.atom\packages\ex-mode\lib\ex-command-mode-input-view.coffee:45:16)
at atom-text-editor.<anonymous> (C:\Users\Chris\.atom\packages\ex-mode\lib\ex-command-mode-input-view.coffee:1:1)
at atom-text-editor.handler (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\src\space-pen-extensions.js:115:32)
at atom-text-editor.jQuery.event.dispatch (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\node_modules\space-pen\vendor\jquery.js:4681:9)
at atom-text-editor.elemData.handle (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\node_modules\space-pen\vendor\jquery.js:4359:46)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\src\command-registry.js:243:29)
at C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\src\command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\node_modules\atom-keymap\lib\keymap-manager.js:558:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\node_modules\atom-keymap\lib\keymap-manager.js:396:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (C:\Users\Chris\AppData\Local\atom\app-0.181.0\resources\app\src\window-event-handler.js:176:20)
-0:10.0 vim-mode:join (atom-text-editor.editor.vim-mode.command-mode)
-0:09.8 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode)
2x -0:09.3 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode)
-0:08.9 vim-mode:activate-linewise-visual-mode (atom-text-editor.editor.vim-mode.command-mode)
2x -0:08.6 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode)
-0:08.3 vim-mode:delete (atom-text-editor.editor.vim-mode.command-mode)
2x -0:07.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode)
2x -0:06.5 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode)
-0:06.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode)
2x -0:05.8 vim-mode:delete (atom-text-editor.editor.vim-mode.command-mode)
-0:05.5 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode)
2x -0:05.3 vim-mode:delete (atom-text-editor.editor.vim-mode.command-mode)
-0:05.0 vim-mode:move-up (atom-text-editor.editor.vim-mode.command-mode)
2x -0:04.9 vim-mode:delete (atom-text-editor.editor.vim-mode.command-mode)
-0:04.3 ex-mode:open (atom-text-editor.editor.vim-mode.command-mode)
-0:04.1 core:confirm (atom-text-editor.editor.mini.is-focused)
{
"core": {
"themes": [
"atom-dark-ui",
"atom-dark-syntax"
]
}
}
# User
ex-mode, v0.1.0
vim-mode, v0.33.0
# Dev
No dev packages
I install vim-mode and ex-mode but when i press : nothing happens and if i press w the line are indented...
What im doing wrong?
Thanks!
Currently, ex-mode is missing functionality for editing files with:
:e
:enew
Full vim documentation on this can be found here.
In vim, the command :%s/^/\/\//
will comment out all lines in a file (in languages where //
is a comment prefix). Same command in ex-mode will insert \/\/
before each line, the \
should be stripped. This is admittedly low priority since the following alternative works: %s#^#//#
, still it would be useful for cases where I can't come up with a creative delimiter to use that doesn't appear in the string.
Considering that vim's command bar is fixed, I was thinking that ex-mode input element should be fixed, instead of only appearing when activated.
I think that if it is fixed, it should also go under status-bar.
It could also be a setting, instead of a default behavior.
[Enter steps to reproduce below:]
Atom Version: 1.0.0
System: Mac OS X 10.10.3
Thrown From: ex-mode package, v0.5.1
Uncaught NotFoundError: Failed to execute 'removeChild' on 'Node': The node to be removed is no longer a child of this node. Perhaps it was moved in a 'blur' event handler?
At /Applications/Atom.app/Contents/Resources/app.asar/src/panel-container-element.js:63
Error: Failed to execute 'removeChild' on 'Node': The node to be removed is no longer a child of this node. Perhaps it was moved in a 'blur' event handler?
at Error (native)
at atom-panel-container.PanelContainerElement.panelRemoved (/Applications/Atom.app/Contents/Resources/app.asar/src/panel-container-element.js:63:19)
at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at PanelContainer.module.exports.PanelContainer.panelDestroyed (/Applications/Atom.app/Contents/Resources/app.asar/src/panel-container.js:93:29)
at Emitter.module.exports.Emitter.emit (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/event-kit/lib/emitter.js:82:11)
at Panel.module.exports.Panel.destroy (/Applications/Atom.app/Contents/Resources/app.asar/src/panel.js:25:20)
at ex-command-mode-input.ExCommandModeInputElement.removePanel (/Users/victorbrouk/.atom/packages/ex-mode/lib/ex-command-mode-input-element.coffee:58:12)
at ex-command-mode-input.ExCommandModeInputElement.confirm (/Users/victorbrouk/.atom/packages/ex-mode/lib/ex-command-mode-input-element.coffee:47:6)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:241:29)
at /Applications/Atom.app/Contents/Resources/app.asar/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:520:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:355:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/Applications/Atom.app/Contents/Resources/app.asar/src/window-event-handler.js:180:20)
2x -0:32.8.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:32.1.0 window:focus-pane-on-left (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:32 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
8x -0:31.3.0 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:29.8.0 vim-mode:move-to-last-character-of-line (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:29.4.0 vim-mode:move-left (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:28.5.0 vim-mode:move-to-beginning-of-line (atom-text-editor.editor.vim-mode.command-mode.is-focused)
2x -0:26.2.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:11.4.0 term2:open-split-down (atom-text-editor.editor.vim-mode.command-mode.is-focused)
8x -0:11.3.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:02.8.0 pane:close (atom-text-editor.editor.vim-mode.command-mode.is-focused)
3x -0:02.7.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:01.1.0 ex-mode:open (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:01.1.0 blur (atom-text-editor.editor.vim-mode.command-mode.is-focused)
-0:00.7.0 core:confirm (atom-text-editor.editor.mini.is-focused)
-0:00.6.0 blur (atom-text-editor.editor.mini.is-focused)
{
"core": {
"themes": [
"atom-dark-ui",
"Lucario"
]
}
}
# User
Lucario, v0.1.9
ex-mode, v0.5.1
minimap, v4.10.1
svn, v0.0.6
term2, v0.9.9
vim-mode, v0.54.0
# Dev
No dev packages
Is it possible to support :set list
, an option which shows invisible characters such as line endings and tab characters, and :set nolist
that turns this option off?
In the code I see no support for vim options and I wonder if ex-mode plans to have support for them.
My typical use case for that command was to check whether file is tab or space indented. I noticed that there's Window: Toggle Invisibles
for that in Atom, which is not bound to any key by default. Still I find it handy to use old vim command for that.
I could implement that option myself but firstly I want to clarify if vim options is appropriate functionality to have in ex-mode.
We should have a standard format for declaring commands, instead of throwing everything in lib/ex.coffee
.
First draft:
'edit':
trigger: ['edit', 'e']
callback: BufferCommands.edit # we could group similar commands in various classes
I think it could also be interesting to have regex triggers, for commands like :.,$dx
, aka delete everything from current line to EOF, store in register x
.
I'd also like to point the fact that we can use atom command-system to accomplish tasks
dispatch = (command) ->
atom.commands.dispatch(
document.querySelector('atom-workspace'), command)
'enew':
trigger: 'enew'
callback: dispatch.bind null, 'application:new-file'
My last concern is argument passing. Currently, callbacks are called with [range]
and "args"
.
However, we might want to pass more complex objects someday, eg. exState
, vimState
, editor
.
I propose to replace those arguments with a single event
object. It could have as default the properties .range
and .args
. Furthermore, it would also be compatible with other event-driven systems. (eg atom commands)
[Enter steps to reproduce below:]
Atom Version: 0.187.0
System: Mac OS X 10.10.3
Thrown From: ex-mode package, v0.3.1
Uncaught TypeError: Cannot read property 'length' of undefined
At /Users/ahmad/.atom/packages/ex-mode/lib/ex-state.coffee:46
TypeError: Cannot read property 'length' of undefined
at ExState.processOpStack (/Users/ahmad/.atom/packages/ex-mode/lib/ex-state.coffee:46:24)
at ExState.pushOperations (/Users/ahmad/.atom/packages/ex-mode/lib/ex-state.coffee:39:6)
at atom-text-editor.pushFn (/Users/ahmad/.atom/packages/ex-mode/lib/ex-state.coffee:28:26)
at CommandRegistry.module.exports.CommandRegistry.handleCommandEvent (/Applications/Atom.app/Contents/Resources/app/src/command-registry.js:246:29)
at /Applications/Atom.app/Contents/Resources/app/src/command-registry.js:3:61
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:558:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app/node_modules/atom-keymap/lib/keymap-manager.js:396:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/Applications/Atom.app/Contents/Resources/app/src/window-event-handler.js:182:20)
-0:28.5 core:backspace (atom-text-editor.editor.vim-mode.command-mode)
-0:27.2 tree-view:toggle-focus (atom-text-editor.editor.vim-mode.command-mode)
-0:26.3 core:move-down (ol.tree-view.full-menu.list-tree.has-collapsable-children.focusable-panel)
-0:25.6 tree-view:open-selected-entry (ol.tree-view.full-menu.list-tree.has-collapsable-children.focusable-panel)
-0:22.5 tree-view:toggle-focus (atom-text-editor.editor.vim-mode.command-mode)
2x -0:21.8 core:move-down (ol.tree-view.full-menu.list-tree.has-collapsable-children.focusable-panel)
-0:20.5 tree-view:open-selected-entry (ol.tree-view.full-menu.list-tree.has-collapsable-children.focusable-panel)
16x -0:19.5 vim-mode:move-down (atom-text-editor.editor.vim-mode.command-mode)
-0:17.3 vim-mode:insert-below-with-newline (atom-text-editor.editor.vim-mode.command-mode)
-0:08.4 vim-mode:activate-command-mode (atom-text-editor.editor.vim-mode.command-mode)
2x -0:07.8 vim-mode:move-right (atom-text-editor.editor.vim-mode.command-mode)
-0:07.0 vim-mode:insert-after (atom-text-editor.editor.vim-mode.command-mode)
-0:05.3 core:backspace (atom-text-editor.editor.vim-mode.command-mode)
-0:04.5 editor:newline (atom-text-editor.editor.vim-mode.command-mode)
-0:02.7 vim-mode:activate-command-mode (atom-text-editor.editor.vim-mode.command-mode)
2x -0:02.2 ex-mode:open (atom-text-editor.editor.vim-mode.command-mode)
{
"core": {
"themes": [
"one-light-ui",
"atom-light-syntax"
],
"disabledPackages": [
"toggle-tabs"
]
}
}
# User
atom-alignment, v0.11.0
ex-mode, v0.3.1
language-haml, v0.15.0
language-scheme, v1.3.0
language-swift, v0.3.0
vim-mode, v0.39.0
# Dev
No dev packages
Originally reported on atom/vim-mode#716, opening here on their request.
Suppose you are on
77: hello world
78: hello world
Select line 77 with shift +v
Use ex mode to perform a modification
:s/hello/hola/
Line 78 hello is replaced instead of 77.
77: hello world
78: hola world
Like :42
go to line 42.
Support communicating with vim-mode (and probably the editor itself) by setting and getting (:set) options like 'hls', 'ts', 'ff', etc.
It probably doesn't make sense to implement a huge portion of options. However, options are a very important aspect of vim and they are just integrated into workflow of some of us. For example, if I want to temporarily turn of line numberings I just do :set nonu
and when highlighting search matches gets in my way I do :set nohls
and I can continue to my work without loosing the n
command to go to the next match.
Also recently I needed to modify what motion commands like w
recognize as word boundaries in Clojure files. In vim that is as easy as setting 'iskeyword' option in an autocmd. But in atom I don't know if that is possible at all.
I hope the border-radius would be removed.
It doesn't look good in my opinion for that bar. and maybe an option to choose the color of the bar would be great, too.
Thanks!
:g/^$/d
vjj:
should:
:'<,'>
Maybe it is the most important ex command which I use.
Currently ex-mode is missing functionality for opening/closing new tabs. This includes:
:tabnew
:tabe
:tabc
We're also missing tab navigation with:
:tabn
:tabp
When the command palette or grammar selector dropdowns are started from an ex-mode command, they don't get keyboard focus and anything typed will go into the document behind the dropdown.
I suspect this is because the ex-mode input window closes itself at about the same time it runs the command. Maybe it should run the command just after closing itself? (Or just before?)
In init.coffee:
atom.packages.onDidActivatePackage (pack) ->
if pack.name == 'ex-mode'
Ex.registerCommand 'setf', ->
atom.commands.dispatch(atom.views.getView(atom.workspace), 'grammar-selector:show')
Wrapping that dispatch call in a setTimeout
resolves the issue.
(This was originally discussed on this discuss.atom.io thread)
Call ::getActiveTextEditor instead
Workspace.getActiveEditor (/Applications/Atom.app/Contents/Resources/app/src/workspace.js:999:12)
Ex.write (/Users/seark/.atom/packages/ex-mode/lib/ex.coffee:117:28)
Implementing tab completion for both commands and file paths would be a great feature to add.
After :s probably my most used command is :! .
[Enter steps to reproduce below:]
esc
keyw
to write the fileAtom Version: 0.194.0
System: Mac OS X 10.10.3
Thrown From: ex-mode package, v0.4.1
Uncaught TypeError: undefined is not a function
At /Users/eric/.atom/packages/ex-mode/lib/ex-state.coffee:56
TypeError: undefined is not a function
at Ex.write (/Users/eric/.atom/packages/ex-mode/lib/ex.coffee:117:29)
at Ex.w (/Users/eric/.atom/packages/ex-mode/lib/ex.coffee:143:5)
at /Users/eric/.atom/packages/ex-mode/lib/ex.coffee:1:1
at Command.execute (/Users/eric/.atom/packages/ex-mode/lib/command.coffee:148:7)
at ExState.processOpStack (/Users/eric/.atom/packages/ex-mode/lib/ex-state.coffee:49:17)
at ExState.pushOperations (/Users/eric/.atom/packages/ex-mode/lib/ex-state.coffee:40:6)
at ExViewModel.ViewModel.confirm (/Users/eric/.atom/packages/ex-mode/lib/view-model.coffee:12:14)
at ExViewModel.module.exports.ExViewModel.confirm (/Users/eric/.atom/packages/ex-mode/lib/ex-view-model.coffee:35:5)
at ExViewModel.confirm (/Users/eric/.atom/packages/ex-mode/lib/ex-view-model.coffee:1:1)
at ExCommandModeInputView.module.exports.ExCommandModeInputView.confirm (/Users/eric/.atom/packages/ex-mode/lib/ex-command-mode-input-view.coffee:46:16)
at atom-text-editor.<anonymous> (/Users/eric/.atom/packages/ex-mode/lib/ex-command-mode-input-view.coffee:1:1)
at atom-text-editor.jQuery.event.dispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4430:9)
at atom-text-editor.elemData.handle (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4116:28)
at KeymapManager.module.exports.KeymapManager.dispatchCommandEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:519:16)
at KeymapManager.module.exports.KeymapManager.handleKeyboardEvent (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/atom-keymap/lib/keymap-manager.js:354:22)
at HTMLDocument.module.exports.WindowEventHandler.onKeydown (/Applications/Atom.app/Contents/Resources/app.asar/src/window-event-handler.js:178:20)
-1:01.1.0 vim-mode:activate-command-mode (atom-text-editor.editor.cursor-block.vim-mode.command-mode.is-focused)
-1:00.7.0 ex-mode:open (atom-text-editor.editor.cursor-block.vim-mode.command-mode.is-focused)
-1:00.5.0 core:confirm (atom-text-editor.editor.mini)
-0:58.1.0 ex-mode:open (atom-text-editor.editor.cursor-block.vim-mode.command-mode.is-focused)
-0:57.9.0 core:confirm (atom-text-editor.editor.mini)
-0:56.1.0 editor:consolidate-selections (atom-text-editor.editor.mini)
-0:56.1.0 core:cancel (atom-text-editor.editor.mini)
-0:54.9.0 ex-mode:open (atom-text-editor.editor.cursor-block.vim-mode.command-mode.is-focused)
-0:54.7.0 core:confirm (atom-text-editor.editor.mini)
-0:53.5.0 core:save (atom-text-editor.editor.cursor-block.vim-mode.command-mode.is-focused)
-0:53.1.0 core:close (atom-text-editor.editor.cursor-block.vim-mode.command-mode.is-focused)
-0:51.1.0 settings-view:open (atom-text-editor.editor.cursor-block.vim-mode.command-mode)
3x -0:46.7.0 core:confirm (atom-text-editor.editor.mini)
-0:03.2.0 core:close (atom-text-editor.editor.mini)
-0:01.8.0 ex-mode:open (atom-text-editor.editor.cursor-block.vim-mode.command-mode)
-0:01.0 core:confirm (atom-text-editor.editor.mini.is-focused)
{
"core": {
"themes": [
"one-dark-ui",
"solarized-dark-syntax"
],
"followSymlinks": true
}
}
# User
advanced-new-file, v0.4.0
atom-grails, v0.1.0
autocomplete-paths, v1.0.2
autocomplete-plus, v2.12.0
block-cursor, v0.12.4
cargo-test-runner, v0.0.3
ex-mode, v0.4.1
language-groovy, v0.4.0
language-latex, v0.6.1
language-rust, v0.4.3
latex, v0.22.0
linter-clang, v2.25.1
linter-rust, v0.0.9
minimap, v4.7.6
minimap-find-and-replace, v4.2.0
minimap-selection, v4.2.0
project-manager, v1.15.5
theme-switcher, v1.1.0
vim-mode, v0.44.0
vim-surround, v0.5.1
# Dev
No dev packages
This is critical to implement visual markers or access registers.
Like how vim accepts any of :w, :wr, :write, etc. .
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.