vscode-blockman icon indicating copy to clipboard operation
vscode-blockman copied to clipboard

Blockman doesn't work with in line code suggestions from other extensions

Open Mixchild opened this issue 2 years ago • 15 comments

image Codeium Blackbox and tabnine have in line code suggestions and Blockman has no awareness of it, is there a setting that can fix that or can it be patched in future

Mixchild avatar Oct 10 '23 23:10 Mixchild

Well, unfortunately it is the limitation of VS Code itself (at least as I understand it), because VS Code does not give extensions access to exact pixel sizes and coordinates of any block or character or bracket or lines or anything. So blockman just renders div boxes on each line in such a way that these line-line-line-line boxes touch each other perfectly, so we have visual illusion of one big block. So, Blockman is not able to know if there are some extra space between line 1 and line 2.

Blockman does not know even the height of the line, or even the width of one character. It just uses CSS tricks to render blocks with correct size. by CSS tricks, I mean: ch and height: 100%.

leodevbro avatar Oct 12 '23 11:10 leodevbro

Thanks Mr Leo for replay, I wish more Georgians in this country would start working on dev experience extensions after the success of your app. I have made research about this and vscode has CodeLens settings (font size and etc) so would it be possible for blockman to take CodeLens placement into consideration

Mixchild avatar Oct 12 '23 15:10 Mixchild

Thank you for the good wishes.

vscode has CodeLens settings (font size and etc) so would it be possible for blockman to take CodeLens placement into consideration

Well, I found something in the VS Code extension API.

const possiblyCodelensItemsArr: any[] | undefined = await vscode.commands.executeCommand(
    "vscode.executeCodeLensProvider",
    editorInfo.editorRef.document.uri,
);

console.log('possiblyCodelensItemsArr:', possiblyCodelensItemsArr);

This code possibly gives us the locations (line numbers) of all CodeLens items in any document. I'll try to test it, but even if I have all the locations of these codelens items, it seems still a quite difficult (if not impossible) task to add the logic code into the Blockman extension to consider those locations and render extra space there. Because VS Code has many limitations (and/or difficulties) of where you can render blocks.

leodevbro avatar Oct 12 '23 19:10 leodevbro

Is there Google meetings or discord server for devs in Georgia to discuss such topics? please feel free to message me about it, if codelens settings could be connected to general settings of extensions, it won't be too hard to fix the issue, but truth be told vs code should have done something about this long time ago

Mixchild avatar Oct 13 '23 17:10 Mixchild

Is there Google meetings or discord server for devs in Georgia to discuss such topics?

I know some Georgian Facebook groups: JavaScript Georgia https://www.facebook.com/groups/1450497911907139

Georgian Web & Mobile Development Industry https://www.facebook.com/groups/georgian.development

Georgian Web Developers • ქართველი ვებ დეველოპერები https://www.facebook.com/groups/georgianwebdevelopers

We often discuss many things in those groups.

codelens

Yeah, I'm going to try to fix this issue soon (with the VS Code extension API method I mentioned in the previous comment)

leodevbro avatar Oct 14 '23 09:10 leodevbro

image well this is interesting, https://nextjs.org/docs/app/building-your-application/routing Seems like blockman inspired next js development, facebook is the only tools you would use to discuss related topics?

Mixchild avatar Oct 15 '23 12:10 Mixchild

Nice NextJS Docs, maybe it is really inspired by Blockman, but it's hard to say, because, I guess blockifying a code is very natural way to help the viewer/reader focus on certain areas.

Georgian devs mostly use facebook to discuss some topics with each other as fellow citizens, but we also communicate with other devs worldwide on Reddit, Quora, Twitter (now X), Github, Stackoverflow, Slack, Discord and more.

leodevbro avatar Oct 15 '23 12:10 leodevbro

As I understand you prefer NextJS (or React) over VUE and NUXT (or Vite) , don't you think in future NextJS will implement all those functions (including blockman features) in their own devtools , I'm not using nextjs so not sure if those functions are part of their React Server Components and they will become the regular partsof advanced devtools in future but Nuxt is way advanced with DX compared to Next. If you have discord would be great to add you there.

Mixchild avatar Oct 15 '23 14:10 Mixchild

don't you think in future NextJS will implement all those functions (including blockman features) in their own devtools

I don't have enough knowledge to answer this question. And for Blockman, I don't think so, I don't know how NextJS would implement Blockman features.

If you have discord would be great to add you there.

I do have Discord account (leodevbro), but I don't use it much. Discord feels to have too much information overload with so many channels (chats) with mostly unimportant messages.

leodevbro avatar Oct 15 '23 16:10 leodevbro

Hello @Mixchild, Blockman now supports codeLens annotation spaces, well, at least some of the cases. Maybe not all edge cases. Please test it and let me know whether is works fine (fine enough, if not perfectly) or not. The new version of Blockman is v1.7.6 (2024-02-01).

image

leodevbro avatar Jan 31 '24 21:01 leodevbro

Yes it works flawlessly, thank you so much for integrating this functions, any plans upcoming features? if there is any chat for developers or some other community please feel free to add me for future discussions

Mixchild avatar Feb 04 '24 19:02 Mixchild

any plans upcoming features

I hope I will be able to implement SVG rendering instead of div rendering, because SVG path element does not have the limitation of not being able to set transparent (and partially transparent) gradients for both backgrounds and borders. Also SVG has some more freedom of generating shapes.

if there is any chat for developers or some other community please feel free to add me for future discussions

Mostly this is the community place for Blockman. 1] this Guthub Blockman issues space: https://github.com/leodevbro/vscode-blockman/issues

2] this Guthub Blockman discussions space: https://github.com/leodevbro/vscode-blockman/discussions

3] Also anyone can reach me on Facebook and Reddit: Facebook: https://www.facebook.com/leodevbro

Reddit: https://www.reddit.com/user/leodevbro/

.

leodevbro avatar Feb 04 '24 20:02 leodevbro

Sounds great and I want to ask specifically about glowing functionality cause every extension and theme that promises that feature to VSCode basically breaks the software so I guess until microsoft doesn't update from back end this won't be possible. I hope to work together with a visionary person like you one day at Georgian or international company.

Mixchild avatar Feb 08 '24 13:02 Mixchild

Yeah, glowing effect may be problematic, but I guess will have more chances if we manage to implement SVG rendering instead of primitive div boxes.

I hope to work together with a visionary person like you one day at Georgian or international company.

Thanks, that would be cool for sure. Enthusiastic people like you can do great things with technology.

leodevbro avatar Feb 08 '24 18:02 leodevbro

@leodevbro my friend wants to remove extension and reset color changes back to default can we help him

Mixchild avatar Jun 01 '24 11:06 Mixchild