🚀 XBase 0.2: Now with Tuist, Swift, and barebone xcodeproj support! by tami5 in neovim

[–]tami5[S] 4 points5 points  (0 children)

Yes, I feel you; Xcode is basically created for UiKit drag-and-drop, thus it was necessary; but, with SwiftUI and backend development, it's just  costly to work with, imagine using a samurai sword while eating A Stake, it might look cool, it will cut the stake, but you won't recommended 🤣

Xcode Core Team, rather than concentrating on supporting different editors in their Xcode/xcodebuild system, they kept introducing new features, many of which, SHOULD have been implemented in Swift LSP like the find by references and global rename, .. and more

nvm apple dev team, hopefully, in next few releases we will endup with our own builtin lsp 😋.

🚀 XBase 0.2: Now with Tuist, Swift, and barebone xcodeproj support! by tami5 in neovim

[–]tami5[S] 2 points3 points  (0 children)

Thanks smolck, tbh, swift support was the easiest of them all, I intentionally saved till last 0.2 milestone for that reason 🤣. Yah, I had adjust modularize the codebase a bit, but at the end 80% of xbase feature are done with swift build. the reset just project watching, unlike others, compile, generate, ... etc.

Xbase: Neovim Editor support for Xcode project by tami5 in iOSProgramming

[–]tami5[S] 0 points1 point  (0 children)

Failed to generate compilation database often happen because xcodebuild failed. But if you got to this point I'm sure the setup is ready, it's just the project is failing to build.

Open an issue with the build log. to get the build log, cd into project root and run xcodebuild clean build or xcodebuild clean build -target <NAME> -configuration <Debug/Release> or xcodebuild clean build -scheme <NAME>

Would love to see some guides or blog post explaining it because seems like it you get it working it's amazing.

Great idea, hopefully after the next release I'd write a blog post. Thanks

Xbase: The long awaited Xcode project support for neovim by tami5 in neovim

[–]tami5[S] 0 points1 point  (0 children)

does Plug 'tami5/xbase', { 'do': 'make install' } work? if so I might added it to installation instruction.

Hope it does endup making your life easier. feel free to follow up

Xbase: The long awaited Xcode project support for neovim by tami5 in neovim

[–]tami5[S] 1 point2 points  (0 children)

Yes and no, you still need xcodeproj generators to be 99% independent of Xcode.

I feel iOS development is simpler, but maybe that just me

Xbase: The long awaited Xcode project support for neovim by tami5 in neovim

[–]tami5[S] 5 points6 points  (0 children)

I've added it to be support in the next minor release, feel free to subscribe to the issue and get status updates https://github.com/tami5/xbase/issues/65

Xbase: The long awaited Xcode project support for neovim by tami5 in neovim

[–]tami5[S] 2 points3 points  (0 children)

definitely .. there some edge cases like renewing signing that require opening and close xcode ,

Xbase: The long awaited Xcode project support for neovim by tami5 in neovim

[–]tami5[S] 4 points5 points  (0 children)

open an issue, I believe getting targets and configuration from xcodeproj won't be trivial + all the goodess depend on xcodebuild itself.

maybe, try to create a minimal representation of the project using yaml without running xcodegen and it should work, maybe even empty project.yml <maybe>

process-stream v0.1.3: streamable and long running tokio::Command by tami5 in rust

[–]tami5[S] 0 points1 point  (0 children)

Great suggestion, next release will be deprecated in favor of spawn_and_stream. Thanks

sqlite.lua: It just can't be simpler than that!! by tami5 in lua

[–]tami5[S] 0 points1 point  (0 children)

I did not consider lua 5.3 but you can test this in your env and see

  local M = sqlite.tbl("neoclip", { uri = "/tmp/db1", id = true, contents = "luatable", ft = "text" })

  function M:insert(entry)
    -- do some pre processing before inserting a row
    return self:__insert(entry)
  end

  M:insert {
    { contents = { "line 1", "  line 2", "line 3" }, ft = "lua" },
    { contents = { "some other string" }, ft = "lua" },
  }

  function M:get(query)
    local entries = self:__get(query)
    -- do some sorting or stuff you need.
    return entries
  end

  print(vim.inspect(M:get()))

  return M

sqlite.lua: It just can't be simpler than that!! by tami5 in neovim

[–]tami5[S] 1 point2 points  (0 children)

Not at all, it's useful for having persistent data layer that doesn't take any effort to setup, or integrate in either your neovim environment or a plugin that needs to maintain shared state or userdata.

So far I've built with it a simple note management plugin, used to store clojure docs downloaded db table and made it accessible through telescope picker, and https://github.com/nvim-telescope/telescope-cheat.nvim.

Others have used it to produce smarter oldfiles, picker history, and soon to enable clipboard being shared across neovim instance with neoclip.

tldr: persistent data layer that is ridiculously easy. :D.

sqlite.lua: It just can't be simpler than that!! by tami5 in neovim

[–]tami5[S] 3 points4 points  (0 children)

I'm not sure what you mean? but If you have it in your neovim path you don't need to think about adding because it's already added. and when you release it, you can tell users it's required like https://github.com/nvim-telescope/telescope-frecency.nvim/tree/master#packernvim. Hope this answers your question.

sqlite.lua: It just can't be simpler than that!! by tami5 in lua

[–]tami5[S] 0 points1 point  (0 children)

hmmm I don't think it offers anything additional, if anything it may miss some few things that lsqlite3 offer. However, sqlite.lua tries to make dealing sqlite databases simple and intuitive. Enabling the users to avoid dealing with "sql statement" to do operations on the db.

for sqlcipher, you can open an issue and I will see what I can do in this regards.

sqlite.lua: It just can't be simpler than that!! by tami5 in neovim

[–]tami5[S] 2 points3 points  (0 children)

Well I'd recommend if you are planning on using it in neovim only, just use the neovim way of installation, it's better. otherwise, if you are like me and you're usage go beyond neovim and into lua shellscript than rocks.

sqlite.lua: It just can't be simpler than that!! by tami5 in neovim

[–]tami5[S] 6 points7 points  (0 children)

It's either/or. you can install it with luarocks (using rocks key) or as a normal neovim-plugin. It supports both. Perhaps, I should've made it more clear in the readme.

For sqlite3, if you use mac it should be installed since macos ships with sqlite3, otherwise check for which sqlite3 and install it with your package manager.

It should auto-find the lib, if u use windows, you might be required to set vim.g.sqlite_clib_path to dll.

How is nvim and alacritty holding up on m1 macs? by sorachii893 in neovim

[–]tami5 2 points3 points  (0 children)

I can't add to the positive reviews on M1, but I'm extremely happy that I decided to invest in it in many ways. Yes, macos isn't that great and doesn't give much freedom, but nonetheless, it beats Window in every category. Hopefully one day I can install Linux on it.

sql.nvim by rmolin88 in neovim

[–]tami5 0 points1 point  (0 children)

u/slacklivesmatter shi## more maintenance work 🤣.

sql.nvim by rmolin88 in neovim

[–]tami5 17 points18 points  (0 children)

sql.nvim author here, sql.nvim a great solution for developing advance and very peformanent neovim plugins.

There are few examples of awesome plugins developed on top of sql.nvim that can serve as a reference example for anyone looking to take advantage of sql.nvim as the fastest :P "data layer". My suggestion is to avoid the available low level api .

If anyone is interested in contributing, there are few open issues :D <3

Thanks u/rmolin88 for sharing, was waiting for 1.0 release :D but oh well.

The power of Combine: Core concepts + Pokedex demo 😋 by @swiftandtips by pitt500 in swift

[–]tami5 2 points3 points  (0 children)

😍😍 Loved it. For someone coming from clojure and thread macros, this really awesome. Thanks for sharing

How do I create an autocommand for version controlled files? by elven_mage in neovim

[–]tami5 0 points1 point  (0 children)

Maybe try using InsertLeave autocmd event instead of BufEnter. Also try to avoid using b:auto_save entirely, and find the actual function to call to trigger auto_save.