Adib Hanna
Adib Hanna
  • Видео 22
  • Просмотров 191 469
Directory-based Environment Variables (DirEnv)
direnv is an extension for your shell. It augments existing shells with a new feature that can load and unload environment variables depending on the current directory.
DirEnv: direnv.net/
DirEnv stdlib: direnv.net/man/direnv-stdlib.1.html
----
Twitter: Adib_Hanna
Newsletter: dotfiles.substack.com/
Neovim Course: neovimmastery.com/
Просмотров: 911

Видео

No More Concurrency Chaos
Просмотров 1,7 тыс.14 дней назад
"singleflight provides a duplicate function call suppression mechanism." Docs pkg.go.dev/golang.org/x/sync@v0.8.0/singleflight Blog: victoriametrics.com/blog/go-singleflight/index.html Sharded singleflight: github.com/tarndt/shardedsingleflight Twitter: Adib_Hanna Newsletter: dotfiles.substack.com/ Neovim Course: neovimmastery.com/
Impressive Terminal Emulator! (Ghostty)
Просмотров 5 тыс.Месяц назад
Ghostty Terminal Emulator! Ghostty Discord: discord.gg/ghostty Twitter: Adib_Hanna Newsletter: dotfiles.substack.com/ Neovim Course: neovimmastery.com/
Amazing New Neovim AI Plugin!
Просмотров 12 тыс.Месяц назад
Neovim Plugin: github.com/yetone/avante.nvim Cursor: www.cursor.com/features Twitter: Adib_Hanna Newsletter: dotfiles.substack.com/ Neovim Course: neovimmastery.com/
Shallow vs Deep Copying in Go
Просмотров 7842 месяца назад
Difference between shallow and deep copying in Go. Twitter: Adib_Hanna Newsletter: dotfiles.substack.com/ Neovim Course: neovimmastery.com/
CLI Tools For Visualizing Data
Просмотров 10 тыс.4 месяца назад
github.com/yassinebridi/serpl github.com/shshemi/tabiew fx.wtf/ github.com/fioncat/otree Twitter: Adib_Hanna Newsletter: dotfiles.substack.com/ Neovim Course: neovimmastery.com/
This Zed feature is unbelievably powerful!
Просмотров 15 тыс.5 месяцев назад
Zed Tasks: zed.dev/docs/tasks
NerdFonts: How to add icons to your font?
Просмотров 1,3 тыс.6 месяцев назад
Nerd Fonts www.nerdfonts.com/ SF Mono developer.apple.com/fonts/ Nerd Font Patcher github.com/ryanoasis/nerd-fonts
What font, colorscheme, terminal, etc… do I use?
Просмотров 4,1 тыс.6 месяцев назад
Fonts: berkeleygraphics.com/typefaces/ github.com/epk/SF-Mono-Nerd-Font github.com/tonsky/FiraCode vercel.com/font monaspace.githubnext.com/ www.jetbrains.com/lp/mono/ www.nerdfonts.com/font-downloads Catpuccin (gruvbox): github.com/catppuccin/nvim/discussions/323#discussioncomment-5287724 Neovim breadcrumbs: github.com/utilyre/barbecue.nvim Lualine so fancy: github.com/meuter/lualine-so-fancy....
Jetbrains can Vim
Просмотров 4,2 тыс.6 месяцев назад
IdeaVim: github.com/JetBrains/ideavim Supported Plugins: github.com/JetBrains/ideavim/wiki/IdeaVim-Plugins Community Configs: github.com/JetBrains/ideavim/discussions/303 My config: gist.github.com/adibhanna/4379d7ecff16762f7b7cf027bafa33da Twitter: Adib_Hanna
How I navigate code in Neovim
Просмотров 17 тыс.6 месяцев назад
Nvim Config: github.com/adibhanna/nvim Plugins mentioned: github.com/nvim-neo-tree/neo-tree.nvim github.com/LunarVim/breadcrumbs.nvim github.com/SmiteshP/nvim-navic github.com/folke/persistence.nvim
Dependency Injection in Go
Просмотров 4,6 тыс.6 месяцев назад
Dependency Injection in Golang Neovim config: github.com/adibhanna/nvim Twitter: Adib_Hanna
Porting Neovim Keymaps To Zed
Просмотров 12 тыс.6 месяцев назад
In this video, I walk you through configuring Zed editor with Vim Mode. zed: zed.dev/ Zed settings: gist.github.com/adibhanna/66673edfec11d702d56f021ecaebd6be keymaps: gist.github.com/adibhanna/896257e6c2c501186221312fd9fd1b9c Neovim Config: github.com/adibhanna/nvim
The One Keyboard To Rule Them All
Просмотров 5 тыс.6 месяцев назад
Keyboard: kinesis-ergo.com/keyboards/advantage360/ ZMK GUI: nickcoutsos.github.io/keymap-editor Repo: github.com/KinesisCorporation/Adv360-Pro-ZMK
Go is AMAZING
Просмотров 2,9 тыс.9 месяцев назад
In this video, I share some Golang books and resources to use if you want to learn and master the language. Also, I share some of the thoughts I have on the philosophy behind using Go. Links: go.dev/doc/effective_go go.dev/blog go-proverbs.github.io/ quii.gitbook.io/learn-go-with-tests/ lets-go.alexedwards.net/ openfaas.gumroad.com/l/everyday-golang interpreterbook.com/ compilerbook.com/ Books ...
Neovim Config 2024 (ASMR)
Просмотров 7 тыс.9 месяцев назад
Neovim Config 2024 (ASMR)
10 AWESOME CLI TOOLS TO SUPERCHARGE YOUR WORKFLOWS
Просмотров 22 тыс.Год назад
10 AWESOME CLI TOOLS TO SUPERCHARGE YOUR WORKFLOWS
Lua, the simplest language to learn
Просмотров 3,3 тыс.Год назад
Lua, the simplest language to learn
Neovim - Tips, Distros, Configuration and Demo
Просмотров 2,7 тыс.Год назад
Neovim - Tips, Distros, Configuration and Demo
My Development Setup (Neovim, Tmux, Alacritty & Rust-based CLI Tools)
Просмотров 52 тыс.Год назад
My Development Setup (Neovim, Tmux, Alacritty & Rust-based CLI Tools)
How to use Git Worktree
Просмотров 6 тыс.Год назад
How to use Git Worktree

Комментарии

  • @edpal7402
    @edpal7402 12 часов назад

    Excellent. Thank a lot. Please zoom in a bit next time, it's hard to view on small screen.

  • @Keb_Le
    @Keb_Le 13 часов назад

    Super cool! What is that font btw?

  • @erkinsagroglu8519
    @erkinsagroglu8519 2 дня назад

    Thanks for the content! Any chances for you to share the list of plugins that you use? I'm kinda new to this and I'm curious if you'd have time.

  • @aliham4228
    @aliham4228 2 дня назад

    Amazing! Thank you a lot

  • @chaosmachines934
    @chaosmachines934 3 дня назад

    when will this come out for windows

    • @adibhanna
      @adibhanna 2 дня назад

      not sure! I know they released a Linux version

  • @vice-sama3015
    @vice-sama3015 6 дней назад

    I really would like to use it. I can ignore a lot until it eventually gets better, but the hardcoded delay for keybinds renders Zed unusable, for example "kj" for escape makes navigation extremally laggy. Any tips to get around that?

  • @mateus-dot-cc
    @mateus-dot-cc 9 дней назад

    very cool!

  • @marcomamani2943
    @marcomamani2943 9 дней назад

    Congrats.. a beautiful setup!! how to do it DevOps based cli tools ?

  • @hma8244
    @hma8244 12 дней назад

    Clean! Thanks man

  • @CristianBilu-q4n
    @CristianBilu-q4n 18 дней назад

    Wansn't it easier to have a normal mutex and call .Unlock() after the expensive operation? I think in the end you got to the exact place but with a new library in your project.

    • @CristianBilu-q4n
      @CristianBilu-q4n 18 дней назад

      Nah, i am wrong here. 1. This is a library from std not external so no new library in the project. 2. My solution will cause one key to lock the entire cache which is not optimal.

  • @bernardcrnkovic3769
    @bernardcrnkovic3769 19 дней назад

    wouldn't the result be the same if you just have two locks, one for rw on cache, and another for expensive call block? the idea is then that you check if cache was perhaps set just before you entered the 'expensive call block' and skip in that case

    • @bionic_batman
      @bionic_batman 19 дней назад

      I think so. In any case goroutines are still forced to wait till s.sg.Do statement returns something. If api call/data fetching was done while write lock is in place no operations would've been executed at the same time To me it looks like this library is needed if you don't want to bother with manual locks but if you already have them then you can use them just fine.

  • @dank3k
    @dank3k 19 дней назад

    I'm not a go developer at all so I have zero knowledge on this, but this is - more or less - called the 'critical path' in parallelization. I'll go ahead and guess that GO supports semaphores & locks - why not just use that to synchronize over the area?

    • @adibhanna
      @adibhanna 19 дней назад

      totally! Go does have those, and I think they’re using it in this library. It’s just a simpler interface for some usecases

  • @다루루
    @다루루 20 дней назад

    Thank you so much! Thanks to you, I was able to solve this problem!

  • @aimattant
    @aimattant Месяц назад

    great job

  • @asezen77
    @asezen77 Месяц назад

    Is there any way to speed up the code suggestion of Avante? Very slow for me.

  • @ArnoldDouglas-h9g
    @ArnoldDouglas-h9g Месяц назад

    Justus Turnpike

  • @EuropeanLord
    @EuropeanLord Месяц назад

    "The One Keyboard To Rule Them All" - but I don't see Glove80? 😆

  • @tihon4979
    @tihon4979 Месяц назад

    there is no page on github. 404 error.

  • @GordiUA
    @GordiUA Месяц назад

    Any difference with Sublime Build systems? Or even VIM make? I don`t think so.

  • @vityasinkov
    @vityasinkov Месяц назад

    what terminal do you use and how to get the same theme as you have?

    • @adibhanna
      @adibhanna Месяц назад

      I use Kitty terminal with gruvbox dark hard theme

    • @vityasinkov
      @vityasinkov Месяц назад

      @@adibhanna thanks for replying! I’ve already discovered video with your setup. The theme is gorgeous

  • @mohamedmadin5753
    @mohamedmadin5753 Месяц назад

    i was curious if this terminal can render bidi language in properly

  • @NRCPQ
    @NRCPQ Месяц назад

    all the hypes only for a Inspector? imagine requesting to have access to a f*cking terminal emulator.

  • @prashlovessamosa
    @prashlovessamosa Месяц назад

    Thanks

  • @Rundik
    @Rundik Месяц назад

    What license does it have? Is it proprietary/source available?

    • @xyntho
      @xyntho Месяц назад

      Ghostty beta tester here @Rundik 1. Ghostty is in private beta and is *technically* NOT open source as a file in the github repo. 2. Currently, there's no license that's been decided upon however mitchell (the creator) is leaning towards MIT but it may change if he discovers something better. 3. Source is NOT publicly available and you need to join the ghostty private beta to get access. Or you can wait until the end of the year (probably) for the first public beta to release.

  • @assafdori-j8h
    @assafdori-j8h Месяц назад

    Nice walkthrough! Would love to see your entire dotfiles!

    • @adibhanna
      @adibhanna Месяц назад

      planning a video covering it

  • @_chiku11
    @_chiku11 Месяц назад

    how can I request for access

    • @adibhanna
      @adibhanna Месяц назад

      join discord and ask one of the mods

  • @adibhanna
    @adibhanna Месяц назад

    What is your favorite feature in Ghostty?

  • @utvikler-no
    @utvikler-no Месяц назад

    Stop telling people to join that toxic channel for invite..

    • @adibhanna
      @adibhanna Месяц назад

      why is it toxic? I never had any conversations there, only got an invite through a friend

    • @shizukumaestro2276
      @shizukumaestro2276 Месяц назад

      ​@adibhanna it simply isn't moderated well. The public channels are just flooded with immature brainrot and the mods further add to it. There has been a change where you can only talk about tech related topics, but it doesn't help that the mods don't filter people who are there to pick fights and have terrible takes

    • @Mitchellh3
      @Mitchellh3 Месяц назад

      @@shizukumaestro2276We changed the rules yesterday so only technical discussions are allowed. The growth exceeded our rules and we’re working on catching up.

    • @conformist
      @conformist Месяц назад

      @@shizukumaestro2276 meh it's ok when i was there. if people don't like it, they simply leave--it's the internet, ppl will be fine.

  • @wznzgq1354
    @wznzgq1354 Месяц назад

    damn bro that keyboard so loud

  • @sama7496
    @sama7496 Месяц назад

    are you using tmux here?

  • @ThomasOberliessen
    @ThomasOberliessen Месяц назад

    Thanks for the inspiration ! Would you be wiling to share your lualine configuration? That looks awesome!

  • @wznzgq1354
    @wznzgq1354 Месяц назад

    does it autocomplete?

    • @AndresMattaM
      @AndresMattaM Месяц назад

      you can toggle it, the default command is <leader>as, but I'm my opinion is not too good.

  • @odayprogrammer
    @odayprogrammer Месяц назад

    Man I love that background, so homey

  • @devopstoolbox
    @devopstoolbox Месяц назад

    Looks super promising thanks for sharing Adib! I've been also looking at it closely and started on working with it to get the feel recently

    • @adibhanna
      @adibhanna Месяц назад

      It's the closest implementation to what Cursor has! love it

    • @samarnagar9699
      @samarnagar9699 Месяц назад

      hello om

  • @darkarie
    @darkarie Месяц назад

    I use it every day and it's fantastic, the only feature that I miss is it having the project context. Seems that it will not take much to get there.

    • @adibhanna
      @adibhanna Месяц назад

      Awesome! it is my favorite way to use AI in Neovim! Hopefully, they can get that chat with project feature done soon!

    • @aquepaique
      @aquepaique 16 дней назад

      project context is currently implemented

  • @abdellahcodes
    @abdellahcodes Месяц назад

    Amazing!

  • @itztlacoliuhqui
    @itztlacoliuhqui Месяц назад

    Thank you, which font are u using?

    • @adibhanna
      @adibhanna Месяц назад

      berkeleygraphics.com/typefaces/berkeley-mono/

  • @ways.
    @ways. Месяц назад

    Thank you for covering this up

  • @Singlton
    @Singlton Месяц назад

    Do you have discord or telegram group ,so that we can grow together?

  • @benjivillarreal6316
    @benjivillarreal6316 2 месяца назад

    WHAT IS THE BRAND OF YOUR CAMERA?

  • @mornsoltice
    @mornsoltice 2 месяца назад

    Hi adib can i ask, how you make spaces beetween line on neovim

    • @adibhanna
      @adibhanna 2 месяца назад

      hi! do you mean, line height? this is usually done on the terminal config, not Neovim

    • @mornsoltice
      @mornsoltice 2 месяца назад

      @@adibhanna oh using font.offset?, btw what font do you use for zed

    • @adibhanna
      @adibhanna 2 месяца назад

      ​@@mornsoltice what terminal emulator are you using? I use this font berkeleygraphics.com/typefaces/berkeley-mono/

  • @snoodking1
    @snoodking1 2 месяца назад

    So another way to think about the original assignment of Person is the "&" tells the compiler you want to set original to a pointer of the struct Person. This is exactly why original values get overwritten. If you remove the "&" from Person during assignment you are creating a new instance of the struct. If you do it this way you will end up having two instances of Person when you create the copy variable. This avoids the need to use deep copy which is processor intensive. The tradeoff is that you will use more memory since you now have two instances of Person instead of a pointer to one.

  • @Deffno
    @Deffno 2 месяца назад

    🎉🎉🎉

  • @adibhanna
    @adibhanna 2 месяца назад

    What other coding topics would you like to learn about next?

  • @blockchaingamedev
    @blockchaingamedev 2 месяца назад

    Great video, thanks for sharing.

  • @Jafar-Sadik
    @Jafar-Sadik 2 месяца назад

    According to some sources this keyboard can last up to 3 months without the backlight. What is your experience? I'm currently using logitech g915 tlk and it easily can work over 6 months on a fully charged battery without leds on and it's really heavily used as I'm a software dev.

    • @adibhanna
      @adibhanna 2 месяца назад

      honestly, most of the time i just keep it plugged in, i don't want to rely on Bluetooth. in terms of comfort, this is the best you can find, i highly recommend it for devs!

  • @farzadmf
    @farzadmf 2 месяца назад

    Thanks for the video Question: how have you configured your [Neo]vim to show the "special characters" in visual mode but not normal mode? (I means those tabs, spaces, etc.)

    • @adibhanna
      @adibhanna 2 месяца назад

      I'm actually using Zed editor in this video, i've been experimenting with it on and off. zed.dev/ check it out!

    • @farzadmf
      @farzadmf 2 месяца назад

      Oh cool, I thought it was [Neo]vim. I saw your video(s) about it; it's in my todo list at some point to take a look. Main blocker for me is that I literally live in my terminal, so having a spearate app for code editing is, well, a new challenge that I'm not sure if I'm ready (yet) to tackle

    • @adibhanna
      @adibhanna 2 месяца назад

      @@farzadmf yeah, you don't really want to change your workflow if you're already productive in terminal. all these editors use the same LSP, so you're not missing out really. the interesting thing about Zed is that they are adding a lot of Vim features and AI stuff. which make it a valid alternative to Neovim. For big projects, I still enjoy using Golang (by Jetbrains), they just have the best LSP and refactoring capability that is too good to be ignored!

    • @farzadmf
      @farzadmf 2 месяца назад

      @@adibhanna I think you mean Goland (not Golang 😆), but yeah, I've heard that it's very good. It's been quite a while that I haven't worked with Go, but at the time, I was living with fatih/vim-go, and I liked it. Goland of course is another level; not only it's a separate app, but it's paid as well (and not that cheap either) 😆

    • @adibhanna
      @adibhanna 2 месяца назад

      @@farzadmf lol yup! Goland! it's really good! they have a plugin called IdeaVim, it's probably the best vim emulation out there

  • @pedrolemos3030
    @pedrolemos3030 2 месяца назад

    awesome content!

  • @trololoev
    @trololoev 2 месяца назад

    Does this keyboard also has alt on left and alt gr on right? It hard to me to get used to two different alt. Also do you use windows key on this keyboard or replace it with something different?

    • @guywithgear
      @guywithgear 2 месяца назад

      This keyboard is fully programmable. Put whatever key you want wherever you want.

  • @zheli2417
    @zheli2417 2 месяца назад

    Hi one more question I find that there is a "checkmark" in the neo-tree "plugins" and "lua" folder at 1:04 left side. what is that ?

    • @adibhanna
      @adibhanna 2 месяца назад

      this is unnecessary, it shows you "folder open" github.com/adibhanna/nvim/blob/main/lua/plugins/neo-tree.lua#L32