Code Monkey home page Code Monkey logo

vim-simpledb's People

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

Watchers

 avatar

vim-simpledb's Issues

execute fail

Not an editor command: select * from dvl_version;^@'| mysql -v -v -v -t -
D baseproject -u root -P 3316 -h 127.0.0.1 > /tmp/vim-simpledb-result.txt 2>&1

Do not hardcode \timing on

Make it option for your plugin.

And also I recommend you to wrap such actions to:

\set QUIET on
...actions...
\set QUIET off

to get rid off unwanted messages ("timing enabled", "pager enabled", etc.)

Execute a paragraph without moving cursor

Earlier you would use this to execute the current paragraph of SQL:

:call simpledb#ExecuteSql("'{", "'}")

Now you changed that to this version that moves the cursor to the '{ mark a line above the paragraph.

:'{,'}SimpleDBExecuteSql

A small improvement would be to use this to put the cursor in the first line of the paragraph:

:'{+1,'}SimpleDBExecuteSql

But I would prefer the previous behavior where the cursor wasn't moved at all.

Could you make that possible again? Thank you!

Don't set filetype=sql indiscriminately

I noticed vim-simpledb does this in ftdetect/sql.vim:

" sql
au BufNewFile,BufRead *.sql set filetype=sql

" plpgsql
au BufNewFile,BufRead *.pgsql,*.plpgsql set filetype=pgsql.sql

The first part is a near direct copy of what $RUNTIME/filetype.vim does:

" SQL
au BufNewFile,BufRead *.sql         call s:SQL()

func! s:SQL()
  if exists("g:filetype_sql")
    exe "setf " . g:filetype_sql
  else
    setf sql
  endif
endfunc

So this introduces a redundant autocommand. Worse, it doesn't respect g:filetype_sql, which left me scratching my head for way too long.

It would be best to just remove the first two lines I think (and the other one too, IMHO). Failing that, respecting g:filetype_sql would be a "workable" second option.

usage of ! anywhere in query causes errors

executing the sql query

SELECT 1 != 0; 

using simpledb results in the following error:

ERROR:  syntax error at or near "("
LINE 1: SELECT 1 (cat /tmp/vim-simpledb-error.txt >> /tmp/vim-simple...

which matches up with the line here: https://github.com/ivalkeen/vim-simpledb/blob/master/plugin/simpledb.vim#L44

I've seen similar errors when there is an exclamation point in a WHERE clause as well, but the provided query was the simplest/smallest reproduction of the bug.

Don't hardcode keybindings

Hey. Good plugin. One suggestion similar to #7.

There should be a configuration variable to prevent default keybindings. It can be enabled by default if you like.

Like this.

ftplugin/sql.vim:

if g:simpledb_use_default_keybindings
  vnoremap <buffer> <enter> :SimpleDBExecuteSql<cr>
  nnoremap <buffer> <enter> m':SimpleDBExecuteSql <cr>g`'
  nnoremap <buffer> <leader><enter> m':'{,'}SimpleDBExecuteSql<cr>g`'
endif

plugin/simpledb.vim:

if !exists('g:simpledb_use_default_keybindings')
  let g:simpledb_use_default_keybindings=1
endif

Then if you don't want those default keybindings to be bound you can edit your personal vim configuration:

let g:simpledb_use_default_keybindings=0

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.